con4gis 8 - die neue Version
von Matthias Eilers
Viele Optimierungen unter der Haube.
Vorweg: ein Update von con4gis 7 auf 8 ist problemlos möglich. Wir haben uns für das Major-Release entschieden, weil unter der Haube technisch sehr viel verändert wurde. In der Summe kann man die Änderungen wie folgt zusammenfassen:
- Lazy Loading der React Komponenten.
- Routing ist wieder in con4gis/maps enthalten.
- Der Backend-Editor ist wieder in con4gis/maps enthalten.
- Scripte aufgeräumt und komprimiert.
- Wechsel vom CKEditor zum Trix Editor
- Sonstiges
Lazy Loading der React Komponenten
Wir hatten uns vor einigen Jahren dazu entschlossen den Router und den Editor aus Maps herauszunehmen, um das Maps Bundle möglichst schlank zu halten. Es hat aber dafür gesorgt, dass das Routing in der Karte nur noch von wenigen genutzt wurde. Mit dem jetzigen Lazy Loading der JavaScript-Komponenten ist das Maps Bundle so schlank wie die geladenen Komponenten. D.h. wenn der Router nicht aktiviert wird, wird er auch nicht geladen.
Routing ist wieder in con4gis/maps enthalten
Wir haben das Routing zwar zurück ins Maps Bundle gebracht, die Tabellennamen aber bestehen lassen, sodass bestehende Konfigurationen weiterhin greifen. In dem Zuge sind auch noch einige Korrekturen gemacht worden.
Der Backend-Editor ist wieder in con4gis/maps enthalten
Auch der Backend-Editor ist zurück in Maps. Allerdings mit veränderter Konfiguration. Aufgrund der Tatsache, dass der Editor nur sehr selten genutzt wurde. Bzw. aufgrund der komplexen Möglichkeiten auch wenig Zuspruch gefunden hatte, haben wir uns dazu entschlossen, die Konfiguration zu vereinfachen. Die gesamte Konfiguration ist jetzt in einer Backend-Maske möglich und der Editor kann wie gewohnt in der Kartenstruktur (GeoJson) genutzt werden.
Scripte aufgeräumt und komprimiert
In erster Linie haben wir das JavaScript und CSS aufgeräumt. Neben den Webpack-Komprimierungen, nutzen wir für einfache Strukturen jetzt auch den Gulp Taskrunner. Zahlreiche Altlasten sind rausgeflogen. Viele Scripte sind vom Core ins Projects Bundle gewandert, sodass auch der Core bereits um einiges verschlankt wurde. Dieser Prozess wird nach und nach fortgeführt. Schon jetzt hat sich aber in Sachen Ladezeiten in allen Bundles etwas positiv getan.
Wechsel vom CKEditor zum Trix Editor
Wir nutzen seit einigen Jahren wieder einen HTML-Editor, nachdem der Wechsel zu bbCode nicht den gewünschten Anklang gefunden hatte. Bspw. in Projects-Modulen oder im Forum. Wir hatten uns für den CKEditor entschieden. Mehrere Gründe, wie die Installierbarkeit oder das Lizenzmodell, haben uns jetzt dazu bewogen zu wechseln. Der Trix Editor, made by Basecamp, war aus unserer Sicht die richtige Wahl. Der Einbau ist einfach und der Editor bietet all das, was wir brauchen. Mit dem Einbau haben wir auch den Dateiupload überarbeitet, der insbesondere im Forum immer wieder für Probleme gesorgt hatte.
Anbindung Consent-Tool
Wir arbeiten schon sehr lange an der Consent-Tool-Anbindung; die eigentlich Teil des con4gis 8 Releases sein sollte. Leider kam es immer wieder aufgrund der Komplexität zu Problemen. Wir haben uns jetzt für eine weniger komplexe, aber flexible Herangehensweise entschieden. Die Technik wird nächste Woche freigeschaltet. Es lassen sich dann an zahlreichen Stellen Schlüssel im Contao Backend setzen, die mit Tools wie Klaro oder der Contao-Consent-Bridge genutzt werden können. Hinzu kommt ein einfacher, alternativer Cookie Mechanismus um die Karte über ein Overlay erst nach Bestätigung nutzbar zu machen, sodass wir auch diesem Thema endlich vollumfänglich gerecht werden können.
Dazu noch ein Hinweis: in con4gis Maps können Stand heute über 60 Kartendienste angebunden werden. Hinzu kommt die Anbindung benutzerdefinierter Server. Die meisten dieser Dienste werden serverseitig angefragt. Die wenigsten dieser Dienste interessieren sich für unsere Daten. Und weil auch das immer wieder kommt: Die OpenStreetMap ist keine Karte die in den Staaten gehostet wird. Die OpenStreetMap ist eine freie Datenbank, aus der die unterschiedlichsten Kartenbilder erstellt werden. In sehr vielen Fällen liegen sowohl Datenbank, als auch Bilder hier in Deutschland. Schaut Euch die Nutzungsbedingungen und Informationen an. Wir haben diese an vielen Stellen in der Backend-Konfiguration verlinkt.
Sonstiges
Es ist in so gut wie allen Bundles etwas passiert. Wir haben viele Fehler korrigiert. Bspw. in con4gis/export. Es sind auch zahlreiche neue Funktionen dazu gekommen. Zum Beispiel in con4gis/reservation. Das alles werden wir auch noch auf https://twitter.com/con4gis beschreiben. Da sind wir leider etwas hinterher.
Falls jemand die Projects-Templates angepasst hat. Wir haben das _list und das _simple Template im neuen mod_c4g_brick.html5 vereint.
In Maps ist jetzt standardmäßig ein Routing Import enthalten, der kostenlos mit con4gis.io getestet werden kann.
Außerdem kann in Maps jetzt auch ein automatischer Permalink aktiviert werden, sodass immer die aktuelle Kartenposition in der URL steckt.
Wer ein Update von Version 7 oder sogar 6 auf 8 machen möchte, sollte auch noch hier hereinschauen: https://docs.con4gis.org/updates
... und wie immer gilt: meldet Euch wenn was nicht passt. Wir sind real und ansprechbar.
Viel Spaß und Erfolg mit con4gis!