Forum

Forum feed

» zum Forum | » aktuelle Diskussionen

Zikula Nachrichten

RSS Feed

.8: Stand der Entwicklung und erster Milestone Release

Es wird mal wieder Zeit für ein Update zur .8 Entwicklung. Dazu soll dieser Artikel kurz beschreiben, was sich in der letzten Zeit in der Codebase getan hat - kurz gesagt: Viel!


Die wichtigsten Punkte sind:

* Nahezu alle Module benutzen jetzt DBUtil für die Datenbankzugriffe

* Neues Theme Modul als Ersatz für Xanthia

* Neue Themes hinzugefügt / alte Themes entfernt

* Workflow Engine

* XML-basierte Formulare(Guppy)

* Users und Profile Module überarbeitet

* Templateänderungen

* Sprachänderungen und config Verzeichnis

Xanthia 3.0 wird "Theme" heissen

Kürzlich wurde das neue Theme Modul als Weiterentwicklung von Xanthia fertiggestellt. Es behebt ein paar Designfehler und bringt einige Neuerungen mit sich. So ist es jetzt z.B. möglich, einer beliebigen Seite ein neues Template zuzuweisen. Alle themerelevanten Eeinstellungen wurden aus dem Settingsmodul hierhin verlagert, dazu gibt es für den User noch einen Themeswitcher.

Konfigurationen werden aus Performancegründen statt in der Datenbank in .ini Dateien gespeichert, die Blockkontrolle geht komplett in die Verantwortung des Blockmoduls über (noch nicht im CVS). Das Initialisieren von neuen Themes entfällt, das macht das Theme Modul jetzt selbständig.

Das Userinterface wurde komplett überarbeitet und vereinfacht. Das erfordert sicher einige Umgewöhnung, wird nach einer kurzen Einarbeitungszeit aber sicher schneller zu brauchbaren Ergebnissen führen.

.7x Themes benötigen ein Upgrade, den das Theme Modul selbständig durchführt. So wird z.B.

Code

<!--[ $leftblocks ]-->

ersetzt durch

Code

<!--[ blockposition name="left" ]-->

Neue Themes hinzugefügt / alte Themes entfernt

Passend zum neuen Theme Modul gibt es zwei neue Themes im CVS, die auf Basis von frei verfügbaren Layouts von http://www.oswd.org entstanden sind. Dies sind reine CSS-basierte Themes, alle tabellenbasierten wurde entfernt. Ziel ist es, die komplette Ausgabe in .8 tabellenfrei und xhtml-konform zu machen.

Wer weitere Themes beisteuern will, kann sich gerne bei uns melden.

Workflow Engine

.8 wird eine zustandsabhängige, XML-basierte Workflowengine mit einfacher API mitbringen. Darüberhinaus geplant sind zeitabhängige Ausführungen von definierten Abläufen (z.B. Mailversand).

Die Workflows werden in einem pnworkflow Verzeichnis auf Modulebene definiert, in dem Zustände und Aktionen festgelegt werden. Dabei wird das Permissionsystem vollständig unterstützt. Zum Zeitpunkt des Milestonereleases wird eine Dokumentation zur Verfügung stehen.

XML-basierte Formulare(Guppy)

GuppyForm (bekannt aus Pagesetter) ermöglicht Entwicklern, Formulare auf Basis von XML-Dateien zu erstellen. Dies sorgt für eine drastische Vereinfachung dieses Vorgangs, den man immer wieder braucht und kann zusammen mit oder auch ohne pnRender verwendet werden.

Users und Profile Module überarbeitet

Ebenso fertiggestellt wurde die Überarbeitung der Users und Profile Module, die eine starke Vereinfachung der dynamischen Userdatenfelder darstellen.

Dazu gibt es eine Reihe neuer Datenfelder, z.B. für Datum oder kombinierte Felder mit mehreren Auswahlmöglichkeiten.

Das Users-Modul macht es jetzt möglich, Passwörter optional SHA-1, SHA-256 oder MD5 kodiert zu speichern, dazu wird auf Wunsch noch das letzte Logindatum festgehalten und ein Einloggen per Emailadresse statt Usernamen ist möglich.

Templateänderungen

Annähernd alle Templates wurde überarbeitet, um ein gemeinsames "Look & Feel" zu erreichen. Das fängt beim Positionieren von Statusmeldungen und Links an und endet bei der Verwendung des Crystal Icons Set in allen Modulen an Stellen, an denen grafische Links angebracht sind. Diese Grafiken kennt ihr schon von unserer Seite.

Sprachänderungen und config Verzeichnis

Wie bekannt, ist pnDefineMachine nun das empfohlene Tool zu Übersetzung des Cores und von Modulen. Um für Übersetzer die Arbeit zu vereinfachen und Fehlerquellen auszuschliessen, wurde heute einige Defines im Core geändert: Alle Sprachdefines beginnen mit _ und werden von pnDefinemachine erfasst, alle anderen Konstanten sind numerisch oder gehören dem Core aus anderen Gründen und können mit dem Tool nicht verändert werden.

Eine weitere Änderung ist das globale config Verzeichnis. Hier wird nicht nur die config.php untergebracht werden, sondern hier können auch individuell Sprachdateien upgradesicher gespeichert oder global in allen Themes gültige Templates hinterlegt werden (wenn z.b. das Userprofil in allen verfügbaren Themes gleich sein soll).

Ajax-Unterstützung

Inwieweit der erste Milestone vom Core her Ajax unterstützt, ist noch nicht sicher. Zur Zeit experimentiere ich mit einem umgeschriebenen Permissions Modul, das ein Verschieben der Zugriffsrechte per Drag&Drop und Änderungen inline ermöglicht.

Und wann gibt es das Alles?

Recht bald. Während des virtuellen Treffens des Steering Committees am Dienstag per Skype wurde, sofern nichts Schwerwiegendes dazwischen kommt, die dritte oder vierte Aprilwoche als Releasetermin für einen ersten .8 Milestone ins Auge gefasst.

Dieser Milestone Release soll Entwicklern die Möglichkeit geben, ihre Module unter .8 zu testen und gegebenenfalls anzupassen.

Auf keinen Fall ist dieser Release für einen Einsatz in Produktivumgebungen gedacht, es wird keinen Endusersupport dafür geben. Modul- und Themeentwicklern wird bei Fragen natürlich weitergeholfen.

Ebensowenig gibt es ein Upgrade von .7x (das trifft natürlich nicht auf die finale Version zu, dort wird es natürlich ein Upgrade geben).

Originalartikel


 

Kommentare

  • Geschrieben am
  • 31. Mär 2006 - 08:45
und was macht unser maskottchen ponk?

wer in der zwischenzeit sehen möchte, wie sich unser maskottchen ponk die zeit bis zum ersten milestone-release vertreibt: *klick* icon_wink

  • Geschrieben am
  • 31. Mär 2006 - 08:49
Muß ich jetzt mein Xanthia Theme umschreiben?

Frage: Wie sehr unterscheidet sich ein Theme der neuen Generation von einem Xanthia Theme?

Muß ich jetzt ein mühevoll zusammengeklöppeltes Werk wieder komplett von vorne anfangen um die neuen (sicherlich sehr sinnvollen) Features nutzen zu können?

  • Geschrieben am
  • 31. Mär 2006 - 09:58

das neue themes modul ist nichts anderes als xanthia 3.0 - bestehende themes können automatisch konvertiert werden (wenn man dem webserver kurzfristig schreibrechte im entsprechenden verzeichnis einräumt).

der grundaufbau der themes und auch die generelle arbeit des moduls bleibt weitestgehend identisch und die umstellung sollte sehr einfach von der hand gehen. bei www.pn-cms.de war das theme in rund 2 min umgestellt icon_wink

  • Geschrieben am
  • 31. Mär 2006 - 16:48
theme relevante einstellungen kommen in settings

ich will unbedingt mal wissen wie dann beim 8.0 stable das settings modul aussieht, ich meine schon jetzt finde ich die seite zu lang da vorallem die html einstellungen die ganze seite in die länge ziehen..

evtl kann man es ja mit jscript (oder sogar ajax) einrichten das man die entsprechnenden bereiche ein und ausklappen kann

btw: wie siehts dann mit der pnrender unterstützung der standartmodule aus?? (ein hochgerüsteter core + das alte memberslistmodul, nein, das sieht nich gut aus)

  • Geschrieben am
  • 31. Mär 2006 - 17:10

Nach solchen Meldungen bin ich immer froh, auch weiterhin PostNuke einzusetzen.

Ich würde mich freuen, einige meiner Themes zur .8 final beisteuern zu können.

Gibt es bei der Modulentwicklung deutliche Veränderungen, die berücksichtigt werden sollten? Welche Rolle spielt DBUtil? Ersetzt es einen Teil der pnRender Aufrufe?

  • Geschrieben am
  • 31. Mär 2006 - 17:16

DBUtil erleichtert den Programmierern die Datenbankabfragen. Mit pnRender hat das nichts am Hut.

Ich freu mich besonders ueber den Ansatz, durch global verwendete Icons mehr Einheitlichkeit in das System zu bringen. Hoffentlich findet es viel Verwendung in den 3rd-person Modulen.

  • Geschrieben am
  • 31. Mär 2006 - 19:40
Ja klar ...

Downloads und WebLinks werden auf jedenfall das gleiche Iconset verwenden wied er Core (oder Klaus? icon_biggrin ).

Ich für meinen Teil teste das Downloads 2.0 bereits unter der 0.8. Mal sehen vielleicht ist eine Preview fertig bis das ilestonerelease kommt icon_wink

  • Geschrieben am
  • 31. Mär 2006 - 19:47
pnRender

@nicname: Alle Module nutzen pnRender fürs Templating, im Core ist iirc kein einziges hardcodiertes Stück HTML drin (abgesehen von pnRender Plugins).

Betreffend Ajax und Javascript werde ich kurzfristig noch einige Neuigkeiten ins CVS committen...

  • Geschrieben am
  • 31. Mär 2006 - 21:06

Ich glaube nicname ging es um die Einstellungen für HTML - welche Tags verwendet werden dürfen und welche nicht.

  • Geschrieben am
  • 31. Mär 2006 - 21:34

Quote

wer in der zwischenzeit sehen möchte, wie sich unser maskottchen ponk die zeit bis zum ersten milestone-release vertreibt:

Süüüüüüßß!

  • Geschrieben am
  • 01. Apr 2006 - 00:42

nicname fragte aber auch nach der pnRender-Unterstützung der Standardmodule.

  • Geschrieben am
  • 01. Apr 2006 - 08:23
Nightly Build getestet

Ich habe gerade mal das heutige Nightly Build der 0.8er Version geteste ==> sehr geil. Das neueste Beta release von Pagesetter läuft zwar noch nicht (wollte mal beide Fliegen mit einer Klappe schlagen und hab beides installiert), ansonsten kann ich aber nur sagen:

Kann die 0.8er nicht mehr erwarten icon_biggrin

  • Geschrieben am
  • 01. Apr 2006 - 10:29

k.a. ob guppy schon im .8'er core aktiviert ist das kann das Problem sein. Dann hast du ja doppelte funktionsdeklarationen usw.

  • Geschrieben am
  • 01. Apr 2006 - 10:58
@ Patrick

... not sure... Fehler kamen beim Versuch die beiden neuen Feldtypes (z.B. Relation) einzupflegen und hinterher beim Abschluss der Publikationserstellung.

However, war nurmal zum Testen und was ich gesehen habe, gefiel mir icon_razz

  • Geschrieben am
  • 01. Apr 2006 - 11:00

iirc sollte Guppy in soetwas wie FormsAPI umbenannt werden - wenn man Workflows, Forms und Xinha per Core einbindet, bleibt von Pagesetter nicht mehr viel übrig, oder? icon_wink

  • Geschrieben am
  • 01. Apr 2006 - 11:27
Pagesetter

... braucht in der aktuellen Version auch noch das Topics-Modul, das nicht mehr in .8 enthalten ist.

  • Geschrieben am
  • 01. Apr 2006 - 14:06

Gibt es schon heute die Möglichkeit, Module .8ready zu entwickeln, oder muss man dafür auf das Milestone Release warten? Ist das Example Modul auf dem aktuellen Stand für .8? Wie siehts mit dem OpenStar Modul Generator aus?

  • Geschrieben am
  • 01. Apr 2006 - 14:55

Du kannst Dir ein Nightly Build von pnconcept.com herunterladen und installieren.

Wie weit das Examples-Modul ist, weiss nicht nicht. Blick ins CVS sollte aber genügen. icon_wink

Der Modulgenerator kann wohl auf .8 umgestellt werden (vom OpenStar-Team).

Nur angemeldete Benutzer dürfen kommentieren. Registrierung oder Anmeldung.