Abfragen und Filter einfach zusammenklicken
Dienstag, 24. Juli 2018

Hin und wieder ist im Rahmen eines Projektes die Anforderung zu bewältigen, dass komplexe Filterausdrücke kombiniert und ausgeführt werden können sollen. Noch relativ einfach lassen sich diverse Operatoren, Feldtypen und damit korrespondierend unterschiedliche Möglichkeiten zur Auswahl oder Eingabe von Werten umsetzen.

Da die Wünsche und Erwartungshaltungen in diesem Bereich jedoch beliebig weit hochgeschraubt werden können, gelangen eigens entwickelte UI-Ansätze recht schnell an ihre Grenzen. Beispielsweise möchte man vielleicht komplette ODER-Blöcke in der Reihenfolge verändern oder invertieren. Oder man möchte mehrere Einträge für einen IN-Filter auswählen können.

Eine recht flexible und aktiv gepflegte Lösung für solche Features ist der jQuery QueryBuilder. Die Demo-Seite des Projektes zeigt eindrucksvoll, welchen Funktionsumfang die Bibliothek unterstützt und mit welchen weiteren Komponenten sie zusammenarbeiten kann. Die erstellten Filterausdrücke können als JSON und auch als SQL verarbeitet werden.


Browser-Skripting mit Puppeteer
Freitag, 08. Juni 2018

Wenn es darum geht, Arbeiten mit einem Browser zu automatisieren, dann kommt man mit sogenannten Headless Browsern in Berührung. Hierbei geht es darum, die Fähigkeiten eines Browsers nicht mit Maus und Tastatur zu nutzen, sondern die Bedienung mit Skripten fernzusteuern. In diesem Bereich gab es längere Zeit nur wenig mächtige Alternativen. Mit PhantomJS haben wir den de-facto Standard verwendet. Dieser wird nun allerdings nicht mehr weiterentwickelt und so wurde es Zeit für etwas Neues.


Grundlegende Anpassungen im Hinblick auf die DSGVO
Dienstag, 15. Mai 2018

Mittlerweile hat sicherlich jeder bereits von der neuen EU-⁠Datenschutzgrundverordnung (DSGVO) gehört, welche ab dem 25. Mai 2018 anzuwenden ist und für alle Länder Europas ein einheitliches Recht im Datenschutz schafft.

Betroffene Unternehmen und Institutionen müssen sich für diese Verordnung in vielerlei Hinsicht vorbereiten. Zum Beispiel steht eine Prüfung interner Prozesse an und mit Kooperationspartnern bzw. Subunternehmern müssen neue Auftragsverarbeitungsverträge geschlossen werden. Außerdem stehen hierbei natürlich auch die Internetseiten im Fokus, insbesondere da sie in der Regel komplett öffentlich einsehbar sind.


Ich bin nun auf Patreon
Montag, 26. März 2018

Auf Patreon wird via Crowdfunding die Arbeit von Personen und/oder Projekten unterstützt, die einem am Herzen liegen. Damit besteht hier auch die Chance, dauerhaft mehr Zeit für Aktivitäten im Open Source Bereich zu gewinnen. Wenn diese finanziell gefördert werden, muß im Gegenzug weniger durch bezahlte Kundenprojekte verdient werden.

Daher habe ich auch eine Patreon-Seite eingerichtet, über die Ihr meine Tätigkeiten für Zikula und ModuleStudio unterstützen könnt: https://www.patreon.com/guite So könnt Ihr dazu beitragen, dass ich mehr Fokus und Energie in das Ökosystem von Zikula einbringen kann, zum Beispiel für die anstehende Umstellung des Content-Moduls.


Alle noch im Winterschlaf?
Donnerstag, 15. März 2018

Gegenwärtig passiert nicht wirklich viel Spektakuläres. Dennoch sind einige Aktivitäten im Gange. Dieser Beitrag gibt einen kurzen Überblick.

  • Im Zikula Core wurden nach dem letzten Cross-Release zwischenzeitlich neue Vendor-Updates eingespielt. So gab es unter anderem bereits neue Symfony Upgrades für Zikula 1.5.6 und 2.0.6.
  • Bei ModuleStudio sind seit dem Release von 1.3.0 ein paar kleinere Änderungen für 1.3.1 eingeflossen. Auch wenn diese recht bescheiden aussehen, so ist es doch die Summe der kleinen Dinge, die im Ergebnis die Qualität des Produktes ausmacht ;-) Es scheint, als wäre nun ein Momentum erreicht, was Stabilität und Funktionsumfang anbelangt. Im Tracker finden sich auch fast nur noch Feature Requests, die nicht allzu eilig sind.

Aktuell bin ich noch in Kundenprojekten eingespannt, wobei ein größeres Projekt bald abgeschlossen sein dürfte. Ich hoffe, dann endlich mehr Zeit für das Content-Rewrite zu finden.


Schwerpunkt Marketing beim Camp Zikula 2017
Montag, 23. Oktober 2017

Am vergangenen Wochenende fand wieder das alljährliche Treffen der "Zikulaner" statt. Nach der obligatorischen Vorstellung der Neuigkeiten im Zikula Core seit dem letzten Jahr wurde der Prototyp der neuen Website des Projektes betrachtet und besprochen, welche Feinjustierungen hier noch bezüglich Struktur und inhaltlicher Aussage vorgenommen werden sollten.


DataGrid für Bootstrap
Mittwoch, 20. September 2017

Für ein Projekt habe ich kürzlich mehrere DataGrid-Komponenten im Hinblick auf den funktionalen Umfang, die Aktivität der Entwicklung und den Grad der Anpassbarkeit verglichen. Einige Kandidaten in der engeren Auswahl waren unter anderem SlickGrid, DataTables, bs_grid und jQuery Bootgrid. Für mich hat aber Bootstrap Table das Rennen gemacht. Es bietet eine ganze Reihe Extensions, bleibt dabei aber immer nahe an einer responsiven Bootstrap-konformen Darstellung. Vielleicht hilft dieser Tipp ja dem ein oder anderen, der eine ähnliche Funktionalität benötigt.


ModuleStudio-Releaseplan und Website-Design
Sonntag, 16. Juli 2017
Bild 0 für ModuleStudio-Releaseplan und Website-Design

In den nächsten Tagen werden Zikula 1.5.0 und 2.0.0 als Cross-Release erscheinen. Beide Versionen sind funktional identisch. Der Unterschied liegt darin, dass der Unterbau von Zikula 2 auf Symfony 3 basiert, wohingegen bei Zikula 1.5 weiterhin Symfony 2.8 zum Einsatz kommt. In Zikula 2 ist ferner jegliche Legacy-Unterstützung entfernt worden.

Aus Marketing-Gründen haben wir schon länger besprochen, dass zusammen mit Zikula 2.0 auch ModuleStudio 1.0 zur Verfügung stehen sollte. Daher geht meine Überlegung in die Richtung, dass zunächst ModuleStudio 0.7.5 veröffentlicht wird, welches alle aktuellen Generator-Fixes beinhaltet. Anschließend wird der Support für Zikula 1.4.x aus der DSL entfernt, welche aktuell noch als Standard eingestellt ist. Statt dessen wird per Standard für Zikula 2.0 generiert und weiter die Möglichkeit geboten, auf 1.5 umzustellen. Nach dieser kleinen Änderung wird dann ModuleStudio 1.0.0 direkt nach 0.7.5 das Licht der Welt erblicken.

Übrigens haben wir das Design der ModuleStudio-Website geringfügig optimiert, um dem Layout etwas mehr Halt zu geben, das Produkt auf der Startseite ansprechender darzustellen und den Fußbereich aufzuräumen.


Verschlüsselung mit Let's Encrypt
Samstag, 01. Juli 2017

In den letzten Tagen haben wir eine Reihe von Internetseiten auf einen neuen Cloud-Server umgezogen. Damit profitieren alle Seiten von einer verbesserten Ausfallsicherheit und Skalierbarkeit.

Außerdem werden nun alle Seiten per Standard mit Zertifikaten von Let's Encrypt ausgestattet, welche automatisch erneuert bzw. verlängert werden. Auch die Verbindung zu diesem Blog sowie zur Homepage von ModuleStudio läuft daher jetzt via https.


Dokumentation für ModuleStudio 0.7 überarbeitet
Samstag, 05. November 2016

Vor ein paar Wochen ist die Dokumentation von ModuleStudio auf Markdown umgestellt worden, was die Mitarbeit für die Nutzer vereinfacht. Auf jeder Seite der Doku befindet sich jetzt ein Edit on GitHub-Link, mit dem man sich direkt einen Fork erstellen und dort die gewünschten Änderungen einbringen kann.

In den letzten Tagen wurde das Handbuch als Vorbereitung für die kommende neue Version überarbeitet und ausgebaut. In diesem Zuge sind auch die veralteten Video-Tutorials aufgelöst worden. Es gibt jetzt nur noch ein zentrales, großes Handbuch statt einem Haufen Einzelseiten. Dies erleichtert insbesondere neuen Nutzern den Einstieg und bringt eine verbesserte Übersicht.

Um der vereinfachten Struktur Rechnung zu tragen, wird auch das Layout der Website demnächst noch einmal in Form gebracht und geringfügig angepasst, um die Übersichtlichkeit weiter zu erhöhen.

Auf der Website wurden zwischenzeitlich auch kleinere Dinge verbessert. So bekommt man beispielsweise auf der Download-Seite nur noch die Version für das eigene Betriebssystem angeboten, während die anderen Versionen unter einem unpopulären Link verborgen sind und bei Bedarf eingeblendet werden können.


Schönere Property Views in MOST 0.7
Samstag, 17. September 2016
Bild 0 für Schönere Property Views in MOST 0.7

In ModuleStudio 0.7 wird es eine neue Ansicht für die Eigenschaften von Modellelementen geben. Statt der bisherigen Tabellenansicht ist die neue View eher wie ein Formular aufgebaut und ermöglicht damit eine übersichtlichere Darstellung.

Die neue Ansicht sieht nicht nur schöner aus, sondern erlaubt auch mehr Funktionalität innerhalb der Eigenschaften, wie zum Beispiel die Anzeige von Validierungsfehlern direkt beim jeweiligen Eingabefeld.


Zikula 1.4.3 mit überarbeiteten Authentifizierungsmethoden
Montag, 11. Juli 2016

Craig Heydenburg hat in den letzten Wochen die Benutzerverwaltung (Users-Modul) im Zikula-Core zur Unterstützung von Twig und Symfony Forms überarbeitet. Doch damit nicht genug: er hat zudem jegliche Funktionalität in Bezug auf die Registrierung und die Anmeldung von Benutzern in ein eigenes Systemmodul namens ZAuth separiert, welches ebenfalls im Core enthalten ist.


Produktkonfigurator mit Live-Vorschau
Sonntag, 19. Juni 2016
Bild 0 für Produktkonfigurator mit Live-Vorschau

Normalerweise geht es in diesem Blog nicht um Showcases. Da die Realisierung des im Folgenden vorgestellten Konfigurators jedoch technisch sehr interessant gemacht ist, soll es einmal eine Ausnahme geben.

Auf my-orden.de ist ein Orden Designer verfügbar, mit dem sich individuelle Orden für Karneval, Jubiläen und andere Anlässe konfigurieren lassen. Unter der Haube stecken Zikula, ein Modul auf Basis von ModuleStudio, Bootstrap und eine Menge JavaScript.




Worum geht es in diesem Entwickler-Blog?
Freitag, 21. Februar 2014

Dieser Blog wird hauptsächlich über die Anpassung von Modulen für das Zikula-Framework berichten. Dabei werden zahlreiche Technologien verwendet, unter anderem Symfony, Twig, Doctrine, Bootstrap und jQuery. Eine Besonderheit ist, dass die Zikula-Module auf modellgetriebenem Wege realisiert werden.

^