namespace Elternbeirat.Web.Features.Events; /// /// A single calendar entry (parents' evening, meeting, deadline). Read from /// Content/events.yml at startup. All display text is German because it /// is visitor-facing content. /// public sealed class Event { /// Short title shown in the list and the calendar. public required string Title { get; init; } /// /// When the entry starts. A date-only entry (no time) is treated as an /// all-day event; see . /// public required DateTime Start { get; init; } /// /// True when carries a wall-clock time, false for an /// all-day entry. Drives both the list formatting and the ICS export. /// public required bool HasTime { get; init; } /// Optional end, for multi-hour or multi-day entries. public DateTime? End { get; init; } /// Optional location, e.g. "Aula" or "Mensa". public string? Location { get; init; } /// Optional free-text note shown below the entry. public string? Note { get; init; } }