From d53ca048a6f50744890cb7f339e83cf0d579ffd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Poussard?= <tpoussard@neogeo.fr> Date: Fri, 10 Sep 2021 15:53:53 +0200 Subject: [PATCH] remove post for put thumbnails and refresh project list after creation --- src/store/modules/feature_type.js | 3 +- src/views/feature_type/Feature_type_edit.vue | 3 +- src/views/project/Project_edit.vue | 29 ++++++++++---------- 3 files changed, 16 insertions(+), 19 deletions(-) diff --git a/src/store/modules/feature_type.js b/src/store/modules/feature_type.js index ad9caf4f..103c0559 100644 --- a/src/store/modules/feature_type.js +++ b/src/store/modules/feature_type.js @@ -73,7 +73,6 @@ const feature_type = { }), //'is_editable': true, } - console.log("requestType", requestType) if (requestType === "post") { return axios @@ -108,7 +107,7 @@ const feature_type = { const { feature_type_slug } = payload if (state.fileToImport.size > 0) { - var formData = new FormData(); + let formData = new FormData(); formData.append("json_file", state.fileToImport); formData.append("feature_type_slug", feature_type_slug); let url = diff --git a/src/views/feature_type/Feature_type_edit.vue b/src/views/feature_type/Feature_type_edit.vue index 2a594013..d76d6dc1 100644 --- a/src/views/feature_type/Feature_type_edit.vue +++ b/src/views/feature_type/Feature_type_edit.vue @@ -250,7 +250,7 @@ export default { return this.form.colors_style.value.custom_field_name; }, set(newValue) { - console.log(newValue) + //console.log(newValue) this.form.colors_style.value.custom_field_name = newValue; this.iniateColorsStyleFields(); this.updateStore(); @@ -370,7 +370,6 @@ export default { sendFeatureType() { // * si édition d'une feature_type déja existante, faire un put const requestType = this.action === "edit" ? "put" : "post"; - console.log; if (this.checkForm()) { this.$store .dispatch("feature_type/SEND_FEATURE_TYPE", requestType) diff --git a/src/views/project/Project_edit.vue b/src/views/project/Project_edit.vue index a9008db6..b4861aba 100644 --- a/src/views/project/Project_edit.vue +++ b/src/views/project/Project_edit.vue @@ -225,9 +225,11 @@ export default { return filename + "." + ext; }, - goBack() { - const routerHistory = this.$router.options.routerHistory; - this.$router.push(routerHistory[routerHistory.length - 1] || "/"); + goBackNrefresh() { + let _this = this; + this.$router.push("/", function () { // * go back and + _this.$store.dispatch("GET_ALL_PROJECTS"); //* refresh project list + }); }, onFileChange(e) { @@ -247,7 +249,7 @@ export default { postProjectThumbnail(projectSlug) { //* send img to the backend when feature_type is created if (this.fileToImport.size > 0) { - var formData = new FormData(); + let formData = new FormData(); formData.append("file", this.fileToImport); let url = process.env.VUE_APP_DJANGO_API_BASE + @@ -255,18 +257,16 @@ export default { projectSlug + "/thumbnail/"; return axios - .post(url, formData, { + .put(url, formData, { headers: { "Content-Type": "multipart/form-data", }, }) .then((response) => { - console.log("postProjectThumbnail", response); if (response && response.status === 200) { - //dispatch("GET_IMPORTS", feature_type_slug); - console.log("SUCCESS"); + //dispatch("GET_IMPORTS", feature_type_slug); // ? Besoin de vérifier le statut de l'import ? + this.goBackNrefresh(); } - return response; }) .catch((error) => { throw error; @@ -292,19 +292,18 @@ export default { await axios .post(`${process.env.VUE_APP_DJANGO_API_BASE}projects/`, projectData) .then((response) => { - console.log(response); if (response && response.status === 201 && response.data) { this.$store.commit("ADD_PROJECT", response.data); - this.$router.push("/"); - // todo : send thumbnail after feature_type was created - //postProjectThumbnail() - this.postProjectThumbnail(response.data.slug); + //* send thumbnail after feature_type was created + if (this.fileToImport) + this.postProjectThumbnail(response.data.slug); + } else { + this.goBackNrefresh(); } }) .catch((error) => { throw error; }); - console.log("POST this data : ", projectData); }, }, -- GitLab