From d4f8470186798771ae5bac2b05cc4ec60385e0d4 Mon Sep 17 00:00:00 2001 From: Daria Golova Date: Mon, 21 Nov 2022 14:10:51 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=D0=B0?= =?UTF-8?q?=20=D0=B2=D1=8B=D0=B2=D0=BE=D0=B4=20=D0=BE=D1=88=D0=B8=D0=B1?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=B2=20=D0=BC=D0=BE=D0=B4=D0=B0=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D0=BE=D0=B5=20=D0=BE=D0=BA=D0=BD=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/calendar/TheCalendar.vue | 2 +- .../components/CalendarDeleteModal.vue | 1 + .../components/CalendarFormAddEvent.vue | 20 +++++++++++++++---- src/shared/fetchWrapper.js | 2 +- 4 files changed, 19 insertions(+), 6 deletions(-) diff --git a/src/pages/calendar/TheCalendar.vue b/src/pages/calendar/TheCalendar.vue index 86bd54b..f3e1f2f 100644 --- a/src/pages/calendar/TheCalendar.vue +++ b/src/pages/calendar/TheCalendar.vue @@ -41,6 +41,7 @@ :event-types="eventTypes" :owner-event="selectedEvent" :close-modal="changeShowModal" + @update-events="fetchEventsData" ) @@ -153,7 +154,6 @@ export default { if (this.showModal === false) { this.setChangeFormState(); this.clearSelectedEvent(); - this.fetchEventsData(); } }, }, diff --git a/src/pages/calendar/components/CalendarDeleteModal.vue b/src/pages/calendar/components/CalendarDeleteModal.vue index 76981f1..66f82cc 100644 --- a/src/pages/calendar/components/CalendarDeleteModal.vue +++ b/src/pages/calendar/components/CalendarDeleteModal.vue @@ -40,6 +40,7 @@ export default { methods: { async deleteEvent() { await fetchWrapper.del(`registry/event/${this.ownerEvent.id}/delete/`); + this.$emit("update-events"); this.closeModal(); }, }, diff --git a/src/pages/calendar/components/CalendarFormAddEvent.vue b/src/pages/calendar/components/CalendarFormAddEvent.vue index a2a1b28..7ba8f2f 100644 --- a/src/pages/calendar/components/CalendarFormAddEvent.vue +++ b/src/pages/calendar/components/CalendarFormAddEvent.vue @@ -305,7 +305,6 @@ export default { members: [this.findPerson(this.membersData, this.members, "person")], }; await this.postCreateEvent(this.eventData); - this.clearForm(); this.eventData = {}; }, async updateEventData() { @@ -319,7 +318,6 @@ export default { members: [this.findPerson(this.membersData, this.members, "person")], }; await this.postUpdateEvent(this.id, this.eventData); - this.clearForm(); this.eventData = {}; }, clearForm() { @@ -346,10 +344,19 @@ export default { return returnedData; }, async postCreateEvent(event) { - await fetchWrapper.post("registry/event/create/", event); + const response = await fetchWrapper.post("registry/event/create/", event); + if (response.type && response.type === "validation_error") { + this.outputErrorMessage(response); + } else this.clearForm(); }, async postUpdateEvent(id, event) { - await fetchWrapper.post(`registry/event/${id}/update/`, event); + const response = await fetchWrapper.post( + `registry/event/${id}/update/`, + event + ); + if (response.type && response.type === "validation_error") { + this.outputErrorMessage(response); + } else this.clearForm(); }, personId(object, field) { if (object) { @@ -369,6 +376,11 @@ export default { return id; } }, + outputErrorMessage(error) { + alert( + `error type: ${error.type}\nerror code: ${error.errors[0].code}\nerror detail: ${error.errors[0].detail}` + ); + }, }, watch: { startDate: { diff --git a/src/shared/fetchWrapper.js b/src/shared/fetchWrapper.js index b193eb2..03ca96e 100644 --- a/src/shared/fetchWrapper.js +++ b/src/shared/fetchWrapper.js @@ -15,7 +15,7 @@ function handleRequest(method, url, headers, attempts, body) { if (res) return res.json(); }) .catch((err) => { - console.log(err); + // console.log(err); return err; }); } From 23e65e6a903d200d691f33eb04d5787355cac05a Mon Sep 17 00:00:00 2001 From: Daria Golova Date: Mon, 21 Nov 2022 14:12:32 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B8=D0=BB=D0=B0?= =?UTF-8?q?=20=D0=BB=D0=B8=D1=88=D0=BD=D0=B5=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/shared/fetchWrapper.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/shared/fetchWrapper.js b/src/shared/fetchWrapper.js index 03ca96e..168acb0 100644 --- a/src/shared/fetchWrapper.js +++ b/src/shared/fetchWrapper.js @@ -15,7 +15,6 @@ function handleRequest(method, url, headers, attempts, body) { if (res) return res.json(); }) .catch((err) => { - // console.log(err); return err; }); }