From c43aa314a3916be3c264d0d4f94f9153151d118f Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Sun, 16 Oct 2022 19:30:29 +0200 Subject: Delete rows from admin cp --- pages/admin/reports.vue | 67 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) (limited to 'pages/admin/reports.vue') diff --git a/pages/admin/reports.vue b/pages/admin/reports.vue index 7191060..5866335 100644 --- a/pages/admin/reports.vue +++ b/pages/admin/reports.vue @@ -1,6 +1,38 @@ @@ -34,6 +67,7 @@ export default { name: "AdminView", head: { title: "Reports ยท Verden" }, computed: { + ...mapGetters(["isLoading"]), ...mapGetters("auth", ["isLogged", "me"]), ...mapGetters("warnings", ["warnings", "count"]), }, @@ -42,6 +76,7 @@ export default { page: 0, pages: 0, notResolved: false, + boxDeleteReport: 0, }; }, components: { @@ -82,5 +117,37 @@ export default { }); } }, + methods: { + openModal(id) { + this.boxDeleteReport = id; + }, + deleteReport() { + if (this.boxDeleteReport) { + this.$store + .dispatch("warnings/deleteWarning", this.boxDeleteReport) + .then((response) => { + if (response.status == 204) { + if (this.notResolved) { + this.$store + .dispatch("warnings/filterWarnings", { page: this.page }) + .then(() => { + this.pages = Math.ceil(this.count / 20); + }); + } else { + this.$store + .dispatch("warnings/getWarnings", this.page) + .then(() => { + this.pages = Math.ceil(this.count / 20); + }); + } + this.$toast.success("Report deleted!"); + this.boxDeleteReport = 0; + } else { + this.$toast.error(response.data); + } + }); + } + }, + }, }; -- cgit v1.2.3-18-g5258