From e7051ff7dc705cee2360798df86613632b305ba2 Mon Sep 17 00:00:00 2001
From: Santo Cariotti <santo@dcariotti.me>
Date: Thu, 13 Oct 2022 22:27:15 +0200
Subject: Pages for admin

---
 pages/admin/reports.vue | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 pages/admin/reports.vue

(limited to 'pages/admin/reports.vue')

diff --git a/pages/admin/reports.vue b/pages/admin/reports.vue
new file mode 100644
index 0000000..7d49a40
--- /dev/null
+++ b/pages/admin/reports.vue
@@ -0,0 +1,38 @@
+<template lang="pug">
+  .mx-auto.w-90p.py-6(class="sm:px-6 lg:px-8 md:max-w-7xl")
+    h1.text-3xl.font-bold(class="dark:text-white") Models
+    .grid.grid-cols-6.mt-3
+      div
+        admin-sidebar
+      section#tables.col-span-5
+        v-table(
+          :keys="['id', 'model_id', 'created', 'updated', 'user', 'resolved', 'note', 'admin_note']"
+          :fields="warnings"
+        )
+</template>
+
+<script>
+import { mapGetters } from "vuex";
+
+import AdminSidebar from "@/components/AdminSidebar.vue";
+import VTable from "@/components/VTable.vue";
+
+export default {
+  name: "AdminView",
+  head: { title: "Models · Verden" },
+  computed: {
+    ...mapGetters("auth", ["isLogged", "me"]),
+    ...mapGetters("warnings", ["warnings"]),
+  },
+  components: { AdminSidebar, "v-table": VTable },
+  async mounted() {
+    await this.$store.dispatch("auth/findMe");
+
+    if (!(this.isLogged && this.me && this.me.is_staff)) {
+      window.location.href = "/";
+    }
+
+    this.$store.dispatch("warnings/getWarnings", 0);
+  },
+};
+</script>
-- 
cgit v1.2.3-71-g8e6c

