Hallo,
ich habe an einer Integration der Leaflet Maps in Contao gearbeitet und heute die erste Alpha-Version veröffentlicht. Leaflet ist eine schlanke Open-Source Bibliothek für Open Street Map-Karten.
Was kann die Erweiterung?
Grundsätzlich verwaltet die Erweiterung Karten und Layer getrennt. Layer können Karten bzw. den Karten-Bedienelementen zugewiesen werden.
- Verwalten von mehreren Karten
- Verwaltung von Layern
- Überstützung aller Leaflet Bedienelemente, zusätzl. ein Loading-Control Element
- Gruppierung und damit Verschachtelung von Layer
- Verschiedene Tile-Layer mittels Leaflet-Providers
- Daten-Layern für Vektoren (Polylines, usw.) und Marker
- Verlinkung von Layern
- Pro Datenebene Steuerung ob Daten per AJAX geladen oder eingebettet werden sollen.
- Verwaltung von Marker-Icons und Vektor-Stilen
- Integration als Content Element und Frontend Modul
- Daten-Layer für MetaModels mit verschiedenen Render-Möglichkeiten
- Basierend auf GeoJSON Datenformat
Warum noch eine Karten-Erweiterung?
Ich bin mir bewusst, dass es einige Karten-Erweiterungen für Contao gibt. Da der Aufwand zur Adaptierung bestehenden Erweiterungen für Leaflet einen höheren Aufwand bedeutet hätten, um die Anforderungen einer schlanken, Javascript-Framework unabhängigen sowie für Maps-Anwendungen leicht erweiterbaren Erweiterung zu erfüllen, wurde eine neue Erweiterung ins Leben gerufen, die alle die Anforderungen erfüllt.
Was ist geplant?
Die Erweiterung befindet sich in einem Alpha-Status. Einige Features stehen noch aus. Eine unvollständige Liste gibt es hier: https://github.com/netzmacht/contao-...ls/enhancement
Die verschiedenen Komponenten
Die Erweiterung besteht aus mehreren Komponenten:
- netzmacht/contao-leaflet-libraries
Integration der Leaflet-Library sowie der verwendeten Plugins als eigentständige Erweiterung- netzmacht/contao-leaflet-maps
Backend- und Frontendintegration von Leaflet- netzmacht/php-leaflet
Zugrunde liegende PHP Abstraktion der Leaflet-API.- netzmacht/contao-leaflet-metamodels
Integration von MetaModels über ein Daten-Layer
Was kostet die Erweiterung?
Die Erweiterung wird als Open Source zur Verfügung gestellt. Allerdings mit einem dezenten Hinweis im Attribution-Control des Karte. Es ist angedacht, noch nicht entschieden, für eine kommerzielle Lizenz zur Entfernung des Copyright-Hinweises anzubieten. Wenn es dazu näheres gibt, folgen hier die Informationen. Ich hoffe auf diese Weise die kontinuierliche Weiterentwicklung sicherstellen zu können.
Wie kann man die Erweiterung installieren?
- Die wird nur über Composer angeboten. Da in naher Zukunft wohl Contao (4) komplett auf Composer baut, wird es definitiv auch keine Integration ins ER geben.
- Es wird PHP 5.4 vorausgesetzt.
- Contao 3.2 - 3.4 werden unterstützt. Wobei 3.4 noch nicht getestet ist, aus konzeptioneller Sicht aber nichts dagegen spricht.
Installieren kann man die Leaflet Integration in Contao über die oben angegeben Paketnamen und Composer.
Es fehlt noch eine deutsche Übersetzung (Unterstützung gern gewünscht, die Sprachdateien liegen auf Transifex).
Ich freue mich über Tester. Fehlerberichte bitte in den Issue Tracker, fragen ruhig in diesen Post.