Datepicker update
CI / build-and-test (push) Canceled after 0s

This commit is contained in:
2026-09-01 15:31:16 +02:00
parent ab1feba0f0
commit edf7510765
6 changed files with 112 additions and 6 deletions
@@ -141,10 +141,18 @@ public partial class SeatingPlanTabViewModel : ObservableObject
/// erlaubt: welche Stunde gemeint ist, steht durch die explizite Auswahl der Lehrkraft
/// (Klick auf "Unterrichtsmodus starten" für genau diese Stunde) bereits unzweideutig fest -
/// keine Geistersitzungs-Gefahr wie beim bloßen Öffnen eines Tabs.
///
/// Fällt bewusst auf JEDE an diesem Tag bereits bestehende Sitzung zurück, nicht nur auf eine
/// exakt mit `lesson.Id` verknüpfte (Nutzer-Feedback): kommt neben einer Doppelstunde noch eine
/// dritte Stunde am selben Tag hinzu (z.B. Vertretung, eigene `Lesson` mit eigener Id), soll
/// keine zweite Mitarbeitssitzung für denselben Tag entstehen — die Lehrkraft passt stattdessen
/// die Einschätzung der bereits bestehenden Sitzung an. Das entspricht dem Verhalten von
/// <see cref="EnsureTodaySession"/>, das schon immer pro Tag statt pro Stunde arbeitet.
/// </summary>
public void SelectOrCreateSessionForLesson(Lesson lesson)
{
var existing = TodaySessions.FirstOrDefault(s => s.LessonId == lesson.Id);
var existing = TodaySessions.FirstOrDefault(s => s.LessonId == lesson.Id)
?? TodaySessions.FirstOrDefault(s => s.Date == lesson.Date);
if (existing is not null) { SelectedSession = existing; return; }
if (!IsEditable) return;