From 16357c0e48bf1006d1fd81f944aa0ac5ddd1e70d Mon Sep 17 00:00:00 2001
From: Santo Cariotti <santo@dcariotti.me>
Date: Mon, 17 Oct 2022 08:25:33 +0200
Subject: admin: Delete an user avatar

---
 components/VTable.vue | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

(limited to 'components/VTable.vue')

diff --git a/components/VTable.vue b/components/VTable.vue
index 7c17d7b..5fb2ad2 100644
--- a/components/VTable.vue
+++ b/components/VTable.vue
@@ -22,8 +22,18 @@
                       svg(v-else xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-500")
                         path(stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12")
                     span(v-else-if="name == 'avatar'")
-                      a.inline-block(:href="'/user/'+field.id" target="_blank")
-                        user-avatar(:data="field")
+                      .flex
+                        a.inline-block(:href="'/user/'+field.id" target="_blank")
+                          user-avatar(:data="field")
+                        a.text-red-500.ml-2.cursor-pointer(
+                          title="Delete this avatar"
+                          @click="deleteAvatar(field.id)"
+                          v-if="field.avatar"
+                        )
+                          svg(xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6")
+                            path(stroke-linecap="round" stroke-linejoin="round" d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0")
+
+
                     span(v-else-if="['author', 'user', 'resolved'].includes(name)")
                       a.inline-block(:href="'/user/'+field[name].id" target="_blank")
                         user-avatar(:data="field[name]" v-if="field[name].username")
@@ -68,6 +78,15 @@ export default {
     handleDelete(id) {
       this.delete(id);
     },
+    deleteAvatar(id) {
+      this.$store.dispatch("users/deleteAvatar", id).then((response) => {
+        if (response.status == 200) {
+          this.$toast.success("Avatar has been removed");
+        } else {
+          this.$toast.error("Error removing");
+        }
+      });
+    },
   },
 };
 </script>
-- 
cgit v1.2.3-18-g5258

