summaryrefslogtreecommitdiff
path: root/pages/admin/models.vue
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2022-10-13 22:27:15 +0200
committerSanto Cariotti <santo@dcariotti.me>2022-10-13 22:27:15 +0200
commite7051ff7dc705cee2360798df86613632b305ba2 (patch)
treeefa28cfe61e277f2b4cf36505130807ea7da4d3e /pages/admin/models.vue
parentb1748b580d25b32ee2fab22515693ff1c7f79c8c (diff)
Pages for admin
Diffstat (limited to 'pages/admin/models.vue')
-rw-r--r--pages/admin/models.vue39
1 files changed, 39 insertions, 0 deletions
diff --git a/pages/admin/models.vue b/pages/admin/models.vue
new file mode 100644
index 0000000..86b463b
--- /dev/null
+++ b/pages/admin/models.vue
@@ -0,0 +1,39 @@
+<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', 'name', 'created', 'author', 'likes']"
+ :fields="models"
+ path="/models/"
+ )
+</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("models", ["models"]),
+ },
+ 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("models/getModels", 0);
+ },
+};
+</script>