55 lines
1.6 KiB
Dart
55 lines
1.6 KiB
Dart
import '../../../state/app/modules/marianum_dates/bloc/marianum_dates_state.dart';
|
|
import '../demo_persona.dart';
|
|
|
|
/// Demo fixtures for the school calendar — a handful of upcoming events built
|
|
/// relative to "now" and consistent with the demo persona (class 10b).
|
|
class DemoMarianumDates {
|
|
const DemoMarianumDates._();
|
|
|
|
static List<MarianumDate> events() {
|
|
final today = DateTime.now();
|
|
DateTime at(int offset, [int hour = 0, int minute = 0]) => DateTime(
|
|
today.year,
|
|
today.month,
|
|
today.day,
|
|
hour,
|
|
minute,
|
|
).add(Duration(days: offset));
|
|
|
|
return [
|
|
MarianumDate(
|
|
uid: 'demo-klausur-mathe',
|
|
title: 'Klausur Mathematik ${DemoPersona.className}',
|
|
description: 'Erste Klausur bei Herr Müller. Themen: Analysis.',
|
|
start: at(4, 9, 45),
|
|
end: at(4, 11, 15),
|
|
isAllDay: false,
|
|
),
|
|
MarianumDate(
|
|
uid: 'demo-wandertag',
|
|
title: 'Wandertag',
|
|
description: 'Gemeinsamer Ausflug der Jahrgangsstufe 10.',
|
|
start: at(11),
|
|
end: at(12),
|
|
isAllDay: true,
|
|
),
|
|
MarianumDate(
|
|
uid: 'demo-elternsprechtag',
|
|
title: 'Elternsprechtag',
|
|
description: 'Anmeldung zu den Gesprächen über das Sekretariat.',
|
|
start: at(18, 14, 0),
|
|
end: at(18, 19, 0),
|
|
isAllDay: false,
|
|
),
|
|
MarianumDate(
|
|
uid: 'demo-zeugniskonferenz',
|
|
title: 'Zeugniskonferenz',
|
|
description: 'Unterrichtsfrei ab der 4. Stunde.',
|
|
start: at(32),
|
|
end: at(33),
|
|
isAllDay: true,
|
|
),
|
|
];
|
|
}
|
|
}
|