Metalab OS/Calendaring
Use Cases
Rollen:
- AC: ein beliebiger unauthentifizierter Benutzer
- registeres User: ein authentifizierter Benutzer
- Calendar Admin: ein authentifizierter Benutzer mit administrativen Privilegien
View Calendar
Ein AC sieht sich mittels eines Browsers eine HTML-Repräsentation des metalab-Kalenders an. Der AC kann zwischen den Ansichten Tag, Woche, Monat, nächste n Tage und Liste der nächsten n Veranstaltungen wechseln. Zudem kann die ansicht auf bestimmte Räume eingeschränkt werden. Der AC kann einzelne Veranstaltungen anwählen, um die dazugehörigen Details (was, wann, wo, beschreibung, url, ...) einzusehen.
Retreive Feed
Ein AC ruft über http einen RSS (oder Atom?) Feed der nächsten n Veranstaltungen ab.
Register
Ein AC beantragt die Registrirung als Benutzer des metalab-Kalenders. Dafür füllt er ein Formular mit Kontaktdaten etc. aus. Der Antrag wird zur Freischaltung des (dann registrierten) Benutzers an die Calendar Admins per Email verschickt. Die Freischaltung erfolgt wiederum über ein Formular.
Add Entry
Ein registered User erstellt eine neue Veranstaltung mit allen dazugehörigen Daten (was, wann, wo, beschriebung, url, ...)
Modify Entry
Ein registered User verändert die Daten einer von ihm erstellten Veranstaltung oder ein Calendar Admin die Daten einer beliebigen Verantaltung.
Recurrence
1 2 3 4 - - d m every mth day n - w m nday of the week every m weeks - n m m nth day of the month every m months m n m o every nth mday every oth month
1. weekday 2. monthday 3. interval (day, week, month) 4. stride (every nth interval)
Daraus Belegung im Kalender berechnen.
Veränderung einzelner Termine einer sich wiederholenden Veranstaltung: werden extra eingetragen und referenzieren die ursprüngliche Veranstaltung.