AddOn


Geo- und Karten-Unterstützung für REDAXO 5.13+

Beschreibung

Geo- und Karten-Unterstützung für REDAXO 5.13+

Das Addon bündelt Funktionen für den Umgang mit Geo-Koordinaten: Tile-Proxy, Tile-Cache, Rechnen mit Koordinaten auf PHP-Ebene, Karten mit Leaflet anzeigen.

Die Konfiguration ist flexibel und update- bzw. reinstallations-sicher individualisierbar. Die Kartenanzeige mit LeafletJS kann mit eigenen JS-Schnipseln rasch und on the fly erweitert werden.


github.com/FriendsOfREDAXO/geolocation

Umsetzung

Friends Of REDAXO zum Profil

github.com/FriendsOfREDAXO

Versionen

2.0.0

Für REDAXO
^5.14.0
Veröffentlicht am
21.03.2023
Require / PHP
^8
Require / PHP Extensions
curl

2.0.0 Major Release

Bitte den Changelog beachten

21.03.2023 2.0.0

  • Bugfix:
    • Tastatursteuerung in der Baisiskarten-Auswahl der Kartensätze korrigiert. (#139)
    • Namespace-Fehler in Layer.php korrigiert (#140)

Beta3:

  • Neu
    • Per Config (z.B. im project AddOn) kann ein Socket-Proxy angegeben werden, falls erforderlich. Die config für den namespace geolocation lautet: 'socket_proxy' (#131) - Siehe (https://curl.se/libcurl/c/CURLOPT_PROXY.html).
  • Fixed
    • Probleme mit der Einbindung der Action-Buttons in YForm 4.1.0 wurden behoben (#130).

Beta2:

  • Neu:
    • In zukünftigen Versionen von YForm (post 4.0.4) werden Action-Buttons anders verwaltet. Geolocation ist so mgestellt,
      dass beide Varianten unterstützt werden. Das gilt bereits für die aktulle Github-Version Stand 07.03.2023. (#135)
  • Bugfix:
    • Fehler bei nicht initialisiertem Choice-Array, wenn keine Choices ausgewählt wurden, behoben (@dpf-dd Stefan Dannfald, #126)
    • Mapset: Listeformatierung der Spalte "Funktion" via SetColumnFormat() berücksichtigt ein vorher gesetztes CustomCallback (#134)

Beta1:

Diese Version enthält Breacking Changes!

  • Mindestversionen: REDAXO 5.14 und PHP 8
  • Umstellung des Namespace von Geolocation auf FriendsOfRedaxo\Geolocation (#113). Referenzen in eigenem Code auf Gelocation\xxx müssen angepasst werden.
  • Klassen umbenannt (Großbuchstabe am Anfang). Referenzen in eigenem Code auf die Klassennamen müssen angepasst werden.
    • Klasse Geolocation\cache umbenannt in Geolocation\Cache; Aufrufe und Doku angepasst. (#51)
    • Klasse Geolocation\cronjob umbenannt in Geolocation\Cronjob; Aufrufe und Doku angepasst. (#52)
    • Klasse Geolocation\tools umbenannt in Geolocation\Tools; Aufrufe und Doku angepasst. (#53)
    • Klasse Geolocation\config_form umbenannt in Geolocation\ConfigForm; Aufrufe und Doku angepasst. (#66)
    • Klasse Geolocation\layer umbenannt in Geolocation\Layer; Aufrufe, Dateinamen und Doku angepasst. (#86, #88)
    • Klasse Geolocation\mapset umbenannt in Geolocation\Mapset; Aufrufe, Dateinamen und Doku angepasst. (#87)
    • Dateinamen an die Schreibweise der Klassen angepasst: Box.php, Math.php, Point.php (#50) und Exception.php (#73)
  • Fehlerklassen neu strukturiert. **Referenzen in eigenem Code z.B. in Try-Catch müssen ggf. angepasst werden.***
    • diverse Fehlerklassen in eigene Dateien ausgelagert (#48)
    • Fehlerklasse GeolocationInstallException umbenannt in Geolocation\InstallException (#48)
    • Fehlermeldungen in class InvalidParameters gebündelt (#80, #81)
  • Datenbank-Tabellen sind geändert. Eigene Dataset-Dateien in data/addons/geolocationmüssen angepasst werden
    • Datentyp der Tabellenspalte rex_geolocation_layer.online von text in int geändert. Ggf. müssen eigene Datasets angepasst werden. (#77)
    • Feld "attribution" im Layer-Formular von varchar(191 in text geändert. (#105)
    • zusätzliche URL für HiRes-Karten/Retina-Karten-URLs ohne '@2x'-support. (#118)
  • RexStan-gesteuerte Überarbeitung aller PHP-Dateien, wodurch sich teilweise die Methoden_Aufrufe der Klassen geändert haben.
    (Level: 8, PHP: 8.0-8.2, Extensions: REDAXO Superglobals, Bleeding-Edge, Strict-Mode, Deprecation Warnings, phpstan-dba, dead code)
    und Code-Formatierung im REDAXO-Standard (#54…#62, #66, #68, #70…#72, #74…#76, #80…#82, #84, #85)
    Referenzen in eigenem Code auf die KMethoden müssen überprüft und ggf. angepasst werden.

Weitere Änderungen:

  • Vendor-Updates:
    • phpGeo 4.2.0 (#83)
    • Leaflet 1.9.3 (#99)
    • Leaflet.GestureHandling 1.2.2 (#98)
    • AssetPacker 1.3.2 (#108)
  • Neu:
    • Test der Layer-URLs interaktiv im Eingabeformular (#100)
    • Individuelles CSS (redaxo/data/geolocation/geolocation.css') kann auch in SCSS-Dateien stehen (Editor-freundlich) (#104). Daher die CSS-Assetsinstall/geolocation_be.cssundinstall/geolocation.cssin.scss` umbenannt. (#104)
    • Für Basiskarten im Kartensatz/Mapset kann die aktive Karte unabhängig von der Reihenfolge (bisher immer die erste) per Radio-Button aktiviert werden (#107)
    • Für Overlay-Karten im Kartensatz/Mapset können sofort sichtbare Overlays aktiviert werden (Checkbox); bisher waren die Karten immer initial ausgeblendet (#107, #115)
    • Karten-URLs nun auch mit @2x-Zusatz möglich (by @xong Robert Rupf) (#110)
    • Retina-Unterstützung: Parameter {r} als Platzhalter für @2x-Kartenanforderung; zusätzliche URL für HiRes-Karten/Retina-Karten-URLs ohne '@2x'-support. (#118)
    • install.phpvereinfacht; nutzt nun ausschließlich %table_prefix% beim Import (#106)
  • Bugfix:
    • Workaround in layer.php für ein Typecast-Problem aus 'class dataset' (#79)
    • Farbcodes (#123456) in Geolocation.svgIconPin(..) jetzt korrekt URI-escaped (#69⇒#94)
    • Feld "attribution" im Layer-Formular von varchar(191 in text geändert. Das Feld war zu klein. Beim Speichern gekapptes HTML kann zu Darstellungsproblemen führen.
    • Demo-Datensätze aktuaisiert (CyclOSM-Link tot und ausgetauscht), OSM nun als Mapset "1" default statt HERE. (#105)
  • Dokumentation (/docs) aktualisiert (#92, #93)

What's Changed

New Contributors

Full Changelog: https://github.com/FriendsOfREDAXO/geolocation/compare/1.0.2...2.0.0

2.0.0-beta4

Für REDAXO
^5.14.0
Veröffentlicht am
21.03.2023
Require / PHP
^8
Require / PHP Extensions
curl

Bugfix:

Tastatursteuerung in der Baisiskarten-Auswahl der Kartensätze korrigiert. (#139)
Namespace-Fehler in Layer.php korrigiert (#140)

2.0.0-beta3

Für REDAXO
^5.14.0
Veröffentlicht am
10.03.2023
Require / PHP
^8
Require / PHP Extensions
curl

ACHTUNG Major Release

10.03.2023 2.0.0-beta3

beta3:

  • Neu
    • Per Config (z.B. im project AddOn) kann ein Socket-Proxy angegeben werden, falls erforderlich. Die config für den namespace geolocation lautet: 'socket_proxy' (#131) - Siehe (https://curl.se/libcurl/c/CURLOPT_PROXY.html).
  • Fixed
    • Probleme mit der Einbindung der Action-Buttons in YForm 4.1.0 wurden behoben (#130).

Beta2:

  • Neu:
    • In zukünftigen Versionen von YForm (post 4.0.4) werden Action-Buttons anders verwaltet. Geolocation ist so mgestellt,
      dass beide Varianten unterstützt werden. Das gilt bereits für die aktulle Github-Version Stand 07.03.2023. (#135)
  • Bugfix:
    • Fehler bei nicht initialisiertem Choice-Array, wenn keine Choices ausgewählt wurden, behoben (@dpf-dd Stefan Dannfald, #126)
    • Mapset: Listeformatierung der Spalte "Funktion" via SetColumnFormat() berücksichtigt ein vorher gesetztes CustomCallback (#134)

Beta1:

Diese Version enthält Breacking Changes!

  • Mindestversionen: REDAXO 5.14 und PHP 8
  • Umstellung des Namespace von Geolocation auf FriendsOfRedaxo\Geolocation (#113). Referenzen in eigenem Code auf Gelocation\xxx müssen angepasst werden.
  • Klassen umbenannt (Großbuchstabe am Anfang). Referenzen in eigenem Code auf die Klassennamen müssen angepasst werden.
    • Klasse Geolocation\cache umbenannt in Geolocation\Cache; Aufrufe und Doku angepasst. (#51)
    • Klasse Geolocation\cronjob umbenannt in Geolocation\Cronjob; Aufrufe und Doku angepasst. (#52)
    • Klasse Geolocation\tools umbenannt in Geolocation\Tools; Aufrufe und Doku angepasst. (#53)
    • Klasse Geolocation\config_form umbenannt in Geolocation\ConfigForm; Aufrufe und Doku angepasst. (#66)
    • Klasse Geolocation\layer umbenannt in Geolocation\Layer; Aufrufe, Dateinamen und Doku angepasst. (#86, #88)
    • Klasse Geolocation\mapset umbenannt in Geolocation\Mapset; Aufrufe, Dateinamen und Doku angepasst. (#87)
    • Dateinamen an die Schreibweise der Klassen angepasst: Box.php, Math.php, Point.php (#50) und Exception.php (#73)
  • Fehlerklassen neu strukturiert. **Referenzen in eigenem Code z.B. in Try-Catch müssen ggf. angepasst werden.***
    • diverse Fehlerklassen in eigene Dateien ausgelagert (#48)
    • Fehlerklasse GeolocationInstallException umbenannt in Geolocation\InstallException (#48)
    • Fehlermeldungen in class InvalidParameters gebündelt (#80, #81)
  • Datenbank-Tabellen sind geändert. Eigene Dataset-Dateien in data/addons/geolocationmüssen angepasst werden
    • Datentyp der Tabellenspalte rex_geolocation_layer.online von text in int geändert. Ggf. müssen eigene Datasets angepasst werden. (#77)
    • Feld "attribution" im Layer-Formular von varchar(191 in text geändert. (#105)
    • zusätzliche URL für HiRes-Karten/Retina-Karten-URLs ohne '@2x'-support. (#118)
  • RexStan-gesteuerte Überarbeitung aller PHP-Dateien, wodurch sich teilweise die Methoden_Aufrufe der Klassen geändert haben.
    (Level: 8, PHP: 8.0-8.2, Extensions: REDAXO Superglobals, Bleeding-Edge, Strict-Mode, Deprecation Warnings, phpstan-dba, dead code)
    und Code-Formatierung im REDAXO-Standard (#54…#62, #66, #68, #70…#72, #74…#76, #80…#82, #84, #85)
    Referenzen in eigenem Code auf die KMethoden müssen überprüft und ggf. angepasst werden.

Weitere Änderungen:

  • Vendor-Updates:
    • phpGeo 4.2.0 (#83)
    • Leaflet 1.9.3 (#99)
    • Leaflet.GestureHandling 1.2.2 (#98)
    • AssetPacker 1.3.2 (#108)
  • Neu:
    • Test der Layer-URLs interaktiv im Eingabeformular (#100)
    • Individuelles CSS (redaxo/data/geolocation/geolocation.css') kann auch in SCSS-Dateien stehen (Editor-freundlich) (#104). Daher die CSS-Assetsinstall/geolocation_be.cssundinstall/geolocation.cssin.scss` umbenannt. (#104)
    • Für Basiskarten im Kartensatz/Mapset kann die aktive Karte unabhängig von der Reihenfolge (bisher immer die erste) per Radio-Button aktiviert werden (#107)
    • Für Overlay-Karten im Kartensatz/Mapset können sofort sichtbare Overlays aktiviert werden (Checkbox); bisher waren die Karten immer initial ausgeblendet (#107, #115)
    • Karten-URLs nun auch mit @2x-Zusatz möglich (by @xong Robert Rupf) (#110)
    • Retina-Unterstützung: Parameter {r} als Platzhalter für @2x-Kartenanforderung; zusätzliche URL für HiRes-Karten/Retina-Karten-URLs ohne '@2x'-support. (#118)
    • install.phpvereinfacht; nutzt nun ausschließlich %table_prefix% beim Import (#106)
  • Bugfix:
    • Workaround in layer.php für ein Typecast-Problem aus 'class dataset' (#79)
    • Farbcodes (#123456) in Geolocation.svgIconPin(..) jetzt korrekt URI-escaped (#69⇒#94)
    • Feld "attribution" im Layer-Formular von varchar(191 in text geändert. Das Feld war zu klein. Beim Speichern gekapptes HTML kann zu Darstellungsproblemen führen.
    • Demo-Datensätze aktuaisiert (CyclOSM-Link tot und ausgetauscht), OSM nun als Mapset "1" default statt HERE. (#105)
  • Dokumentation (/docs) aktualisiert (#92, #93)

What's Changed

New Contributors

Full Changelog: https://github.com/FriendsOfREDAXO/geolocation/compare/2.0.0-beta2...2.0.0-beta3

2.0.0-beta1

Für REDAXO
^5.14.0
Veröffentlicht am
23.01.2023
Require / PHP
^8
Require / PHP Extensions
curl

23.01.2023 2.0.0-beta1

Diese Version enthält Breacking Changes!

  • Mindestversionen: REDAXO 5.14 und PHP 8
  • Umstellung des Namespace von Geolocation auf FriendsOfRedaxo\Geolocation (#113). Referenzen in eigenem Code auf Gelocation\xxx müssen angepasst werden.
  • Klassen umbenannt (Großbuchstabe am Anfang). Referenzen in eigenem Code auf die Klassennamen müssen angepasst werden.
    • Klasse Geolocation\cache umbenannt in Geolocation\Cache; Aufrufe und Doku angepasst. (#51)
    • Klasse Geolocation\cronjob umbenannt in Geolocation\Cronjob; Aufrufe und Doku angepasst. (#52)
    • Klasse Geolocation\tools umbenannt in Geolocation\Tools; Aufrufe und Doku angepasst. (#53)
    • Klasse Geolocation\config_form umbenannt in Geolocation\ConfigForm; Aufrufe und Doku angepasst. (#66)
    • Klasse Geolocation\layer umbenannt in Geolocation\Layer; Aufrufe, Dateinamen und Doku angepasst. (#86, #88)
    • Klasse Geolocation\mapset umbenannt in Geolocation\Mapset; Aufrufe, Dateinamen und Doku angepasst. (#87)
    • Dateinamen an die Schreibweise der Klassen angepasst: Box.php, Math.php, Point.php (#50) und Exception.php (#73)
  • Fehlerklassen neu strukturiert. **Referenzen in eigenem Code z.B. in Try-Catch müssen ggf. angepasst werden.***
    • diverse Fehlerklassen in eigene Dateien ausgelagert (#48)
    • Fehlerklasse GeolocationInstallException umbenannt in Geolocation\InstallException (#48)
    • Fehlermeldungen in class InvalidParameters gebündelt (#80, #81)
  • Datenbank-Tabellen sind geändert. Eigene Dataset-Dateien in data/addons/geolocationmüssen angepasst werden
    • Datentyp der Tabellenspalte rex_geolocation_layer.online von text in int geändert. Ggf. müssen eigene Datasets angepasst werden. (#77)
    • Feld "attribution" im Layer-Formular von varchar(191 in text geändert. (#105)
    • zusätzliche URL für HiRes-Karten/Retina-Karten-URLs ohne '@2x'-support. (#118)
  • RexStan-gesteuerte Überarbeitung aller PHP-Dateien, wodurch sich teilweise die Methoden_Aufrufe der Klassen geändert haben.
    (Level: 8, PHP: 8.0-8.2, Extensions: REDAXO Superglobals, Bleeding-Edge, Strict-Mode, Deprecation Warnings, phpstan-dba, dead code)
    und Code-Formatierung im REDAXO-Standard (#54…#62, #66, #68, #70…#72, #74…#76, #80…#82, #84, #85)
    Referenzen in eigenem Code auf die KMethoden müssen überprüft und ggf. angepasst werden.

Weitere Änderungen:

  • Vendor-Updates:
    • phpGeo 4.2.0 (#83)
    • Leaflet 1.9.3 (#99)
    • Leaflet.GestureHandling 1.2.2 (#98)
    • AssetPacker 1.3.2 (#108)
  • Neu:
    • Test der Layer-URLs interaktiv im Eingabeformular (#100)
    • Individuelles CSS (redaxo/data/geolocation/geolocation.css') kann auch in SCSS-Dateien stehen (Editor-freundlich) (#104). Daher die CSS-Assetsinstall/geolocation_be.cssundinstall/geolocation.cssin.scss` umbenannt. (#104)
    • Für Basiskarten im Kartensatz/Mapset kann die aktive Karte unabhängig von der Reihenfolge (bisher immer die erste) per Radio-Button aktiviert werden (#107)
    • Für Overlay-Karten im Kartensatz/Mapset können sofort sichtbare Overlays aktiviert werden (Checkbox); bisher waren die Karten immer initial ausgeblendet (#107, #115)
    • Karten-URLs nun auch mit @2x-Zusatz möglich (by @xong Robert Rupf) (#110)
    • Retina-Unterstützung: Parameter {r} als Platzhalter für @2x-Kartenanforderung; zusätzliche URL für HiRes-Karten/Retina-Karten-URLs ohne '@2x'-support. (#118)
    • install.phpvereinfacht; nutzt nun ausschließlich %table_prefix% beim Import (#106)
  • Bugfix:
    • Workaround in layer.php für ein Typecast-Problem aus 'class dataset' (#79)
    • Farbcodes (#123456) in Geolocation.svgIconPin(..) jetzt korrekt URI-escaped (#69⇒#94)
    • Feld "attribution" im Layer-Formular von varchar(191 in text geändert. Das Feld war zu klein. Beim Speichern gekapptes HTML kann zu Darstellungsproblemen führen.
    • Demo-Datensätze aktuaisiert (CyclOSM-Link tot und ausgetauscht), OSM nun als Mapset "1" default statt HERE. (#105)
  • Dokumentation (/docs) aktualisiert (#92, #93)

1.0.2

Für REDAXO
^5.13.1
Veröffentlicht am
08.05.2022
Require / PHP
>=7.3, <9
Require / PHP Extensions
curl

Aus irgend einem Grunde finden sich in 1.0.1. nicht alle Änderungen. Ursache unbekannt. Release 1.0.2 soll das beheben, indem aus den korrekten 1.0.1-Github-Dateien ein neues Release erzeugt wird.

1.0.1

Für REDAXO
^5.13.1
Veröffentlicht am
19.04.2022
Require / PHP
>=7.3, <9
Require / PHP Extensions
curl

Behebt einen Bug in der Zuweisung und Initialisierung der Konstanten KEY_MAPSET und KEY_TILES während der Installation. Bugs können dazu führen, dass Tiles nicht richtig abgerufen werden können, da in der URL das falsche Schlüsselwort verwendet wird. In dem Fall hilft das Update und ggf. eine manuelle Re-Installation. Zur Überprüfung: in assets/addons/geolocation/geolocation.min.js sollte die Zeichenfolge var Geolocation={default:{keyMapset:'geomapset',keyLayer:'geolayer'zu finden sein.

1.0.0

Für REDAXO
^5.13.1
Veröffentlicht am
19.04.2022
Require / PHP
>=7.3, <9
Require / PHP Extensions
curl
 

1.0.0

Für REDAXO
^5.13.1
Veröffentlicht am
29.03.2022
Require / PHP
>=7.3, <9
Require / PHP Extensions
curl
  • Erstes Release (Yeeepee)
  • Alle weiteren Informationen in der Readme und Doku

1.0.0-beta2

Für REDAXO
^5.13.1
Veröffentlicht am
05.03.2022
Require / PHP
>=7.3, <9
Require / PHP Extensions
curl
  • Die Namen der Proxy-Aufrufe (geolayer, geomapset) sind im JS-Code abgelegt und werden JS-seitig in
    Abruf-URL eingebaut (vorher: in der Url-Definition mitgeliefert). Die URL-Definition im Mapset
    enthält nur noch die Karten-ID.
  • Die Addons Geolocation und yform_geo_osm vertrugen sich nicht. package.yml um conflicts-Eintrag
    ergänzt; ebenso in README.md und docs/install.md. Lösung: yform_geo_osm > 1.2.5 installieren.

1.0.0-beta1

Für REDAXO
^5.13.1
Veröffentlicht am
21.02.2022
Require / PHP
>=7.3, <9
Require / PHP Extensions
curl
  • Erste Betaversion. Bitte ausführlich testen.
  • Feedback auf GitHub ausdrücklich erwünscht.

Geolocation verträgt sich nicht mit dem Addon yform_geo_osm. Als Workaround kann in der 'boot.php' von yform_geo_osm der Aufruf der Leaflet-Assets auskommentiert werden.