|
Terminkalender für Redaxo 5
Version 3.4.4
Autor: Wolfgang Busch
Dieses AddOn bietet ein System zur Verwaltung und Darstellung
von Veranstaltungsterminen mit responsivem Design. Die Termine lassen
sich in getrennt verwaltete Kategorien gliedern.
Das AddOn umfasst
- eine zusätzliche Redaxo-Datenbanktabelle für die Termine
- eine Stylesheet-Datei für Farben und Formen der Kalendermenüs
- Funktionen zu Kalenderberechnungen
- Funktionen zur Darstellung von Terminlisten und Kalendermenüs
- einen Modul zur Verwaltung der Termine (im Backend)
- einen Modul zur Ausgabe eines Kalendermenüs oder einer Terminliste (im Frontend)
Ein Termin ist normalerweise ein Zeitabschnitt an einem
einzelnen Tag. Er kann aber auch als Zeitbereich vereinbart werden,
der sich über mehrere Tage erstreckt, oder als Zeitabschnitt eines
Tages, der sich wöchentlich wiederholt.
Die Terminverwaltung beinhaltet diese Funktionen:
- Eintragung eines Termins samt zugehörigen Daten in die Datenbanktabelle
- Löschung eines Termins
- Aktualisierung der Daten eines Termins
- Kopieren (der Daten) eines Termins
- Suche eines Termins mittels Kalendermenüs
Als Kalendermenüs stehen die folgenden Darstellungen zur Wahl:
- Monatsmenü, Tage mit eingetragenen Terminen sind schraffiert
- Monats-, Wochen-, Tagesblatt mit halbgrafischer Darstellung aller Termine
- Liste der Termine eines Kalenderjahres mit Filterfunktionen
- tabellarische Darstellung der Daten eines Termins
- tabellarische Liste der Termine eines Zeitabschnitts
Alle Kalendermenüs gestatten das Blättern zum vorherigen und nachfolgenden
Zeitabschnitt, das Monatsmenü zusätzlich zum gleichen Monat im Vor- oder Folgejahr.
Zudem sind sie untereinander verlinkt, sodass man von einem zum anderen wechseln
kann. Die Kalenderfunktionen liefern in Form von tooltips gesetzliche und
christliche Feiertage.
Erste Schritte zum Aufbau eines Terminkalenders
- In einer ersten Testphase sollte in einem neuen Artikel
ein Block mit dem Modul
Termine verwalten
angelegt werden. Mit diesem werden Testtermine eingetragen.
Der Artikel kann offline bleiben, da der Modul keine
Ausgaben im Frontend macht.
- In einem weiteren Artikel sollte ein Block mit dem
Modul
Termine anzeigen angelegt werden.
Mit diesem lassen sich die Testtermine in den
unterschiedlichen Menüs im Frontend anzeigen. Wenn die
Testtermine in der näheren Zukunft liegen, sollten sie
von den Menüs "eingefangen" werden. Andernfalls
ist das eine gute Gelegenheit sie zu korrigieren, d.h. ihr
Datum geeignet zu ändern (siehe voriger Punkt).
- Daran könnte sich mithilfe der
Konfiguration
der konkrete Aufbau der Terminverwaltung anschließen:
- Anpassung der
Menüfarben
an das Site-Design:
Es wird eine Grundfarbe ausgewählt. Ausgehend von
dieser werden hellere ähnliche Farbtöne sowie
eine Komplementärfarbe verwendet. - Die RGB-Werte
der Grundfarbe müssen ≤105 sein, damit die
abgeleiteten Farben fehlerfrei berechnet werden
können.
- Anpassung der
Stundenleiste
im Monats- bzw. Wochen- oder Tagesblatt
(relevant nur für Desktop-Displays):
Die Gesamtbreite wird in Pixel angegeben.
Der darzustellende Zeitbereich kann auf weniger
als 24 Stunden eingeschränkt werden, z.B. auf
9:00 - 22:00 Uhr.
- Definition von
Terminkategorien :
Jede Kategorie kann jederzeit nachträglich umbenannt
werden, da nicht ihre Bezeichnung, sondern ihre Id
(= Nummer in der Konfiguration) in der Termintabelle
abgelegt wird. (Die jeweils letzten) Kategorien können
in der Konfiguration zwar entfernt werden, aber etwaige
zugehörige Termine bleiben erhalten und müssen ggf.
einzeln gelöscht werden.
Zuweisung von Terminkategorien an Redakteure
Damit ein Redakteur den Terminkalender nutzen kann,
muss ihm für jede Kategorie eine Benutzerrolle zugewiesen
werden, in der das Recht auf Nutzung der Kategorie
ausgewiesen ist. Außerdem braucht er den Zugriff auf die beiden
Module des AddOns.
Die Rechte zur Verwaltung und Ausgabe von Terminen der konfigurierten
Kategorien werden automatisch (im Abschnitt 'Extras' jeder Rolle)
definiert. Zudem wird je Kategorie automatisch eine Rolle
angelegt, in der das Recht zu ihrer Nutzung bereits markiert ist.
Diese Aktionen erfolgen in der Datei boot.php des AddOns.
Ein Redakteur kann jede der ihm zugewiesenen Kategorien einzeln
als unabhängigen Terminkalender anbieten. Alternativ kann er
auch alle seine Kategorien zu einem gemeinsamen Terminkalender
zusammenfassen.
Andererseits kann eine einzelne Terminkategorie auch von mehreren
Redakteuren verwaltet werden.
Sonstige Hinweise
- Um einen einzelnen aus einer Reihe von wöchentlich
wiederkehrenden Terminen zu modifizieren, muss ein
zusätzlicher Termin als
Ersatztermin
eingetragen werden. Dieser muss mit dem zu ersetzenden
Termin in den wesentlichen Parametern übereinstimmen
(Bezeichnung, Datum, Kategorie) und darf selbst kein
Wiederholungstermin und nicht mehrtägig sein.
- In der Terminliste (und nur dort!) können
Termine entsprechend ihrer Kategorien farbig markiert
werden, um eine optische Zuordnung zu Kategorien zu
unterstützen. Die Markierung erfolgt über CSS-Klassen
(termliste_border01, termliste_border02, ...
für Kategorie 1, 2, ...) für den linken Rand der rechten
Tabellenspalte. Der Default '{ none; }'
(keine Markierung) kann durch Neu-Definition
überschrieben werden: als <style>-Block vor
einem 'Termine anzeigen'-Block oder in einer
richtig platzierten eigenen Stylesheet-Datei.
- Die Icons in den Kalendermenüs sind dem
Awesome-Font entnommen. Der Zugriff darauf ist
in der Stylesheet-Datei definiert, wobei der URL auf
die entsprechenden Font-Dateien im AddOn
be_style verweist.
Anzeige eines Bespiels
AddOn-Download
|