fix: add missing updateEvent function to CalendarTab
All checks were successful
Deploy / deploy (push) Successful in 2m47s
All checks were successful
Deploy / deploy (push) Successful in 2m47s
This commit is contained in:
@@ -609,6 +609,30 @@ export default function CalendarTab() {
|
|||||||
} catch (e: any) { alert(e.message || 'Ошибка удаления') }
|
} catch (e: any) { alert(e.message || 'Ошибка удаления') }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const updateEvent = async (event: CalendarEvent, updates: Partial<CalendarEvent>) => {
|
||||||
|
const startStr = updates.start || event.start
|
||||||
|
const endStr = updates.end || event.end
|
||||||
|
const body = {
|
||||||
|
eventId: event.id,
|
||||||
|
title: updates.title || event.title,
|
||||||
|
date: startStr.split('T')[0],
|
||||||
|
startTime: updates.allDay ? null : formatTime(startStr),
|
||||||
|
endTime: updates.allDay ? null : formatTime(endStr),
|
||||||
|
allDay: updates.allDay ?? event.allDay,
|
||||||
|
}
|
||||||
|
const r = await fetch('/api/calendar', { method: 'PUT', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(body) })
|
||||||
|
const d = await r.json()
|
||||||
|
if (d.error) throw new Error(d.error)
|
||||||
|
setEvents(prev => prev.map(e => e.id === event.id ? {
|
||||||
|
...e,
|
||||||
|
title: updates.title || e.title,
|
||||||
|
start: d.event.start || e.start,
|
||||||
|
end: d.event.end || e.end,
|
||||||
|
allDay: d.event.allDay ?? e.allDay,
|
||||||
|
} : e))
|
||||||
|
setSelectedEvent(null)
|
||||||
|
}
|
||||||
|
|
||||||
const calendarOwners = useMemo(() => {
|
const calendarOwners = useMemo(() => {
|
||||||
const map = new Map<string, { owner: string; ownerName: string; color: string; count: number }>()
|
const map = new Map<string, { owner: string; ownerName: string; color: string; count: number }>()
|
||||||
events.forEach(e => {
|
events.forEach(e => {
|
||||||
|
|||||||
Reference in New Issue
Block a user