Skip to main content

Änderungsprotokoll

WirdDieses synchronisiertÄnderungsprotokoll listet alle veröffentlichten Versionen von Backend Booking, die neueste zuerst.

Diese Seite wird beim Release automatisch aus der Änderungsdatei des Produkts erzeugt. Änderungen von Hand gehen beim nächsten Abgleich verloren.

Version 1.0.4 – 31.07.2026

Hinzugefügt

    Einheitliches Installationspanel nach Installation und Update, im Aufbau identisch zu den übrigen Graup-IT-Erweiterungen: Produktmarke, Version, Status, Sprung in die Plugin-Einstellungen sowie Karten für Erste Schritte, Download-Schlüssel und Handbuch. Die Karte „Updates aktivieren“ führt direkt auf die Update-Quellen, vorgefiltert auf „Download-Schlüssel fehlt“. <changelogurl> im Manifest: Der Erweiterungs-Manager zeigt hinter der Versionsnummer die Änderungsliste.

    Geändert

      Sämtliche Meldungen des Installationsskripts laufen über Sprachkonstanten statt über fest eingebautes Englisch und liegen in Deutsch und Englisch vor. Nicht fatale Hinweise (Zustand des Template-Overrides, deaktiviertes DPCalendar) erscheinen jetzt im Panel statt als lose Meldung daneben. Abbruchgründe bleiben unverändert Fehlermeldungen.

      Version 1.0.3 – 29.07.2026

      Behoben

        Ein-Klick-Updates schlugen mit „Prüfsummenprüfung fehlgeschlagen“ fehl: Der Download-Schlüssel wurde als download_id= übergeben, wofür der Update-Server zusätzlich eine Domain-Angabe verlangt, die Joomla nie mitsendet (403 Invalid Domain). Der Schlüssel wird jetzt wie bei den Schwesterprodukten als dlid= übergeben.

        Version 1.0.2 – 29.07.2026

        Geändert

          Einheitlicher Produktname „Backend Booking“ (keine Sprachmischung mehr): Der Plugin-Anzeigename lautet jetzt auch in Deutsch „DPCalendar - Backend Booking“ (Plugin-Liste, Kalender-Hinweismeldung). Deutsche Funktionsbegriffe wie „eine Buchung im Backend erfassen“ bleiben unverändert.

          Version 1.0.1 – 29.07.2026

          Hinzugefügt

            Das Template-Override für die Buchungsübersicht wird jetzt automatisch verwaltet: Installation und Update legen es im aktiven Administrator-Template ab bzw. frischen es auf, die Deinstallation entfernt es wieder — aus allen Admin-Templates. Ein selbst angepasstes Override (ohne Plugin-Kennung im Dateikopf) wird dabei nie überschrieben oder gelöscht, sondern nur per Hinweis gemeldet. Die Installation prüft vorab, ob DPCalendar (mindestens Version 10) installiert ist, und bricht andernfalls mit einer klaren Meldung ab. Ist DPCalendar nur deaktiviert, erscheint eine Warnung. Der Ordner overrides/ ist jetzt Bestandteil des Installationspakets.

            Version 1.0.0 – 29.07.2026

            Sicherheit

              Zugriffsprüfung nutzt jetzt DPCalendars eigene Aktion dpcalendar.admin.book (Buchungen für andere anlegen) statt core.create; zusätzlich kalenderscharfe dpcalendar.book-Prüfung je Veranstaltung. Automatische Kontoerstellung erfordert das Recht, Benutzer anzulegen (com_users); Gruppen mit administrativen Rechten werden als Zielgruppe verweigert. Alle Meldungen escapen Benutzernamen und E-Mail-Adressen; Ausnahmedetails landen nur noch im Joomla-Protokoll (generische Meldung im UI). Formular entschlackt: user_id, uid, coupon_id, coupon_rate, series, amount, payer_email sind nicht mehr aus dem Request setzbar; benutzerdefinierte Felder werden ausschließlich gefiltert übernommen. Ticketmengen werden serverseitig auf Limit und Restkapazität geklemmt.

              Hinzugefügt

                Benutzerauswahl als Remote-Suche (Name, Benutzername oder E-Mail, ab 2 Zeichen) — skaliert auch mit großen Benutzertabellen. Warteliste: volle Veranstaltungen mit Warteliste sind jetzt buchbar (Badge in der Liste, Hinweis im Formular); der Status „Warteliste" wird dort vorausgewählt, damit ein „Aktiv"-Standard die Veranstaltung nicht überbucht. Mini-JavaScript im Buchungsformular: Benutzerauswahl deaktiviert die Gast-Karte (Pflichtfeld-Sternchen bleiben erhalten) und der Speichern-Button wechselt auf „Weiter zu den Personendaten". Erfolgsmeldungen verlinken direkt auf die angelegte Buchung. „Zurück zum Buchungsformular" im Personen-Schritt behält alle Eingaben. Neue Optionen „Max. Listeneinträge" (Standard 100) und „Max. Benutzer pro Buchungsvorgang" (Standard 25, zusätzlich durch max_input_vars begrenzt).

                Geändert

                  Statusauswahl auf sinnvolle Backend-Werte reduziert (Aktiv, Wartend, Eingeladen, Warteliste). Veranstaltungsliste mit Limit + Trefferzahl; Hinweis bei gekapptem Ergebnis; Ortsfilter erscheint nur bis 300 Orten. Bei mehr als 5 gebuchten Benutzern eine Sammelmeldung statt Einzelmeldungen (Warnungen bleiben immer einzeln). Tabellen semantisch überarbeitet (Spaltenköpfe, Screenreader-Texte), einheitliche Datumsdarstellung, konsistente Kartentitel („Zusätzliche Felder", „Buchungsdetails"). Interne Konsolidierung: gemeinsames Modell-Caching, Formular-Cache pro Veranstaltung, Session-State wird nach dem Formularbau wiederhergestellt.

                  Behoben

                    Ein Kalender in der Freigabe aktivierte versehentlich dessen gesamten Unterbaum (DPCalendar-Subtree-Semantik bei Einzelwert). Fehlermeldungen der Pipeline gingen im Mehrfach-Benutzer-Pfad teilweise verloren bzw. wurden dem falschen Benutzer zugeordnet.

                    Version 0.6.1 – 29.07.2026

                    Hinzugefügt

                      Werden Benutzer ausgewählt, obwohl in der Gast-Karte Kontaktdaten erfasst wurden (und die Vorgaben-Übernahme aus ist), weist der Schritt „Personendaten je Benutzer" jetzt mit einer Hinweismeldung darauf hin, dass die Gast-Daten nicht übernommen wurden.

                      Version 0.6.0 – 29.07.2026

                      Geändert

                        Buchungsformular neu gegliedert: „Für bestehende Benutzer buchen" (erste, hervorgehobene Karte mit Benutzerauswahl) und „Als Gast buchen (ohne Benutzerkonto)" (Kontaktdaten) sind jetzt klar getrennte Bereiche mit einem „oder" dazwischen; die benutzerdefinierten Felder stehen in einer eigenen Karte „Buchungsfelder". Die Übernahme der Formularwerte als Vorgabe in den Schritt „Personendaten je Benutzer" ist jetzt optional (neue Checkbox in der Benutzer-Karte, standardmäßig aus). Ohne Häkchen startet der Personen-Schritt nur mit Konto- und Profildaten.

                        Behoben

                          Im Personen-Schritt abgewählte Checkbox-Felder wurden beim Speichern fälschlich wieder mit dem gemeinsamen Formularwert befüllt.

                          Version 0.5.2 – 29.07.2026

                          Behoben

                            Werfende Feld-Validierungen (z. B. ein Kalender-Custom-Field mit ungültigem Datumsformat) führten zu einer rohen Fehlerseite. Sie werden jetzt als normale Validierungsfehler behandelt: Meldung + Formular mit erhaltenen Eingaben (bei der Mehrfach-Buchung pro Benutzer benannt); ungültige Sticky-Werte lassen das Formular-Rendering nicht mehr abbrechen. Der Zahlungsanbieter wird nicht mehr mit dem erfundenen Wert „manual" vorbelegt: Gewählt wird aus den echten Anbietern der dpcalendarpay-Plugins (Werteformat element-id), kostenlose Buchungen bleiben ohne Anbieter.

                            Version 0.5.1 – 29.07.2026

                            Hinzugefügt

                              Erfolgsmeldungen nennen jetzt immer den gebuchten Termin: „Buchung #12 (Schwimmkurs, 13.08.2026 17:00) wurde angelegt" — auch pro Benutzer bei der Mehrfach-Buchung. Template-Override für die DPCalendar-Buchungsübersicht (overrides/com_dpcalendar/): zeigt unter jedem Veranstaltungslink den gebuchten Termin und fasst mehrere Tickets derselben Veranstaltung zu einem Eintrag zusammen. Installation siehe README.

                              Version 0.5.0 – 29.07.2026

                              Hinzugefügt

                                Mehrfach-Benutzer-Buchung: Neuer Zwischenschritt „Personendaten je Benutzer" — alle Buchungsfelder (Kontaktdaten und benutzerdefinierte Felder) können pro Benutzer einzeln bearbeitet werden; eine gemeinsame Eingabe für alle gibt es nicht mehr. Vorbefüllung aus Benutzerkonto (Name, E-Mail) und Joomla-Benutzerprofil (Telefon, Straße, PLZ, Ort, Bundesland aus plg_user_profile, sofern vorhanden); Werte aus dem Buchungsformular dienen als Vorgabe. Alles-oder-nichts-Validierung: Erst wenn alle Pflichtfelder bei allen Benutzern befüllt sind, werden die Buchungen angelegt — sonst keine einzige; Fehler werden pro Benutzer gemeldet und die Eingaben bleiben erhalten.

                                Version 0.4.1 – 29.07.2026

                                Behoben

                                  Die Kontoerstellung schlägt nicht mehr fehl, wenn „E-Mails senden" deaktiviert ist: In dieser Kombination legt das Plugin das Konto selbst still an (aktiv, Zufallspasswort mit Reset-Pflicht, Standard-Benutzergruppe, ohne Mail) und verknüpft die Buchung damit. Der Gast erhält Zugang später über „Passwort vergessen".

                                  Version 0.4.0 – 29.07.2026

                                  Hinzugefügt

                                    Neue Option „Benutzerkonto bei Gastbuchung anlegen": Ja / Nein / Wie in DPCalendar konfiguriert (Standard). Nutzt die DPCalendar-eigene Kontoerstellung (CreateUser-Stage, Einstellung „Registrierung"); gilt nur bei Status „Aktiv" und E-Mail-Adressen ohne bestehendes Konto. Benutzername = E-Mail, Zufallspasswort mit Reset-Pflicht.

                                    Version 0.3.1 – 28.07.2026

                                    Hinzugefügt

                                      Ticketmengen-Felder berücksichtigen jetzt auch das DPCalendar-Limit „Tickets pro Buchung" (max_tickets) als Obergrenze. Kürzt die DPCalendar-Pipeline eine Ticketmenge still (Ticket-Limit pro Buchung/Person oder Restkapazität), wird das nach dem Speichern als deutliche Warnung gemeldet — bisher passierte die Kürzung ohne Hinweis.

                                      Behoben

                                        Anonyme Backend-Buchungen (ohne Benutzerkonto) reichen user_id jetzt als leeren Wert an die Pipeline durch (Gast-Semantik). Vorher zählten Tickets fremder anonymer Buchungen desselben Events fälschlich gegen das persönliche Ticket-Limit des neuen Buchers.

                                        Version 0.3.0 – 28.07.2026

                                        Hinzugefügt

                                          Filterleiste nach Vorbild der DPCalendar-Veranstaltungsübersicht erweitert: Zeitraum (Von/Bis) und Ort zusätzlich zu Suche und Kalender.

                                          Behoben

                                            Das Einzel-Benutzerfeld (Modal-Auswahl) wurde entfernt: Sein Dialog funktionierte auf com_ajax-Seiten nicht und ein hängender Modal-Zustand konnte das Scrollen der Seite blockieren. Die Zuordnung zu Benutzerkonten läuft vollständig über „Für Benutzer buchen" (auch für einen einzelnen Benutzer).

                                            Version 0.2.0 – 28.07.2026

                                            Hinzugefügt

                                              Filterleiste in der Veranstaltungsauswahl: Volltextsuche (Titel/Alias/Beschreibung, id:-Kurzform) und Kalender-Filter über die freigegebenen Kalender. Mehrfach-Benutzer-Buchung: Über den neuen Multi-Select „Für Benutzer buchen" entsteht pro ausgewähltem Benutzer eine eigene Buchung mit denselben Tickets/Optionen; Name und E-Mail kommen aus dem Benutzerprofil, Ergebnis wird pro Benutzer gemeldet.

                                              Geändert

                                                Kontaktfelder sind clientseitig nicht mehr als Pflicht markiert (Pflicht gilt serverseitig weiterhin, wenn keine Benutzer ausgewählt sind).

                                                Version 0.1.0 – 28.07.2026

                                                Hinzugefügt

                                                  Erstausgabe: Button „Neue Buchung" in der DPCalendar-Buchungsübersicht (Backend). Veranstaltungsauswahl mit Kalender-Beschränkung, Zeitraum-Filter, Kapazitätsanzeige und Serien-Erkennung. Buchungsformular aus dem DPCalendar-Modell inklusive Ticketarten, Buchungsoptionen und benutzerdefinierter Felder (kalendergefiltert). Speichern über die offizielle DPCalendar-Pipeline (BookingModel::save($data, true)) — Tickets, Preise, Status, Mails. Plugin-Optionen: erlaubte Kalender, Standard-Status, E-Mail-Versand ein/aus, Zeitraum in Tagen. Dreistufige serverseitige Absicherung (Liste → Formular → Speichern) plus CSRF-Prüfung.