diff --git a/src/pages/AdministratorToolPages.tsx b/src/pages/AdministratorToolPages.tsx index 2bc065d..c42a833 100644 --- a/src/pages/AdministratorToolPages.tsx +++ b/src/pages/AdministratorToolPages.tsx @@ -980,17 +980,17 @@ export function AdminCalendarAddEventPage() { }, []) if (loading && !options) { - return Loading… + return Loading… } return ( { await createAdministratorCalendarEvent(payload as never) @@ -1029,18 +1029,18 @@ export function AdminCalendarEditPage() { }, [eventId]) if (loading || !event) { - return Loading… + return Loading… } return ( { await updateAdministratorCalendarEvent(Number(eventId), payload) @@ -1059,6 +1059,7 @@ export function AdminCalendarViewPage() { const [loading, setLoading] = useState(true) const [error, setError] = useState(null) const schoolYear = searchParams.get('school_year') ?? '' + const semester = searchParams.get('semester') ?? '' const { options, currentYear } = useSchoolYearOptions({ preferredYear: schoolYear, }) @@ -1074,12 +1075,12 @@ export function AdminCalendarViewPage() { try { const data = await fetchAdministratorCalendarEvents({ schoolYear: schoolYear || null, - semester: null, + semester: semester || null, }) setEvents(data.data?.events ?? []) setError(null) } catch (e) { - setError(e instanceof Error ? e.message : 'Unable to load calendar events.') + setError(e instanceof Error ? e.message : 'Unable to load school calendar entries.') } finally { setLoading(false) } @@ -1087,16 +1088,16 @@ export function AdminCalendarViewPage() { useEffect(() => { void load() - }, [schoolYear]) + }, [schoolYear, semester]) async function onDelete(eventId: number) { - if (!window.confirm('Delete this event?')) return + if (!window.confirm('Delete this school calendar entry?')) return await deleteAdministratorCalendarEvent(eventId) await load() } return ( - + {error ? {error} : null} @@ -1107,7 +1108,7 @@ export function AdminCalendarViewPage() { to={`/app/administrator/calendar_add_event${schoolYear ? `?school_year=${encodeURIComponent(schoolYear)}` : ''}`} className="btn btn-success" > - Add New Event + Add School Calendar Entry @@ -1116,8 +1117,10 @@ export function AdminCalendarViewPage() { onSubmit={(event) => { event.preventDefault() const year = String(new FormData(event.currentTarget).get('school_year') ?? '').trim() + const semester = String(new FormData(event.currentTarget).get('semester') ?? '').trim() const next = new URLSearchParams() if (year) next.set('school_year', year) + if (semester) next.set('semester', semester) setSearchParams(next) }} > @@ -1136,6 +1139,19 @@ export function AdminCalendarViewPage() { ))} + + Semester + + - + Fall + Spring + + Apply Type Description Date - Audience + Notify Parent + Notify Teacher + Notify Admin + No School Actions {loading ? ( - Loading events… + Loading school calendar entries… ) : events.length === 0 ? ( - No events found. + No school calendar entries found. ) : ( events.map((row) => ( @@ -1176,7 +1195,10 @@ export function AdminCalendarViewPage() { {String(row.extendedProps?.event_type ?? '—')} {row.description || '—'} {formatDate(row.start)} - {eventAudienceBadges(row).join(', ') || '—'} + + + + {row.id ? ( <> @@ -1188,7 +1210,7 @@ export function AdminCalendarViewPage() { > ) : ( - Meeting event + Meeting entry )}
Loading…