2.9 KiB
2.9 KiB
Konzept
Notizen
- Kalender sollen unabhängig von Nutzern bestehen können
- Zugriffs-Stufen
none
: kein Zugriffview
: nur lesendedit
: lesend und schreibendadmin
: kann alles (auch Kalender löschen)
- einem Kalender können beliebig viele Nutzer zugeordnet werden, die jeweils bestimmte Zugriffs-Stufen zugewiesen haben
- Veranstaltungen bilden keine eigene Domäne
- es gibt verschiedene Arten von Quellen:
- lokal
- enthält Veranstaltungen
- caldav
- enthält keine eigenen Veranstaltungen
- sollte read-only- und read/write-Modus haben
- lokal
- nach dem Anmelden sieht man eine Kalender-Ansicht mit folgenden Kalendern kombiniert angezeigt:
- öffentliche Kalender
- nicht öffentliche Kalendar, bei welchen man mindestens Lese-Berechtigung hat
- öffentliche Kalendar können ohne Anmeldung betrachtet werden, jedoch nur mit einem schwer bis gar nicht erratbaren Link
Zugriffssteuerung
Es gibt folgende Zugriffsstufen :
none
: kein Zugriffview
: nur Lese-Zugriffedit
: Lese- und Schreib-Zugriffadmin
: Lese- und Schreib-Zugriff + Bearbeitung von Kalender-Eigenschaften
Zur Bestimmung welche Zugriffsstufe ein Nutzer auf einen Kalender/Termin hat, werden drei Werte betrachtet:
- Öffentlichkeit des Kalenders (
public
) - Standard-Zugriffsstufe des Kalenders (
default_level
) - dem Nutzer zugewiesene Zugriffsstufe für den Kalender (
attributed_level
)
Diese Angaben fließen in folgende Formel ein:
access_level = max(
(if public then 'view' else 'none'),
(if (attributed = NULL) then default_level else attributed_level)
)
… wobei die Ordnung der Zugriffsstufen der oben ersichtlichen Reihenfolge entspricht.
Einzeln aufgeführt ergibt das:
public | default level | attributed level | result |
---|---|---|---|
no | none | - | none |
no | none | none | none |
no | none | view | view |
no | none | edit | edit |
no | none | admin | admin |
no | view | - | view |
no | view | none | none |
no | view | view | view |
no | view | edit | edit |
no | view | admin | admin |
no | edit | - | edit |
no | edit | none | none |
no | edit | view | view |
no | edit | edit | edit |
no | edit | admin | admin |
no | admin | - | admin |
no | admin | none | none |
no | admin | view | view |
no | admin | edit | edit |
no | admin | admin | admin |
yes | none | - | view |
yes | none | none | view |
yes | none | view | view |
yes | none | edit | edit |
yes | none | admin | admin |
yes | view | - | view |
yes | view | none | view |
yes | view | view | view |
yes | view | edit | edit |
yes | view | admin | admin |
yes | edit | - | edit |
yes | edit | none | view |
yes | edit | view | view |
yes | edit | edit | edit |
yes | edit | admin | admin |
yes | admin | - | admin |
yes | admin | none | none |
yes | admin | view | view |
yes | admin | edit | edit |
yes | admin | admin | admin |