Download the PHP package markocupic/calendar-event-booking-bundle without Composer

On this page you can find all versions of the php package markocupic/calendar-event-booking-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package calendar-event-booking-bundle

Events buchen mit Contao

Achtung: Bei der Migration von Version 3.x nach 4.x gab es mehrere Änderungen in der Benennung der Modul-Typen und Template-Namen. Dies bitte bei einer allfälligen Migration berücksichtigen.

Events buchen

Mit dieser Erweiterung für Contao CMS werden Events über ein Anmeldeformular buchbar. Das Anmeldeformular kann im Contao Formulargenerator erstellt werden. Die Erweiterung stellt während des Installationsprozesses ein Sample Anmeldeformular bereit, welches Grundansprüchen genügen sollte. Die Werte des Formulars werden in der Datenbank in tl_calendar_events_member abgelegt und sind im Backend einsehbar und über eine CSV-Datei exportierbar.

Benachrichtigung

Event-Organisator und Teilnehmer können bei Event-Anmeldung und Event-Abmeldung über das Notification Center benachrichtigt werden.

Frontend Module

Event Anmeldeformular

Mit einem Frontend Modul lässt sich auf einer Event-Reader Seite ein Event-Anmeldeformular einblenden. Verlinken Sie in den Moduleinstellungen mit dem entsprechenden Formular aus dem Contao Formulargenerator. Wichtig! Das Anmeldeformular zieht den Eventnamen aus der Url. Der Event-Alias oder die Event-Id müssen deshalb zwingend als Parameter in der Url enthalten sein. Das Anmeldeformular sollte deshalb idealerweise immer in Kombination mit dem Event-Reader-Modul eingebunden werden.

Angemeldete Mitglieder im Frontend auflisten

Mit einem weiteren Frontend Modul können zu einem Event bereits angemeldete Personen aufgelistet werden. Wichtig! Das Auflistungsmodul zieht den Eventnamen aus der Url. Der Event-Alias oder die Event-Id müssen deshalb zwingend als Parameter in der Url enthalten sein. Das Mitgliederauflistungs-Modul sollte deshalb idealerweise immer in Kombination mit dem Event-Reader-Modul eingebunden werden.

Von Event abmelden

Die Erweiterung stellt auch eine Möglichkeit sich von einem Event wieder abzumelden. Via Notification Center kann dem Teilnehmer ein Abmeldelink (##event_unsubscribeHref##) zugeschickt werden. Erstellen Sie das entsprechende Modul und binden Sie es auf einer neuen Seite in der Seitenstruktur ein. Diese Seite sollten Sie sinnvollerweise in der Navigation nicht anzeigen lassen. In der Kalendereinstellung legen Sie anschliessend fest, auf welcher Seite das Event-Abmeldeformular liegt.

Event Teilnehmer als CSV-Datei herunterladen (Encoding richtig einstellen)

Die Teilnehmer eines Events lassen sich im Backend als CSV-Datei (Excel) herunterladen. In der config/config.yaml lässt sich das Encoding einstellen. Standardmässig werden die Daten im Format UTF-8 exportiert. Es kann sein, dass Excel (bei entsprechender Einstellung), dann Umlaute falsch darstellt. Das Problem kann behoben werden, wenn die config/config.yaml dahingehend anpasst wird, dass die Inhalte vor dem Export von UTF-8 nach ISO-8859-1 konvertiert werden.

Einrichtung (Ablauf)

  1. Kalender und Events anlegen.
  2. "Eventliste" und "Eventleser" Frontend-Module anlegen.
  3. Falls nicht schon geschehen, E-Mail-Gateway (Notification Center) anlegen.
  4. Benachrichtigung des Typs "Event-Buchungsbestätigung" anlegen (Notification Center)
  5. Im Contao Formulargenerator die benötigten Felder bereitstellen.
  6. Im Formular (Formulargenerator) die Weiterleitungsseite einrichten.
  7. Das Frontend Modul "Event-Buchungsformular" erstellen und in den Modul-Einstellungen das bei Punkt 5 erstellte Formular auswählen. Danach noch die bei Punkt 4 erstellte Benachrichtigung auswählen.
  8. Die 3 erstellten Module (Eventliste, Eventleser und Event-Buchungsformular) in der Contao Seitenstruktur einbinden (Wichtig! Event-Buchungsformular und Eventleser gehören auf die gleiche Seite).
  9. Optional das Frontend Modul "Event-Abmeldeformular" mit dazugehörender Benachrichtigung "Event-Abmeldung" erstellen und dieses in einer extra dafür erstellten Seite einbinden.
  10. Optional das Frontend Modul "Event-Mitglieder-Auflistung" erstellen und auf der Seite mit dem Eventleser Modul einbinden.
  11. Bei den Events die Buchungs-, Benachrichtigungs- und Abmeldeoptionen konfigurieren.
  12. In der Kalendereinstellung die Seite mit dem "Event-Abmeldeformular" festlegen.

Punkt 4: E-Mail Benachrichtigung im Notification Center konfigurieren

Versenden Sie beim Absenden des Formulars eine oder mehrere Nachrichten an den Teilnehmer oder eine Kopie an den Eventorganisator und nutzen Sie dabei die Simple Tokens.

Mit ##event_unsubscribeHref## kann ein tokengesicherter Event-Abmeldelink mitgesandt werden. Dazu muss aber im Event die Event-Abmeldung erlaubt werden. Auch sollte das dafür nötige Frontend Modul "Event-Abmeldeformular" erstellt und in einer Seite eingebunden worden sein.

Gebrauch der Simple Tokens im Notification Center

Teilnehmer: ##member_gender## (Männlich, Weiblich oder Divers), ##member_salutation## (Übersetzt: Herr oder Frau), ##member_email##, ##member_firstname##, ##member_street##, etc. (Feldnamen aus tl_calendar_events_member)

Event: ##event_title##, ##event_street##, ##event_postal##, ##event_city##, ##event_unsubscribeLimitTstamp##, etc. (Feldnamen aus tl_calendar_events)

Organisator/Email-Absender: ##organizer_name##, ##organizer_email, etc. (Feldnamen aus tl_user)

Punkt 5: Event-Buchungsformular erstellen

Beim ersten Aufruf der Seite nach der Installation der Erweiterung wird automatisch ein Beispielformular mit allen benötigten Feldern generiert. Wichtig!!! Im Formular muss die Checkbox "Aktiviere Event-Buchungsformular-Funktion" aktiviert sein. Weitere Einstellungen müssen keine zwingend gemacht werden. Folgende Felder können im Formular erstellt werden: firstname,lastname,gender,dateOfBirth,street,postal,city,phone,email,escorts,notes

Werden weitere Felder gewünscht, so müssen diese im Projekt-ROOT unter contao/dca/tl_calendar_events_member.php definiert werden. Danach Cache neu aufbauen und via Installtool die Felder in der Datenbank anlegen.

Dokumentation

Punkt 11: E-Mail Buchungsbestätigung im Event aktivieren

Aktivieren Sie beim Event die Buchungsbestätigung mit dem Notification Center, wählen Sie eine Benachrichtigung aus und legen Sie einen Absender mit einer gültigen E-Mail-Adresse (tl_user) fest.

Template Variablen

Folgende zusätzliche Template Variablen sind in allen Kalender-Templates einsetzbar: Tag type Erklärung
$this->canRegister bool Zeigt, ob eine Registrierung möglich ist.
$this->isFullyBooked bool Zeigt, ob der Event ausgebucht ist.
$this->bookingCount int Zeigt, die Anzahl Registrierungen an.
$this->bookingMin int Zeigt, die minimal verlangte Teilnehmerzahl an.
$this->bookingMax int Zeigt, die maximale Teilnehmerzahl an.
$this->bookingStartTimestamp int Zeigt, die Buchungsstartzeit (timestamp) an.
$this->bookingStartDate int Zeigt, die Buchungsstartzeit (date) an.
$this->bookingStartDatim int Zeigt, die Buchungsstartzeit (datim) an.
$this->bookingEndTimestamp int Zeigt, die Buchungsendzeit (timestamp) an.
$this->bookingEndDate int Zeigt, die Buchungsendzeit (date) an.
$this->bookingEndDatim int Zeigt, die Buchungsendzeit (datim) an.
$this->hasLoggedInUser bool Zeigt an, ob ein Mitglied angemeldet ist.
$this->loggedInUser null FrontendUser Gibt null oder das FrontendUser Objekt zurück.

Überblick über alle Simple Tokens beim Gebrauch des Notification Centers

Mit Hooks Frontend Module erweitern/anpassen

Vor allem das Modul "Buchungsformular" lässt sich sehr gut erweitern. An verschiedenen Stellen im Code lassen sich via Hooks Funktionalitäten wie Lego-Bausteine hinzufügen oder durch Deaktivierung eines Hooks unerwünschte Funktionalitäten entfernen. Um sich einen Überblick über die verschiedenen Hooks zu verschaffen, genügt ein Blick in den Buchungs-Controller.

Mehrfaches Absenden des Buchungsformulars unterbinden

Mit etwas Javascript Code, den man im Buchungs-Template einbindet, lässt sich durch Deaktivierung des Absende-Buttons beim ersten Absenden des Formulars, eine mehrfache Anmeldung durch Doppelklick o.Ä unterbinden.


All versions of calendar-event-booking-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
contao/core-bundle Version ^4.13 || ^5.0
contao/calendar-bundle Version ^4.13 || ^5.0
markocupic/export_table Version ^5.1
ramsey/uuid Version ^3.0 || ^4.0
codefog/contao-haste Version ^5.0
terminal42/notification_center Version ^2.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package markocupic/calendar-event-booking-bundle contains the following files

Loading the files please wait ....