con4gis 7 kommt mit neuer Kartentechnik

von Matthias Eilers

Contao 4.9 LTS + OpenLayers 6.2 = con4gis 7.0

Heute haben wir con4gis 7 nach einer sechs monatigen Entwicklungszeit veröffentlicht. Wir haben Altlasten über Bord geworfen, viele neue Funktionen implementiert, die Benutzerfreundlichkeit verbessert und grundlegende Technik aktualisiert. con4gis 7 ist ein Meilenstein in der Geschichte des GIS-Baukastens.

Das Hauptaugenmerk lag, neben den Kernfunktionen, dabei auf den Kartenanwendungen. Insbesondere der Maps-, der Routing- und der neue Data Baustein wurden zusätzlich zum Core massiv weiterentwickelt. Alle anderen Bausteine haben wir zumindest an die neue Technik angepasst.

Bevor wir mit Maps beginnen, möchten wir Euch noch kurz die beiden neuen Versionen, der für con4gis wichtigsten OpenSource Projekte erwähnen: Contao 4.9 und OpenLayers 6.2. Beide sind frisch und wie geplant im Februar veröffentlicht worden. Großer DANK gilt den vielen beteiligten Entwicklern für die stabilen und gelungenen Releases!

Contao 4.9

Das neue con4gis ist bereits Contao 4.9 LTS erprobt. Contao ist beeindruckend stabil und im Funktionsumfang bedeutend verbessert worden. Auch ältere con4gis Versionen laufen problemlos. Für Eure Geoinformationssysteme gibt es dank Contao, neben der Sicherheit und Stabilität, weitere tolle neue Funktionen:
  • Die 2-Faktor-Authentifizierung ist stark verbessert worden. Insbesondere für sensible Karteninformationen ist das ein riesen Gewinn.
  • Über die Contao Benutzerrechte können jetzt auch Inhaltselemente geschaltet werden. D.h. Ihr könnt die Benutzerführung für Eure Artikel-pflegenden Redakteure noch besser gestalten.
  • Die Formulare wurden hinsichtlich Rechtesteuerung und Feldmöglichkeiten überarbeitet. Bspw. gibt es jetzt auch einen Range-Slider.
  • Datenbank-Updates sind jetzt über die Kommandozeile möglich, was insbesondere den Entwicklern und Server-Admins sehr viel Zeit sparen kann.
  • Über das neue Cron Job Framework können zusätzlich zu den Poor Man's Cron auch echte Cron Jobs angebunden werden.
  • Nicht nur für Multidomain Anwendungen können jetzt im Startpunkt der Website neue Vorgaben gemacht werden. Bspw. könnt Ihr individuelle robots.txt Einträge schreiben und für jede Domain ein eigenes favicon verknüpfen.
  • Mehr Informationen zur Version findet Ihr hier: https://contao.org/de/news/contao_4-9-0.html

OpenLayers 6.2

Die JavaScript-Bibliothek begleitet uns seit fast zehn Jahren und wird stetig weiterentwickelt. con4gis/maps profitiert davon. Grundlegende Änderungen in der Bibliothek bedeuten auch immer grundlegende Änderungen in con4gis. So war es auch diesmal. con4gis ist wieder auf Stand der Technik. Doch was bedeutet das für Eure Anwendungen?
 
In OpenLayers 6 wurde intensiv aufgeräumt, was für uns zum Teil gravierende technische Änderungen bedeutete. Der Funktionsumfang hat sich dadurch nicht großartig verändert, wohl aber der Umgang mit der Kartenstruktur. Wir wurden gezwungen einzelne Kartenfeature in möglichst wenig Kartenschichten (Layer) zusammenzuführen. Was nach außen hin, außer beim "Clustering", erst einmal keinen sichtbaren Mehrwert hat. Für die Technik jedoch ein wertvoller Schritt war. OpenLayers 6 hat hinsichtlich Vektorkarten Sprünge gemacht. Ein Highlight ist auch das stufenlose Zoomen mit der Maus, was prinzipiell für bessere Kartenausschnitte sorgt.
 
Wenn Ihr mehr wissen wollt, lohnt es sich hier zu schauen: https://github.com/openlayers/openlayers/releases
 

con4gis Kartentechnik

Bzgl. der Kartentechnik haben wir einen, aus unserer Sicht, großartigen Status Quo geschaffen. Auch wir haben unter der Haube viel verändert, um die vielen zukünftigen Anforderungen bestmöglich abbilden zu können.
 
Insbesondere für die Kommunikation zwischen Client und Server haben wir erfolgreich die React-Bibliothek integriert und darüber eigene Karten-Komponenten entwickelt. Im Zusammenspiel mit node.js haben wir damit hoffentlich einen guten Weg eingeschlagen, auf dem wir in nächster Zeit zukunftssicher schreiten können.
 
Doch was bedeutet das für die con4gis-Anwender. Im Folgenden stellen wir Euch einige der neuen Feature vor:

Karteneinstellungen nur noch in der Kartenstruktur

Wir haben uns dazu entschlossen, dass die initiale Basiskarte, die Zoomstufe und die Kartengröße nicht mehr im Inhaltselement bzw. Kartenmodul überschrieben werden darf. Die vielfältigen Möglichkeiten haben immer wieder für Verwirrung gesorgt. Die Funktion war einst für Projekte entstanden in denen ein- und dieselbe Karte an mehreren Stellen der Website in unterschiedlicher Art und Größe dargestellt werden sollte. Da dieser Fall selten ist und sich die Einbindung über die Kartenstruktur relativ einfach anders lösen lässt, wird diese Änderung für die meisten Nutzer ein Plus in Sachen Bedienbarkeit bedeuten.

So sieht das Karteninhaltselement jetzt aus:
Karteninhaltselement in con4gis 7

Überarbeitete Kartenstruktur

Bis zur 6.3 war die Zuordnung der Kartenprofile in der Kartenstruktur an jedem Element möglich. Was nur in Ausnahmefällen auch mit einer wirklichen Funktionalität verbunden war. Jetzt kann die Zuordnung der Profile nur noch an der Karte selbst gemacht werden. Die Karten sind ein eigener Elementtyp und werden entsprechend dargestellt. Dadurch enthält die Karte selbst auch kein "erstes" Element mehr. In den Anfängen der Kartentechnik wurde die eine Lokation direkt an der Karte gesetzt. Die Möglichkeit hatten wir über Jahre beibehalten und jetzt verworfen. Alle anderen Strukturelemente müssen separat angelegt und in die Karte gehangen werden. So nutzen wir es, aufgrund der im Contao Backend sichtbaren Struktur, seit Jahren. Ein weiteres Highlight, in der Baumstruktur, sind die neuen SVG Icons, die die vielen verschiedenen Kartenelement-Typen auf den ersten Blick unterscheidbar machen. Außerdem wird das Kartenprofil jetzt ebenfalls in der Struktur dargestellt.
 
Hier ein Ausschnitt aus der Strukturmaske:
Kartenstruktur in con4gis 7

Und hier die neue Sicht auf die Elementtypen:
Kartenelementauswahl in con4gis 7

Stark vereinfachtes Kartenprofil

Das Kartenprofil haben wir ordentlich ausgedünnt. Einige Funktionen, die selten bis nie verwendet wurden, haben wir kurzer Hand ausgebaut. Das Profil für den Backend-Editor wird jetzt in den globalen Einstellungen gesetzt. Das Beste ist, dass die linke Buttonleiste in der Karte (die Portside) jetzt über eine Multicheckbox bestückt und sortiert werden kann. Außerdem gehen die zugehörigen Formulare jetzt immer auf der Starboard-Seite (rechts) auf. Ein beliebiges Fenster kann über die Auswahlbox unter der Multicheckbox initial beim Laden der Karte geöffnet werden.
 
Sortierbare Bedienelemente in con4gis 7

Im Profil ist noch mehr passiert:

  • Die Zoom-Button können jetzt einzeln auf die Karte gebracht und positioniert werden.
  • Starboard und Basiskarten sind ebenfalls zwei von einander unabhängige Komponenten.
  • Es gibt ein neues Popup-Handling das die Inhalte ebenfalls am rechten Kartenrand darstellt.
  • Lokationsstile können über das Profil im Frontend der Kartenstruktur (Starboard) dargestellt werden. So kann es einen einfachen visuellen Bezug zu den Elementen in der Karte geben.
  • Formular-Panel, wie die Suche, der Router oder die Permalinks können jetzt auch außerhalb der Karte angezeigt werden. Auch dafür gibt es eine Multicheckbox und ein Frontend-Modul, das die zugehörigen Klassen setzt.
  • Im Profil brauchen keine Lokationsstile mehr ausgewählt werden. Alle Lokationsstile stehen an den entsprechenden Stellen zur Verfügung.
  • Die Attributionen (Copyright-Hinweise) sind so voreingestellt, dass sie immer angezeigt werden. Vorherige Varianten sind aber immer noch möglich.
  • Außerhalb der Karte kann jetzt eine eigene Filterkomponente angebunden werden (Kartenfilter). Darüber lassen sich die sichtbaren Lokationen freidefiniert filtern.

Umbau im Kartenlayout

Auch das Kartenlayout haben wir vereinfacht. Wir haben die Möglichkeit eigene Layout-Dateien (z.B. für die Icons) anzubinden verworfen. Die Wenigsten haben dieses Feature verwendet. Dafür gibt es aber ein paar schöne Verbesserungen. Schon in der Layout-Übersicht kann man jetzt die einstellbaren Farben erkennen:

Kartenlayouts in con4gis 7

In der Detailansicht sind ein paar Felder hinzugekommen:

  • das Popup lässt sich jetzt separat stylen.
  • die Größe der Button ist veränderbar.
  • die maximale Popup-Breite ist anpassbar (neues Popup Handling).

Layoutparameter in con4gis 7

Wir haben das Karten CSS komplett und sehr intensiv überarbeitet. Selbstverständlich könnt Ihr alle Parameter auch direkt überschreiben. Aus unserer Sicht ist es das beste Kartenbild in der Geschichte des GIS-Baukastens.

Änderungen in den Basiskarten

Auch die Basiskarten haben wir überarbeitet. Eine schöne neue Möglichkeit ist das Hinzufügen von Vorschaubildern in den "Kartenwechsler" (Baselayer-Switcher). Aus rechtlichen Gründen können wir leider keine Bilder mitliefern. Die Einstellungen sind aber schnell gemacht. Im Ergebnis sieht das dann so aus:
 
Basiskartenbilder in con4gis 7

 

con4gis Dashboard

Das con4gis Dashboard ist entstanden, weil die vielen verschiedenen con4gis Backend Module die con4gis Navigation immer unübersichtlicher gemacht hatten. Mit dem Dashboard ist initial jetzt nur noch ein Backend Modul sichtbar: das Dashboard selbst. Im Dashboard werden die installierten und wenn gewünscht auch alle anderen Bausteine dargestellt. Bei den installierten Bundles kann man über ein Stern-Button Favoriten setzen. Wird ein Baustein favorisiert, erscheinen die zugehörigen Module sofort in der Contao Navigation. Standardmäßig mit dem Namen des Bausteins davor. Wer das nicht möchte, kann dies über die Einstellungen im Dashboard wegschalten.

Das Dashboard kann noch sehr viel mehr:

  • es zeigt euch die installierten und die neuesten Versionen (über Packagist) an.
  • es bietet Links zur Doku, zu GitHub und zum Packagist.
  • es stellt ein con4gis eigenes Log dar.
  • einige Bausteine bringen Demodaten mit (z.B. Maps), die Ihr über das Dashboard in Eure Umgebung bringen könnt.

Link: Dokumentation Dashboard

 

con4gis Data

Wir hatten für con4gis 7 das MapContent Bundle angekündigt. Dieses entwickeln wir schon eine ganze Weile. Das Bundle löst den con4gis Poimanager ab. Da das Bundle nicht nur für Kartendaten, sondern auch für Listendarstellungen sehr wertvoll ist, haben wir uns dazu entschlossen es in Data Bundle umzubenennen.

con4gis/data wird schon seit vielen Monaten live in unseren Projekten eingesetzt. Über das Bundle könnt Ihr eigene Datentabellen mit vordefinierten und benutzerdefinierten Feldern aufbauen. So lassen sich über das Contao Backend in kürzester Zeit pflegbare Datenkataloge erstellen. Bspw. für Adresslisten, Urlaubsziele, Jobangebote oder WAS AUCH IMMER. Schon jetzt ist verdammt viel möglich.

Die Daten könnt Ihr dann über ein Frontend-Modul, als Liste(n) in Eure Website bringen und/oder als Kartenstrukturelemente in Eure Karten. Über die neue Filterkomponente könnt Ihr Eure Daten auch filterbar anbieten.

Auch con4gis Data wird schnell wachsen. Wir werden Euch über die Möglichkeiten auf dem Laufenden halten.

Link: con4gis/data

 

Mehr unter docs.con4gis.org

Wir wollen diesen Artikel nicht zu sehr aufblähen: es ist noch sehr viel mehr passiert. Schaut`s es Euch an. Probiert es aus. Beachtet dabei bitte auch die folgenden Links:

Wir wünschen Euch viel Erfolg mit con4gis 7 und freuen uns auf Euer Feedback.

Zurück