Zikula 1.4.3 mit überarbeiteten Authentifizierungsmethoden

in  Verschiedenes , , ,

Zikula 1.4.3 mit überarbeiteten Authentifizierungsmethoden

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.

Als Teil dieser Auslagerung wurden die Schnittstellen zur Implementierung von Authentifizierungsmethoden generalüberholt. Damit wird es nun einfacher, andere Wege zur Erstellung neuer Benutzer und zum Login derselben anzubieten. Ein Beispiel hierfür ist das OAuth-Modul, mit dem Anmeldungen basierend auf dem OAuth-Standard durchgeführt werden können. Aktuell werden darüber bereits die Anbieter Github und Google unterstützt. Damit kann man sich ganz einfach mit einem bestehenden Github- oder Google-Konto auf Zikula-Seiten, die das Modul installiert haben, anmelden.

Umstellung der Zikula-Systemmodule für 2.0

in  Zikula Apps , , ,

Umstellung der Zikula-Systemmodule für 2.0

Gegenwärtig werden die verbleibenden Systemmodule, die im Zikula Core enthalten sind, auf Twig und Symfony Forms umgestellt. Während Craig an den großen Brocken Users und Groups arbeitet, habe ich ein paar kleinere Module migriert, im Einzelnen Mailer, PageLock, Admin und Search. Als nächstes werde ich wohl das SecurityCenter angehen. Der Fortschritt an diesem Prozess kann in diesem Ticket verfolgt werden.

Jenkins mit GitHub-Integration, Pipelines und Multibranch Workflows

in  Builds & Tests , ,

Jenkins mit GitHub-Integration, Pipelines und Multibranch Workflows

Gegenwärtig beschäftige ich mich mit zwei interessanten Punkten in Bezug auf Jenkins. Die neu gestaltete Website bietet dazu einen guten Einstiegspunkt.

Der erste Punkt dreht sich darum, Jenkins besser mit GitHub zu verzahnen.

  • Hier steht insbesondere eine engere Integration des Build Status im Raum. Die Nutzung von Service Hooks erlaubt es, einen Build via Push zu starten, was sowohl schneller als auch effizienter als das zeitbasierte Polling des Git-Repositories seitens Jenkins abläuft.
  • Durch die Commit Status API kann der Erfolg oder Fehler eines Builds zu einem Commit auf GitHub reflektiert werden.
  • Der aktuelle Build-Zustand des Repositories sollte auf GitHub angezeigt werden.
  • Auch Pull Requests sollten ebenso wie der Hauptbranch gebaut werden.

Der zweite Bereich behandelt Pipelines, mit denen sich der Workflow eines Jobs flexibel orchestrieren lässt.

Frontend-Technologien in Zikula

in  Basics , , ,

Frontend-Technologien in Zikula

Dieser Beitrag gibt einen Überblick über aus heutiger Sicht essenzielle Bibliotheken, mit denen das Frontend moderner Websites typischerweise realisiert werden. Diese sind weitgehend in Zikula enthalten, brauchen also nicht mehr dazu installiert zu werden.

Prototype & Script.aculo.us

Prototype ist eine JS-Bibliothek, die sich zum Ziel gesetzt hat, die JavaScript-Entwicklung zu vereinfachen. Script.aculo.us baut auf Prototype auf und bietet zusätzliche Effekte, Funktionen und Animationen. Aus Gründen der Abwärtskompatibilität sind beide Bibliotheken noch in Zikula 1.3.x enthalten, aus heutiger Sicht sind sie allerdings als obsolet zu betrachten. Ab Zikula 1.4.0 sind sie daher nicht mehr im System ver­fügbar, statt dessen wird nun primär auf jQuery gesetzt.

Templating-System erklärt

in  Basics , , ,

Templating-System erklärt

In Zikula wird eine „Templating-Engine“ verwendet, um Inhalt und Form voneinander getrennt zu halten. Dies bedeutet, dass der programmierte Quelltext, der eine bestimmte Funktion bereitstellt, woanders liegt als das Aussehen der entsprechenden Seite.

Dies ermöglicht es, dass sich Backend-Entwickler um die Implementierung kümmern, während Frontend-Entwickler die Oberfläche aufbauen und anpassen. Zum Frontend zählen im Wesentlichen das Markup (HTML), Client-seitige Skripte (JavaScript) sowie Stile (CSS).

Um eine Zikula-Seite zu gestalten oder zu verändern, muss kein Programmiercode angefasst werden. Jegliches Customising lässt sich in Templates durchführen. Ein Modul stellt Templates für jede Funktion bereit, die es zur Verfügung stellt. Ein Modul für Newsbeiträge verfügt beispielsweise über Templates für die Liste der Beiträge, die Detailansicht eines Beitrags, die Änderungsformulare, usw. Ferner stellt ein Modul allgemeine JavaScript- und CSS-Dateien bereit, die unabhängig von der Gestaltung einer konkreten Website für das Modul notwendig sind.

Was hat Zikula mit Symfony und Doctrine zu tun?

in  Basics , , ,

Was hat Zikula mit Symfony und Doctrine zu tun?

In diesem Beitrag wird einmal grundlegend erklärt, wobei es sich um Zikula, Symfony und Doctrine handelt und wie diese Dinge zusammenspielen. Falls jemand diese Technologien nicht kennt, hilft dies vielleicht insbesondere beim Einstieg, sich unter der Masse von Begriffen zu orientieren.

Zikula

Zikula ist ein Application Framework und dient somit als „Rahmen“ für beliebige Webanwendungen. Die wichtigste allgemeine Anlaufstelle für Zikula ist https://ziku.la/.

Seinen Ursprung hat Zikula in dem Vorgängerprojekt „PostNuke“, welches in den 90er Jahren sehr populär war und weltweit häufig verwendet wurde. Im Jahre 2008 wurde das Projekt in Zikula umbenannt.