From a10f74342843160f8f17dde328f6a2bad25836a1 Mon Sep 17 00:00:00 2001
From: Gilgard <Hjelljord.alida@gmail.com>
Date: Fri, 6 May 2022 09:05:49 +0200
Subject: [PATCH] improved image handling

---
 src/components/ItemComponents/EditItemForm.vue |  3 ++-
 src/components/ItemComponents/NewItemForm.vue  |  7 ++++---
 src/services/image.service.js                  | 13 +++++++++++++
 3 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/src/components/ItemComponents/EditItemForm.vue b/src/components/ItemComponents/EditItemForm.vue
index b5fed83..a66879e 100644
--- a/src/components/ItemComponents/EditItemForm.vue
+++ b/src/components/ItemComponents/EditItemForm.vue
@@ -425,7 +425,7 @@ export default {
       }
       return false;
     },
-    removeImage(image) {
+    async removeImage(image) {
       let newImages = [];
       for (let i in this.item.images) {
         if (this.item.images[i] != image) {
@@ -433,6 +433,7 @@ export default {
         }
       }
       this.item.images = newImages;
+      await ImageService.deleteImage(image);
     },
   },
 
diff --git a/src/components/ItemComponents/NewItemForm.vue b/src/components/ItemComponents/NewItemForm.vue
index 9850b9b..afa9246 100644
--- a/src/components/ItemComponents/NewItemForm.vue
+++ b/src/components/ItemComponents/NewItemForm.vue
@@ -352,9 +352,9 @@ export default {
         };
         await ListingService.postNewItem(itemInfo);
 
-        await ImageService.PostImagesArrayToListing(this.item.images);
+        await ImageService.postImagesArrayToListing(this.item.images);
 
-        this.$router.push("/");
+        this.$router.go(-1);
       }
     },
 
@@ -397,7 +397,7 @@ export default {
       }
     },
 
-    removeImage(image) {
+    async removeImage(image) {
       let newImages = [];
       for (let i in this.item.images) {
         if (this.item.images[i] != image) {
@@ -405,6 +405,7 @@ export default {
         }
       }
       this.item.images = newImages;
+      await ImageService.deleteImage(image);
     },
   },
   async beforeMount() {
diff --git a/src/services/image.service.js b/src/services/image.service.js
index 7ebc1fa..3104f1b 100644
--- a/src/services/image.service.js
+++ b/src/services/image.service.js
@@ -42,6 +42,19 @@ class ImageService {
         console.error(error.response);
       });
   }
+
+  deleteImage(image) {
+    return axios
+      .delete(image, {
+        headers: tokenHeader(),
+      })
+      .then((response) => {
+        return response;
+      })
+      .catch((error) => {
+        console.error(error.response);
+      });
+  }
 }
 
 export default new ImageService();
-- 
GitLab