mindbird / contao-room-reservation
Simple room reservation bundle
Package info
github.com/mindbird/contao-room-reservation
Type:contao-bundle
pkg:composer/mindbird/contao-room-reservation
Requires
- php: ^8.3
- contao/calendar-bundle: ^5.7
- contao/core-bundle: ^5.7
- contao/manager-plugin: ^2.0
- terminal42/notification_center: ^2.7
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Eine Contao-Erweiterung zur Reservierung von Raeumen. Buchungen werden als Kalenderereignisse gespeichert und stehen dadurch unmittelbar als Belegung im zugeordneten Kalenderarchiv zur Verfuegung.
Voraussetzungen
- PHP 8.3 oder hoeher
- Contao 5.7
- Contao Calendar Bundle
- Terminal42 Notification Center 2.7 oder hoeher
Installation
Die Erweiterung im Stammverzeichnis der Contao-Installation installieren:
composer require mindbird/contao-room-reservation
Anschliessend den Contao-Installationsvorgang ausfuehren, damit die Datenbankstruktur aktualisiert wird:
vendor/bin/contao-console contao:migrate
Einrichtung
- Im Backend unter Inhalte > Kalender ein Kalenderarchiv fuer den Raum anlegen. Jede erfolgreiche Buchung wird dort als Kalenderereignis gespeichert.
- Eine Zielseite anlegen, auf die nach einer Buchung weitergeleitet wird. Sie sollte ein Kalendermodul enthalten, das dasselbe Kalenderarchiv ausgibt.
- Ein Frontend-Modul vom Typ Raumreservierung anlegen und auf der gewuenschten Seite einbinden.
- Im Modul das Kalenderarchiv, die Buchungszeiten, die Mindestbuchungsdauer und die Zielseite festlegen.
- Optional eine AGB-Seite und eine Notification-Center-Benachrichtigung auswaehlen.
Moduloptionen
| Option | Beschreibung |
|---|---|
| Kalenderarchiv | Kalender, in dem die Buchungen als Ereignisse angelegt werden. |
| Buchungszeitraum | Frueheste Start- und spaeteste Endzeit; das Formular bietet Viertelstunden-Schritte an. |
| Zeit zwischen Buchungen | Sperrzeit in Minuten nach einer bestehenden Buchung. |
| Mindestbuchungsdauer | Kleinste zulaessige Buchungsdauer in Minuten. |
| Zielseite | Seite, auf die nach einer erfolgreichen Buchung weitergeleitet wird. |
| AGB-Seite | Optionaler Link, den Buchende im Formular bestaetigen muessen. |
| Wiederholung | Buchungen koennen woechentlich wiederholt werden. |
| Preisoptionen | Konfiguriert Preise fuer Stunde, Tag, halbe Stunde, halben Tag und Abend im Formular. |
Das Formular prueft die Verfuegbarkeit gegen vorhandene Kalenderereignisse im ausgewaehlten Archiv. Nicht verfuegbare Termine werden nicht gespeichert.
Benachrichtigungen
Fuer eine Buchungsbestaetigung im Notification Center den Typ
room_reservation_booking_confirmation verwenden. Folgende Tokens stehen zur
Verfuegung:
| Token | Inhalt |
|---|---|
##room_start_date## |
Beginn der Buchung |
##room_end_date## |
Ende der Buchung |
##room_repeat## |
Ob es sich um eine wiederholte Buchung handelt |
##room_repeat_times## |
Anzahl der woechentlichen Wiederholungen |
##room_event_title## |
Titel der Veranstaltung |
##member_email## |
E-Mail-Adresse des angemeldeten Frontend-Mitglieds, sofern vorhanden |
Lizenz
LGPL-3.0-or-later. Siehe GNU LGPL 3.0.