vue #1

Merged
LeoVasanko merged 14 commits from vue into main 2025-08-22 23:34:34 +01:00
Showing only changes of commit 00936b33ea - Show all commits

View File

@ -331,7 +331,7 @@ export class EventManager {
</div>
</div>
<footer class="ec-footer">
<button type="button" class="ec-btn" data-action="cancel">Cancel</button>
<button type="button" class="ec-btn" data-action="delete">Delete</button>
<button type="submit" class="ec-btn primary">Save</button>
</footer>
</form>
@ -387,7 +387,24 @@ export class EventManager {
this.hideEventDialog()
})
this.eventForm.querySelector('[data-action="cancel"]').addEventListener('click', () => {
this.eventForm.querySelector('[data-action="delete"]').addEventListener('click', () => {
if (this._dialogMode === 'edit' && this._editingEventId) {
// Find and remove the event from ALL dates it spans across
const datesToCleanup = []
for (const [dateStr, eventList] of this.events) {
const eventIndex = eventList.findIndex(event => event.id === this._editingEventId)
if (eventIndex !== -1) {
eventList.splice(eventIndex, 1)
// Mark date for cleanup if empty
if (eventList.length === 0) {
datesToCleanup.push(dateStr)
}
}
}
// Clean up empty date entries
datesToCleanup.forEach(dateStr => this.events.delete(dateStr))
this.calendar.forceUpdateVisibleWeeks()
}
this.hideEventDialog()
if (this._dialogMode === 'create') this.clearSelection()
})