Can delete day

This commit is contained in:
Pierre HUBERT 2021-04-21 17:55:04 +02:00
parent 5fec0aa24c
commit 1adf0fb872
2 changed files with 29 additions and 13 deletions

View File

@ -56,11 +56,33 @@ class ForezPresenceHelper {
* @param {number} day
*/
static async DelDay(groupID, year, month, day) {
await ws("forez_presence/add_day", {
await ws("forez_presence/del_day", {
group: groupID,
year: year,
month: month,
day: day
})
}
static async UpdateEvents(groupID, oldStart, oldEnd, newStart, newEnd) {
const newDays = new Set(getDaysOfRange(newStart, newEnd).map(el => el.getTime()));
const oldDays = new Set(getDaysOfRange(oldStart, oldEnd).map(el => el.getTime()));
for (const el of newDays) {
if(oldDays.has(el)) {
newDays.delete(el)
oldDays.delete(el)
}
}
for(const newEl of newDays) {
const date = new Date(newEl);
await this.AddDay(groupID, date.getFullYear(), date.getMonth() + 1, date.getDate())
}
for(const oldEl of oldDays) {
const date = new Date(oldEl);
await this.DelDay(groupID, date.getFullYear(), date.getMonth() + 1, date.getDate())
}
}
}

View File

@ -48,20 +48,14 @@ class GroupPresencePage {
events: calEvents,
// Update events
eventResize: function(info) {
const newDays = new Set(getDaysOfRange(info.event.start, info.event.end).map(el => el.getTime()));
const oldDays = new Set(getDaysOfRange(info.oldEvent.start, info.oldEvent.end).map(el => el.getTime()));
for (const el of newDays) {
if(oldDays.has(el)) {
newDays.delete(el)
oldDays.delete(el)
eventResize: async function(info) {
try {
await ForezPresenceHelper.UpdateEvents(group.id, info.oldEvent.start, info.oldEvent.end, info.event.start, info.event.end)
} catch(e) {
console.error(e);
notify(tr("Failed to update presence!"), "danger")
}
}
console.info("add", newDays)
console.info("del", oldDays)
}
});
calendar.render()