Releases: FriendsOfREDAXO/googleplaces
Release list
3.0.3
3.0.2
Bugfixes, Sicherheitsverbesserungen & Code-Qualität
Zusammenfassung
Umfassende Überarbeitung des Google Places Add-ons mit 29 Bugfixes (4 kritisch, 14 mittel, 11 niedrig), Sicherheitsverbesserungen und neuen Features. Entfernt die Abhängigkeit zu yform_field und korrigiert zahlreiche Fehler in der API-Integration, Synchronisation und Backend-Darstellung.
Abhängigkeiten
yform_field-Abhängigkeit entfernt — Das Add-on benötigt nun nur nochyform >= 4.0.0, nicht mehryform_field >= 2.9.0choice_status→choicemigriert — Tableset verwendet nun Standard-YForm-Feldtypchoicestattchoice_statusaus yform_field- Migrations-Routine in
tableset.php— Löscht das altechoice_status-Feld vor dem Reimport, um Konflikte bei der Neuinstallation zu vermeiden
Kritische Bugfixes
rex_logger-Aufrufe korrigiert — Falsche statische Aufrufe durch korrekterex_logger::factory()->log()Syntax ersetztgetAvgRatingDb()repariert — Direkte SQL-Abfrage statt fehlerhafter YForm-Query für die Durchschnittsberechnung- Fehlende Übersetzungsschlüssel ergänzt — 30+ fehlende Keys in allen 6 Sprachdateien nachgetragen
- CSRF-Schutz für
query.php— Suchseite von GET auf POST mitrex_csrf_tokenumgestellt
Sicherheit
- XSS-Schutz im Fragment — Alle Ausgaben in
reviews.bs5.phpmitrex_escape()abgesichert - XSS-Schutz in Backend-Listen —
epYformDataList()in Place und Review escaped alle Ausgaben FindPlaceIdabgesichert —$published = false, eingeschränkte FieldMask, Variable korrekt benannt- Uninstall-Routine implementiert — Vollständige Bereinigung (YForm-Tabellen, DB, Cronjob, Daten, Config)
Bugfixes (Mittel)
install.phpOR→AND korrigiert — Bedingung für Config-Migration war logisch falschsyncAll()Fehlerbehandlung — Zählt nun Fehler korrekt statt bei 0 Placesfalsezurückzugeben- Review-Anzeige repariert —
findFilter()erhielt Google Place ID (String) statt numerischer DB-ID; Parameter-Typ auf?intgeändert - Fragment-Hardcoded-Strings — Deutsche Texte durch
rex_i18n::msg()ersetzt package.ymlitemclass→itemClass— REDAXO erwartet camelCaselist_sortorderASC→DESC — Place-Liste zeigt nun neueste Einträge zuerst
Bugfixes (Niedrig)
CURLOPT_TIMEOUThinzugefügt — 30 Sekunden Timeout für API-Anfragen- Doppelte Prio in Review-Tableset — Prio 11 war doppelt vergeben, auf 12-15 umnummeriert
Review::getPlaceId()Int-Cast — Gibt nun(int)statt String zurückgetApiResponseAsArray()Fallback — Gibt bei fehlerhaftem JSON[]stattnullzurück- Deprecated
curl_close()entfernt — Ab PHP 8.0 nicht mehr nötig - Implizit nullable Parameter —
string $x = null→?string $x = null(PHP 8.4 Deprecation)
Neue Features
- Status-Toggle in Review-Liste — Reviews können direkt in der YForm-Liste per Klick auf online/offline geschaltet werden
- Profilbild-Anzeige als Base64 Data-URI —
/data/-Verzeichnis ist nicht web-zugänglich; Profilbilder werden nun perrex_file::get()gelesen und als Base64-Data-URI ausgegeben - AGENTS.md — KI-Assistenten-Dokumentation für das Projekt hinzugefügt
Dokumentation
- README.md — Hinweis ergänzt, dass der API-Key sowohl "Places API" als auch "Places API (New)" aktiviert benötigt
3.0.1
Anpassungen für YForm 5
Full Changelog: 3.0.0...3.0.1
3.0.0
Offizielle Nachfolge für das Add-on danspringer\mf_googleplaces.
Achtung: Bei der Deinstallation von
mf_googleplaceswerden alle Tabellen gelöscht, deswegen sollte erst ein Backup angefertigt werden, dann dieses Add-on installiert werden und im Anschluss die Daten überprüft werden, bevormf_googleplacesdeinstalliert wird.
Nicht rückwärtskompatibel: Bei der Installation wird versucht,
mf_googleplaces-Daten zu migrieren. Es sind jedoch Anpassungen im Code sind erforderlich durch die Umstellung auf den FriendsOfREDAXO-Namespace und Änderungen an Klassen und Fragmenten einschl. Dateipfaden.
Neu in Version 3.0.0
- 💯 Verwalte beliebig viele Einträge für Google Places
- ⭐ Speichere Reviews für mehrere Einträge
- 🔄️ Manuelle Synchronisation aus dem Backend heraus
- 5️⃣ Bootstrap 5 Ausgabe-Beispiel für Templates und Module
- 🦖 Umstellung auf FriendsOfREDAXO-Namespace
- ✅ YOrm-basierte Klassen für Einträge und Rezensionen
- ➡️ YForm-Tableset für Google Places-Einträge und Rezensionen
- 🏪 Neue Backend-Ansicht für Einträge und Rezensionen
- 🚦 Status-Schalter für Rezensionen, um diese offline zu nehmen
- 💁🏻 Überarbeitete Dokumentation mit Beispielen zu den neuen Methoden
Welche Anpassungen sind beim Upgrade von danspringer\mf_googleplaces zu FriendsOfRedaxo\googleplaces erforderlich?
- Ausgabe überarbeiten: Die Fragmente in Bootstrap 3 / Bootstrap 4 werden nicht mehr mitgeliefert, Klassennamen und Methoden haben sich geändert.
- Das Addon
yform_fieldwird benötigt, um Rezensionen offline schalten zu können. - Google Places-Eintrag kontrollieren: Zukünftig ist der einzelne Google Places-Eintrag, der in den Einstellungen hinterlegt wurde, nun ein Datensatz
- Überprüfe den Cronjob-Einstellungen auf die gewünschte Funktionalität.
Dann bist du bestens gerüstet.
What's Changed
- Update credits.md by @danspringer in #5
- update branch from main by @alxndr-w in #6
- Docs vereinheitlicht by @alxndr-w in #8
- YForm Tablesets installieren by @alxndr-w in #9
- Mehrere Places abrufen können - neue Haupt-Version des Addons by @alxndr-w in #7
- YForm Backend-Seiten by @alxndr-w in #10
- Neue Doku-Struktur by @alxndr-w in #11
- YForm Model Class und Namespace by @alxndr-w in #12
- Datensatzerstellung in Cronjob und Co. auf YOrm-Dataset-Methoden umstellen by @alxndr-w in #13
- Place und Review-Klassen: Dokumentation by @alxndr-w in #14
- Manuelle Synchronisation aus dem Backend anstoßen können - "Jetzt aktualisieren" by @alxndr-w in #15
time-Feld entfernen - wurde durch publishdate ersetzt by @alxndr-w in #22- Backend-Sprachen hinzufügen by @alxndr-w in #20
- Google Places ID Eintragssuche direkt aus dem Backend heraus by @alxndr-w in #24
- Warnungstext ausgeben by @alxndr-w in #28
- choice_status-Feld hinzufügen by @alxndr-w in #27
- strftime -> intlDateTime by @alxndr-w in #32
- Überarbeitung des Bootstrap-Fragments by @alxndr-w in #33
- [ImgBot] Optimize images by @imgbot in #34
New Contributors
- @danspringer made their first contribution in #5
- @alxndr-w made their first contribution in #6
- @imgbot made their first contribution in #34
Full Changelog: 2.3.1...3.0.0
3.0.0-RC1
Release-Candidate: Offizielle Nachfolge für das Add-on
danspringer\mf_googleplaces. Diese Version kann bereits zu Testzwecken eingesetzt werden, Bugs und Probleme bitte an https://github.com/FriendsOfREDAXO/googleplaces/issues melden.
Achtung: Bei der Deinstallation von
mf_googleplaceswerden alle Tabellen gelöscht, deswegen sollte erst ein Backup angefertigt werden, dann dieses Add-on installiert werden und im Anschluss die Daten überprüft werden, bevormf_googleplacesdeinstalliert wird.
Nicht rückwärtskompatibel: Bei der Installation wird versucht,
mf_googleplaces-Daten zu migrieren. Es sind jedoch Anpassungen im Code sind erforderlich durch die Umstellung auf den FriendsOfREDAXO-Namespace und Änderungen an Klassen und Fragmenten einschl. Dateipfaden.
Neu in Version 3.0.0
- 💯 Verwalte beliebig viele Einträge für Google Places
- ⭐ Speichere Reviews für mehrere Einträge
- 🔄️ Manuelle Synchronisation aus dem Backend heraus
- 5️⃣ Bootstrap 5 Ausgabe-Beispiel für Templates und Module
- 🦖 Umstellung auf FriendsOfREDAXO-Namespace
- ✅ YOrm-basierte Klassen für Einträge und Rezensionen
- ➡️ YForm-Tableset für Google Places-Einträge und Rezensionen
- 🏪 Neue Backend-Ansicht für Einträge und Rezensionen
- 🚦 Status-Schalter für Rezensionen, um diese offline zu nehmen
- 💁🏻 Überarbeitete Dokumentation mit Beispielen zu den neuen Methoden
Welche Anpassungen sind beim Upgrade von danspringer\mf_googleplaces zu FriendsOfRedaxo\googleplaces erforderlich?
- Ausgabe überarbeiten: Die Fragmente in Bootstrap 3 / Bootstrap 4 werden nicht mehr mitgeliefert, Klassennamen und Methoden haben sich geändert.
- Das Addon
yform_fieldwird benötigt, um Rezensionen offline schalten zu können. - Google Places-Eintrag kontrollieren: Zukünftig ist der einzelne Google Places-Eintrag, der in den Einstellungen hinterlegt wurde, nun ein Datensatz
- Überprüfe den Cronjob-Einstellungen auf die gewünschte Funktionalität.
Dann bist du bestens gerüstet.
What's Changed
- Update credits.md by @danspringer in #5
- update branch from main by @alxndr-w in #6
- Docs vereinheitlicht by @alxndr-w in #8
- YForm Tablesets installieren by @alxndr-w in #9
- Mehrere Places abrufen können - neue Haupt-Version des Addons by @alxndr-w in #7
- YForm Backend-Seiten by @alxndr-w in #10
- Neue Doku-Struktur by @alxndr-w in #11
- YForm Model Class und Namespace by @alxndr-w in #12
- Datensatzerstellung in Cronjob und Co. auf YOrm-Dataset-Methoden umstellen by @alxndr-w in #13
- Place und Review-Klassen: Dokumentation by @alxndr-w in #14
- Manuelle Synchronisation aus dem Backend anstoßen können - "Jetzt aktualisieren" by @alxndr-w in #15
time-Feld entfernen - wurde durch publishdate ersetzt by @alxndr-w in #22- Backend-Sprachen hinzufügen by @alxndr-w in #20
- Google Places ID Eintragssuche direkt aus dem Backend heraus by @alxndr-w in #24
- Warnungstext ausgeben by @alxndr-w in #28
- choice_status-Feld hinzufügen by @alxndr-w in #27
- strftime -> intlDateTime by @alxndr-w in #32
- Überarbeitung des Bootstrap-Fragments by @alxndr-w in #33
- [ImgBot] Optimize images by @imgbot in #34
New Contributors
- @danspringer made their first contribution in #5
- @alxndr-w made their first contribution in #6
- @imgbot made their first contribution in #34
Full Changelog: 2.3.1...3.0.0-RC1
3.0.0-dev-2025-02-09
Vorschau-Version für Entwickler*innen: Offizielle Nachfolge für das Add-on
danspringer\mf_googleplaces. Diedev-Version ist noch nicht für den produktiven Einsatz gedacht.
Achtung: Bei der Deinstallation von
mf_googleplaceswerden alle Tabellen gelöscht, deswegen sollte erst ein Backup angefertigt werden, dann dieses Add-on installiert werden und im Anschluss die Daten überprüft werden, bevormf_googleplacesdeinstalliert wird.
Nicht rückwärtskompatibel: Bei der Installation wird versucht,
mf_googleplaces-Daten zu migrieren. Es sind jedoch Anpassungen im Code sind erforderlich durch die Umstellung auf den FriendsOfREDAXO-Namespace und Änderungen an Klassen und Fragmenten einschl. Dateipfaden.
Neu in Version 3.0.0-dev-2025-02-08
- 💯 Verwalte beliebig viele Places
- ⭐ Speichere Reviews für mehrere Places
- 🔄️ Manuelle Synchronisation aus dem Backend heraus
- 5️⃣ Bootstrap 5 Modul-Beispiel
- 🦖 Umstellung auf FriendsOfREDAXO-Namespace
- ✅ YOrm-basierte Klassen für Places und Reviews
- ➡️ YForm-Tableset für Places und Reviews
- 🏪 Neue Backend-Ansicht für Places
- 🚦 Status-Schalter für Rezensionen, um diese offline zu nehmen
- 💁🏻 Überarbeitete Dokumentation mit Beispielen zu den neuen Methoden
Welche Anpassungen sind beim Upgrade von danspringer\mf_googleplaces zu FriendsOfRedaxo\googleplaces erforderlich?
- Ausgabe überarbeiten: Die Fragmente in Bootstrap 3 / Bootstrap 4 werden nicht mehr mitgeliefert, Klassennamen und Methoden haben sich geändert.
- Das Addon
yform_fieldwird benötigt, um Rezensionen offline schalten zu können. - Google Places-Eintrag kontrollieren: Zukünftig ist der einzelne Google Places-Eintrag, der in den Einstellungen hinterlegt wurde, nun ein Datensatz
What's Changed
- Update credits.md by @danspringer in #5
- update branch from main by @alxndr-w in #6
- Docs vereinheitlicht by @alxndr-w in #8
- YForm Tablesets installieren by @alxndr-w in #9
- Mehrere Places abrufen können - neue Haupt-Version des Addons by @alxndr-w in #7
- YForm Backend-Seiten by @alxndr-w in #10
- Neue Doku-Struktur by @alxndr-w in #11
- YForm Model Class und Namespace by @alxndr-w in #12
- Datensatzerstellung in Cronjob und Co. auf YOrm-Dataset-Methoden umstellen by @alxndr-w in #13
- Place und Review-Klassen: Dokumentation by @alxndr-w in #14
- Manuelle Synchronisation aus dem Backend anstoßen können - "Jetzt aktualisieren" by @alxndr-w in #15
time-Feld entfernen - wurde durch publishdate ersetzt by @alxndr-w in #22- Backend-Sprachen hinzufügen by @alxndr-w in #20
- Google Places ID Eintragssuche direkt aus dem Backend heraus by @alxndr-w in #24
- Warnungstext ausgeben by @alxndr-w in #28
- choice_status-Feld hinzufügen by @alxndr-w in #27
- strftime -> intlDateTime by @alxndr-w in #32
- Überarbeitung des Bootstrap-Fragments by @alxndr-w in #33
- [ImgBot] Optimize images by @imgbot in #34
New Contributors
- @danspringer made their first contribution in #5
- @alxndr-w made their first contribution in #6
- @imgbot made their first contribution in #34
Full Changelog: 2.3.1...3.0.0-dev-2025-02-09
3.0.0-dev-2025-02-08
Vorschau-Version für Entwickler*innen: Offizielle Nachfolge für das Add-on
danspringer\mf_googleplaces. Diedev-Version ist noch nicht für den produktiven Einsatz gedacht.
Achtung: Bei der Deinstallation von
mf_googleplaceswerden alle Tabellen gelöscht, deswegen sollte erst ein Backup angefertigt werden, dann dieses Add-on installiert werden und im Anschluss die Daten überprüft werden, bevormf_googleplacesdeinstalliert wird.
Nicht rückwärtskompatibel: Bei der Installation wird versucht,
mf_googleplaces-Daten zu migrieren. Es sind jedoch Anpassungen im Code sind erforderlich durch die Umstellung auf den FriendsOfREDAXO-Namespace und Änderungen an Klassen und Fragmenten einschl. Dateipfaden.
Neu in Version 3.0.0-dev-2025-02-08
- 💯 Verwalte beliebig viele Places
- ⭐ Speichere Reviews für mehrere Places
- 🔄️ Manuelle Synchronisation aus dem Backend heraus
- 5️⃣ Bootstrap 5 Modul-Beispiel
- 🦖 Umstellung auf FriendsOfREDAXO-Namespace
- ✅ YOrm-basierte Klassen für Places und Reviews
- ➡️ YForm-Tableset für Places und Reviews
- 🏪 Neue Backend-Ansicht für Places
- 💁🏻 Überarbeitete Dokumentation mit Beispielen zu den neuen Methoden
What's Changed
- Update credits.md by @danspringer in #5
- update branch from main by @alxndr-w in #6
- Docs vereinheitlicht by @alxndr-w in #8
- YForm Tablesets installieren by @alxndr-w in #9
- Mehrere Places abrufen können - neue Haupt-Version des Addons by @alxndr-w in #7
- YForm Backend-Seiten by @alxndr-w in #10
- Neue Doku-Struktur by @alxndr-w in #11
- YForm Model Class und Namespace by @alxndr-w in #12
- Datensatzerstellung in Cronjob und Co. auf YOrm-Dataset-Methoden umstellen by @alxndr-w in #13
- Place und Review-Klassen: Dokumentation by @alxndr-w in #14
- Manuelle Synchronisation aus dem Backend anstoßen können - "Jetzt aktualisieren" by @alxndr-w in #15
New Contributors
- @danspringer made their first contribution in #5
- @alxndr-w made their first contribution in #6
Full Changelog: 2.3.1...3.0.0-dev-2025-02-08
3.0.0-dev-2025-02-07
Vorschau-Version für Entwickler: Noch nicht für den produktiven Einsatz gedacht. Offizieller Nachfolge für das Add-on
danspringer\mf_googleplaces.
Neu in Version 3.X
- 💯 Verwalte beliebig viele Places
- ⭐ Speichere Reviews für mehrere Places
- 🔄️ Manuelle Synchronisation aus dem Backend heraus
- 5️⃣ Bootstrap 5 Modul-Beispiel
- 🦖 Umstellung auf FriendsOfREDAXO-Namespace
- ✅ YOrm-basierte Klassen für Places und Reviews
- ➡️ YForm-Tableset für Places und Reviews
- 🏪 Neue Backend-Ansicht für Places
- 💁🏻 Überarbeitete Dokumentation mit Beispielen zu den neuen Methoden
What's Changed
- Update credits.md by @danspringer in #5
- update branch from main by @alxndr-w in #6
- Docs vereinheitlicht by @alxndr-w in #8
- YForm Tablesets installieren by @alxndr-w in #9
- Mehrere Places abrufen können - neue Haupt-Version des Addons by @alxndr-w in #7
- YForm Backend-Seiten by @alxndr-w in #10
- Neue Doku-Struktur by @alxndr-w in #11
- YForm Model Class und Namespace by @alxndr-w in #12
- Datensatzerstellung in Cronjob und Co. auf YOrm-Dataset-Methoden umstellen by @alxndr-w in #13
- Place und Review-Klassen: Dokumentation by @alxndr-w in #14
- Manuelle Synchronisation aus dem Backend anstoßen können - "Jetzt aktualisieren" by @alxndr-w in #15
New Contributors
- @danspringer made their first contribution in #5
- @alxndr-w made their first contribution in #6
Full Changelog: 2.3.1...3.0.0-dev-2025-02-07
2.3.1
- Hotfix: Dev-Dump entfernt
- Vendor-Credits entfernt
2.3
=== 30.05.2023===
- Vendoren entfernt
- Neue Funktion zum lokalen Abruf von Place-Details: gplace::getPlaceDetails() holt Place-Infos aus der eigenen DB, die zuvor via Cronjob über die Google-API geholt wurden. Zuvor konnte man Detail-Infos zum Place nur direkt (kostenpflichtig) über die Google-API abrufen.
- User-Bilder der einzelnen Reviews werden jetzt auch als base64 gespeichert (nicht rückwirkend für bereits in der DB existente Reviews). In den Fragments googleplaces_reviews.bs4.php und googleplaces_reviews.bs3.php findet sich ein Beispiel zur Verwendung.