Calendar extended: Unterschied zwischen den Versionen
Aus Contao Community Documentation
(→Anmeldung über Formular) |
(→Anmeldung über Formular) |
||
Zeile 63: | Zeile 63: | ||
[[Datei:Kontaktinformation.png|Kontaktinformation|frame|center]] | [[Datei:Kontaktinformation.png|Kontaktinformation|frame|center]] | ||
− | == Anmeldung über Formular == | + | == Anmeldung über Formular (ERST AB CONTAO 3.5.4) == |
Diese Funktionalität setzt die Erweiterung '''efg''' voraus. Ist '''efg''' installiert, so kann im Event ein Formular ausgewählt werden, dass dann für die Anmeldung an diesem Event benutzt werden kann. | Diese Funktionalität setzt die Erweiterung '''efg''' voraus. Ist '''efg''' installiert, so kann im Event ein Formular ausgewählt werden, dass dann für die Anmeldung an diesem Event benutzt werden kann. | ||
Damit die Daten einer Anmeldung einem Event zugeordnet werden können, muss das ein zusätzliches Feld bekommen. Es muss ein verstecktes Feld mit dem Name und dem Wert eventid im Formular angelegt werden. | Damit die Daten einer Anmeldung einem Event zugeordnet werden können, muss das ein zusätzliches Feld bekommen. Es muss ein verstecktes Feld mit dem Name und dem Wert eventid im Formular angelegt werden. |
Version vom 19. Dezember 2015, 14:55 Uhr
Inhaltsverzeichnis
Allgemeines
Eine Erweiterung das Contao Kalenders. Diese Erweiterung ist entstanden, weil der Contao Kalender nicht genug Funktionalität hat.
Diese Erweiterung benötigt mindestens PHP 5.3.
Folgende Features bietet diese Erweiterung.
- Kalender
- Farben (Vor-/Hintergrund) für Kalender und Events
- Ferienkalender Ja/Nein
- Events
- Veranstaltungsort (Anschrift)
- Kontaktperson (Link, Mail)
- Anmeldung über Formular
- Wiederholungen erweitert
- Wiederholungen unregelmäßig
- Ausnahmen für Wiederholungen
Nach einem Update der Erweiterung kann es nötig sein, die betroffenen Events neu zu speichern.
Fehler und Anregungen können hier hinterlegt werden: https://github.com/kmielke/calendar_extended/issues
Der Kalender
Der Kalender hat folgende neue Funktionen bekommen:
Farben
Hintergrundfarbe
Die gewählte Hintergrundfarbe wird für die Darstellung der Events in der Ausgabe benutzt.
Vordergrundfarbe
Die gewählte Vordergrundfarbe wird für die Darstellung der Events in der Ausgabe benutzt.
Die Variabeln für die Farben müssen dann nach Wunsch in die Templates eingebaut werden.
$event['bgstyle'] = Hintergrundfarbe $event['fgstyle'] = Vordergrundfarbe
Ferien und Feiertage
Ferienkalender
Ist diese Option aktiviert, so kann dieser Kalender in den Frontend-Modulen als Ferienkalender benutzt werden. Dies hat zur Folge, dass im Frontend keine Events mehr angezeigt werden, die sich mit den Events aus dem Ferienkalender überschneiden. Dafür muss dann im FE Modul dieser Kalender als Ferienkalender ausgewählt werden.
Events anzeigen
Ist diese Option aktiviert, so werden nur bestimmte Events angezeigt, auch wenn diese sich mit den Events aus dem Ferienkalender überschneiden. Hierzu muss dann eine Option im Event selber aktiviert werden.
Die Events
Die Events haben folgende neue Funktionen bekommen:
Event immer anzeigen
Diese Option muss aktiviert werden, wenn das Event auch an einem Feiertag/Ferien angezeigt werden soll. Hierzu muss im Kalender die Option Events anzeigen aktiviert sein.
Veranstaltungsort (Anschrift)
Hier können Informationen zum Veranstaltungsort des Events hinterlegt werden. Diese Informationen stehen dann im FE zur Verfügung.
Kontaktperson (Link, Mail)
Hier können Informationen zur Kontaktperson des Events hinterlegt werden. Diese Informationen stehen dann im FE zur Verfügung.
Anmeldung über Formular (ERST AB CONTAO 3.5.4)
Diese Funktionalität setzt die Erweiterung efg voraus. Ist efg installiert, so kann im Event ein Formular ausgewählt werden, dass dann für die Anmeldung an diesem Event benutzt werden kann. Damit die Daten einer Anmeldung einem Event zugeordnet werden können, muss das ein zusätzliches Feld bekommen. Es muss ein verstecktes Feld mit dem Name und dem Wert eventid im Formular angelegt werden.
Nun kann im Event also ein Formular ausgewählt werden. Zusätzlich ist es möglich, die maximale Anzahl der Teilnehmer festzulegen. Die Belegung wird dann auch im Event abgespeichert. Die Werte für aktuell und frei werden automatisch berechnet.
Damit das Formular im FE gerendert wird, muss das Template (z.B. event_full.html5) angepasst werden.
<?php if ($this->regform): ?> <div class="yourClass"> Max. Teilnehmer: <?= $this->reginfo['maxi'] ?>, Reserviert: <?= $this->reginfo['curr'] ?>, Frei: <?= $this->reginfo['free'] ?> </div> <div class="yourClass"> <?= $this->regform ?> </div> <?php endif; ?>
Auch im Listen Template (z.B. event_upcoming.html) kann die Information genutzt werden.
<?php if ($this->reginfo): ?> (<?= $this->reginfo['maxi'] ?> / <?= $this->reginfo['curr'] ?> / <?= $this->reginfo['free'] ?>) <?php endif; ?>
Das Formular wird im FE solange angezeigt, bis die maximale Anzahl Teilnehmer erreicht ist. Danach wird eine Meldung angezeigt, die entsprechend konfigurierbar ist.
$GLOBALS['TL_LANG']['MSC']['regfull'] = 'Alle Plätze sind belegt. Ein Anmeldung ist aktuell nicht mehr möglich.';
Die Wiederholungen der Events
Anhand des Intervall und der Anzahl der Wiederholungen wird das Enddatum der Wiederholungen berechnet (war schon immer so), und zur Orientierung angezeigt. Ändern man die Anzahl der Wiederholungen, wird das Datum angepasst. Es kann aber nicht manuell geändert werden. Eine Liste der Wiederholungen wird in der Auswahl für die Ausnahmen gespeichert.
Die Option "Nur an Werktage" sogt dafür, dass das Event nicht an Wochenenden angezeigt wird.
Die Wiederholungen (erweitert)
In den erweiterten Wiederholungen ist es möglich Wiederholungen in einem anderen Intervall anzugeben, als es der Standard erlaubt.
Hier ist es nun möglich, zu sagen: "Ich möchte z.B. jeden dritten Mittwoch im Monat ein Event haben." Auch hier kann die Anzahl der Wiederholungen und Ausnahmen definiert werden. Die Handhabung ist hier identisch zu den normalen Wiederholungen.
Wiederholungen unregelmäßig
Zusätzlich zu möglichen Wiederholungen, können hier unregelmäßige Wiederholungen des Events hinterlegt werden. In Kombination mit den Ausnahmen ist das ganz hilfreich, wenn man für bestimmte Konstellationen nicht mehrere Events anlegen möchte.
Ausnahmen für Wiederholungen
Für die Wiederholungen können nun Ausnahmen definiert werden. Mit der aktuellen Version gibt es 3 Varianten von Ausnahmen, die auch miteinander kombiniert werden können.
- Datum - Ist das Datum der Ausnahme. Hier kann ein vorhandenes Datum gewählt werden.
- Aktion - Hier stehen drei Möglichkeiten zur Auswahl
- nicht anzeigen - Das Event wird am Ausnahmetag noch angezeigt
- verschieben - Das Event wird verschoben.
- CSS Class hinzufügen - Das Event bekommt eine CSS Class exception
- verschieben um - Wurde die Aktion verschieben gewählt, so kann hier das Event um diverse Tage verschoben werden
- Startzeit - neue Startzeit für die Ausnahme
- Endzeit - neue Endzeit für die Ausnahme
- Grund - Text, der im Template ausgegeben werden kann
Die Anzahl der Wiederholungen, die im DropDown gespeichert werden kann in der Datei localconfig.php eingestellt werden.
$GLOBALS['TL_CONFIG']['tl_calendar_events']['maxRepeatExecptions'] = 365;
Der Bereich, um den ein Event verschoben werden kann ist ebenfalls konfigurierbar.
$GLOBALS['TL_CONFIG']['tl_calendar_events']['moveDays'] = 7;
Das gilt auch für die Uhrzeiten. In diesem Beispiel von 10:00 Uhr bis 22:00 im 30 Minuten Rhythmus.
$GLOBALS['TL_CONFIG']['tl_calendar_events']['moveTimes'] = '10:00|22:00|30';
Soll eine Ausnahme erstellt werden, bei der sich nur die Zeit des Events ändert, so wählt man die Aktion verschieben, verschieben um 0 Tage, und setzt die neuen Zeiten.