From 29c148f92457ac64f8ac8ba8d2d2eedc1c384eb9 Mon Sep 17 00:00:00 2001 From: nobohan Date: Fri, 10 Sep 2021 13:38:13 +0200 Subject: [PATCH] rdv: can remove from delete calendar ranges --- .../public/vuejs/MyCalendarRange/App.vue | 18 +++++++++++++----- .../public/vuejs/MyCalendarRange/store.js | 13 +++++++++++-- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App.vue b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App.vue index 8572ff4fa..0a7d83db6 100644 --- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App.vue +++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App.vue @@ -17,7 +17,7 @@ {{ arg.timeText }}  {{ arg.event.title }} + @click.prevent="onClickDelete(arg.event)"> @@ -164,7 +164,8 @@ export default { ({ start: i.startDate.datetime, end: i.endDate.datetime, - calendarRangeId: i.id + calendarRangeId: i.id, + toDelete: 0 }) ); let calendarRangeEvents = { @@ -273,10 +274,17 @@ export default { } }, - onDelete(payload) { + onClickDelete(payload) { if (payload.extendedProps.hasOwnProperty("calendarRangeId")) { - payload.setProp('color', '#dddddd'); - this.$store.dispatch('deleteRange', payload); + if (payload.extendedProps.toDelete === 1) { + payload.setExtendedProp('toDelete', 0) + payload.setProp('color', '#79bafc'); + this.$store.dispatch('removeFromDeleteRange', payload); + } else { + payload.setExtendedProp('toDelete', 1) + payload.setProp('color', '#dddddd'); + this.$store.dispatch('deleteRange', payload); + } } else { let newEvents = this.calendarEvents.new.events; let filterEvents = newEvents.filter((e) => diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/store.js b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/store.js index 7db701a0d..997f95b11 100644 --- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/store.js +++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/store.js @@ -46,7 +46,13 @@ const store = createStore({ (e) => e.start.toString() !== payload.start.toString() && e.end.toString() !== payload.end.toString() ) state.newCalendarRanges = filteredCollection; - } + }, + removeFromDeleteRange(state, payload) { + let filteredCollection = state.deleteCalendarRanges.filter( + (e) => e.start.toString() !== payload.start.toString() && e.end.toString() !== payload.end.toString() + ) + state.deleteCalendarRanges = filteredCollection; + }, }, actions: { createRange({ commit }, payload) { @@ -72,7 +78,10 @@ const store = createStore({ }, removeNewCalendarRanges({ commit }, payload) { commit('removeNewCalendarRanges', payload); - } + }, + removeFromDeleteRange({ commit }, payload) { + commit('removeFromDeleteRange', payload); + }, } });