Download the PHP package markocupic/resource-booking-bundle without Composer
On this page you can find all versions of the php package markocupic/resource-booking-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package resource-booking-bundle
resource-booking-bundle
Mit diesem Modul für Contao kann eine einfache Online-Ressourcenverwaltung betrieben werden. Das Modul wurde für eine Schule entwickelt, wo ein Zimmerreservations-System benötigt wurde. Natürlich kann das Plugin auch im Zusammenhang mit anderen Ressourcen betrieben werden.
Ab Version 3.x kann eingestellt werden, wie viele Items einer Ressource buchbar sein können. Damit wird es möglich eine Ressource von mehreren Personen buchen zu lassen, bis diese ausgebucht ist. Ein typischer use case können buchbare Geräte/Computer sein.
Rückwärtskompatibilität
!Achtung beim Update von Version 2.x auf 3.x ist es zu grossen Änderungen an den Templates gekommen. Unter anderem wurden die Templates für eine bessere Übersichtlichkeit gesplitet. Vorher angepasste Custom-Templates müssen neu geschrieben werden.
Take a look
Buchungstabelle mit Wochenübersicht:
Buchungsfenster:
Konfiguration
Nach der Installation mit dem Contao Manager müssen:
- Mindestens 1 Reservations-Zeitfenster-Typ erstellt werden.
- Danach darin die Reservations-Zeitfenster im Zeitformat H:i (08:00 bis 08:45) erstellt werden.
- Ressourcen-Typen erstellt werden.
- In jedem Ressourcen-Typ mindestens eine Ressource (z.B. Zimmer) erstellt werden.
- Mindestens 1 Mitglied (Frontend-Benutzer) angelegt werden. (Das Buchungsmodul wird nur bei eingeloggtem Benutzer angezeigt.)
Die Erweiterung wird mit einer Standardkonfiguration ausgeliefert. Weitere Konfigurationssets können erstellt werden. Mehr dazu weiter unten.
Das Tool setzt auf vue.js, Fontawesome und Bootstrap auf. Die benötigten Libraries/Frameworks werden automatisch mitinstalliert und im Template eingebunden.
Anm: Bei der Installation wird neben den oben erwähnten Erweiterungen auch codefog/contao-haste mitinstalliert.
Benachrichtigung
Die Benachrichtigung via Contao Notification Center bei Buchung/Stornierung ist ein kostenpflichtiges Zusatzfeature. Bitte nehmen Sie per E-Mail mit dem Autor der Erweiterung Kontakt auf.
Template mit zusätzlichen Mitgliederdaten erweitern
Sollen zusätzliche Mitgliederdaten in der Buchungsübersicht angezeigt weden, müssen zwei Dinge angepasst werden.
Erstens muss in der Moduleinstellung das Feld, welches zusätzlich angezeigt werden soll, ausgewählt werden.
Weiter muss zusätzlich das Template angepasst werden. Mit {{ booking.bookedByCompany }} kann der Firmenname oder mit {{ booking.bookedByCity }} der Wohnort mitangezeigt werden. Achtung! Hierbei handelt es sich nicht um einen Contao Inserttag, sondern um die "vue.js-Mustache-Syntax-Schreibweise". Das Leerzeichen nach bzw. vor der geschweiften Klammer ist nötig.
Events
Der rbb.event.pre_booking Event wird unmittelbar vor dem Datenbank-Insert ausgelöst. Mit einer Event-Subscriber-Klasse lassen sich beispielsweise die Datenbankeinträge manipulieren.
Der rbb.event.post_booking Event wird nach dem Buchungs-Request ausgelöst. Mit einer Event-Subscriber-Klasse, die auf den Event hört, können unmittelbar nach der Buchung Aktionen durchgeführt werden. Beispielsweise kann eine Benachrichtigung gesendet werden oder es können weitere Einträge in der Datenbank getätigt werden.
Der rbb.event.pre_canceling Event wird unmittelbar vor dem Stornieren einer Buchung ausgelöst.
Der rbb.event.post_canceling Event wird unmittelbar nach dem Stornieren einer Buchung ausgelöst.
Event Subscriber
Mit event subscribern kann die Applikation an mehreren Stellen erweitert werden. Dazu muss eine Subscriber Klasse erstellt werden und diese registriert werden.
Weiter muss eine entsprechende Event-Subscriber-Klasse erstellt werden (hier anhand rbb.event.post_booking):
XmlHttp event subscriber
Das Buchungstool basiert fast vollständig auf Ajax Requests. Mit einer eigenen Event Subscriber Klasse können die Responses auf diese Ajax Anfragen angepasst werden oder es lassen sich auch custom Anfragen implementieren. Der rbb.event.xml_http_request Event wird bei Ajax-Anfragen vor dem Absenden der Response zurück an den Browser getriggert.
Dazu muss die Subscriber-Klasse, die auf den rbb.event.xml_http_request Event hört, in der listener.yml registriert werden:
Weiter muss eine entsprechende Event-Subscriber-Klasse erstellt werden. Mit der Konstante "priority" kann die Reihenfolge eingestellt werden. Je grösser der Wert, umso eher wird der Subscriber aufgerufen. Der Originalsubscriber hat als Priorität den Wert 1000 zugewiesen.
App Konfiguration anpassen
Die Erweiterung wird mit einer Default-Konfiguration installiert. In config/config.yml können weitere Konfigurations-Sets erstellt werden, welche dann in den Frontend-Moduleinstellungen ausgewählt werden können.
Dazu muss in config/config.yml ein Eintrag erstellt werden.
All versions of resource-booking-bundle with dependencies
contao/core-bundle Version ^4.9
codefog/contao-haste Version ^4.23
markocupic/contao-component-bootstrap Version ^5.0
markocupic/contao-component-fontawesome-free Version ^5.13
markocupic/contao-component-vue-js Version ^2.6