Markdown Reader

calendar Documentation › CALENDAR_DOCUMENTATION_DE

Calendar Documentation De

Funktion: Calendar #

Persönlicher Kalender pro Benutzer. Jedes Mitglied verwaltet seine eigenen Termine (einmalig, keine Wiederholung in v1) und kann seinen Kalender optional über ein einbettbares Widget öffentlich teilen. Jeder Termin kann als öffentlich oder privat markiert werden.

Installation und Konfiguration

Per FTP: Das Verzeichnis calendar/ nach /plugins/ hochladen.

Per Package-Manager: calendar aus der Liste der verfügbaren Plugins auswählen.

Pfade:

  • Haupt-Plugin: /plugins/calendar/calendar.php
  • Bibliothek: /plugins/calendar/lib/calendar.lib.inc.php
  • Öffentliches Widget: /plugins/calendar/widget/calendar.widget.php
  • Handler: /plugins/calendar/handlers/ (Termin speichern/löschen, Terminbereich, Einstellungen)
  • CSS / JS: /plugins/calendar/css/, /plugins/calendar/js/

Konfigurationsparameter:

| Variable | Standardwert | Beschreibung |

|---|---|---|

| $basedatadisplay | 'yes' | In der Verwaltungsoberfläche sichtbar |

| $basedisplevel | BASE_LEVEL_USER | Für angemeldete Benutzer verfügbar |

| $ftype | 1 | Inhaltsmodul |

Verwendung

Der angemeldete Benutzer sieht seinen Kalender und kann:

  • einmalige Termine erstellen / bearbeiten / löschen.
  • die Freigabe konfigurieren über zwei Einstellungen:

- share_enabled — aktiviert das öffentliche Kalender-Widget.

- share_default_public — legt fest, ob neue Termine standardmäßig öffentlich sind.

Bei aktivierter Freigabe wird eine Widget-URL bereitgestellt:

text
?obj=calendar.widget&uid=Benutzer-ID

Öffentliches Widget: Ein nicht angemeldeter Besucher, der den Kalender mit einem uid-Parameter aufruft, erhält das öffentliche Widget dieses Benutzers, das einer doppelten Sperre unterliegt: Die Freigabe muss aktiviert sein (share_enabled) und es werden nur als öffentlich markierte Termine angezeigt.

Hooks und Einstiegspunkte

text
?obj=calendar.php                        — Persönlicher Kalender (angemeldeter Benutzer)
?obj=calendar.php&uid=ID                 — Öffentliches Widget (Besucher)
?obj=calendar.widget&uid=ID              — Einbettbares öffentliches Widget
?obj=calendar_event_save.mod             — Termin erstellen / bearbeiten
?obj=calendar_event_delete.mod           — Termin löschen
?obj=calendar_events_range.mod           — Termine eines Datumsbereichs abrufen
?obj=calendar_settings_save.mod          — Freigabeeinstellungen speichern

Abhängigkeiten

  • Beamreactor\Calendar\Calendar — Terminverwaltung
  • Beamreactor\Calendar\CalendarSharing — Logik der öffentlichen Freigabe
  • Beamreactor\Sanitizer\Parser

Sicherheit

Der persönliche Kalender ist auf angemeldete Benutzer beschränkt. Die öffentliche Bereitstellung beruht auf einer doppelten Sperre: Die Freigabe muss vom Eigentümer ausdrücklich aktiviert werden, und nur als öffentlich markierte Termine sind im Widget sichtbar. Eingaben werden über Parser::sanitize() bereinigt.