|
|
|
|
Quicknavi |
|
Quicknavi |
|
Übersicht über die Releases:
Downloads
Auf dieser Seite können die Quellcodes und Dokumentationen des Frameworks heruntergeladen werden.
Die Bibliotheken sind für den Einsatz unter PHP 4 und PHP 5 freigegeben.
Quellcode und Dokumentation unterliegen der GPLv2-Lizenz. Details zur Lizensierung können
unter Lizenz eingesehen werden.
Details zum jeweiligen Release können den Release-Notes entnommen werden.
Die chm-Versionen der Offline-Dokumentation können unter LINUX mit den Programmen GnoCHM,
erhältlich unter http://sourceforge.net/project...p_id=96084
bzw. xCHM, erhältlich unter http://xchm.sourceforge.net/download.html,
betrachtet werden. Die Programme basieren jeweils auf der chmlib
(http://www.jedrea.com/chmlib/).
Version 1.7
Das Release 1.7 beinhaltet Bibliotheken für den Einsatz in PHP 4 und PHP 5.
Für die beiden PHP-Versionen werden allerdings ab Release 1.7-BETA unterschiedliche Pakete
ausgeliefert um die Trennung der Branches vorbereiten zu können. Getestet wurde mit und ohne
Kompatibilitätsmodus gegen die Versionen >= 5.2.6 und <= 4.4.8. Die Version ist für den
Einsatz auf Produktiv-Umgebungen freigegeben.
Wichtige Änderungen in der Version 1.7 sind:
-
Bugfix connectionManager: bei mehrfacher Verwendung des connectionManagers mit gleicher Verbindung
kam es zu Interferenzen der Instanzen. Aus diesem Grund wurde das Caching auf der Verbindungen
auf den connectionManager verlagert.
-
Die Fehlerunterdrückung im MySQLHandler wurde entfernt um eine bessere Fehleranalyse bei
fehlgeschlagenen Verbindungen zu ermöglichen.
-
Bugfix frontcontrollerRequestFilter: ist bei einer Action kein Parameter angegeben führte
dies zu einer Array-Initialisierungsmeldung. Dies wurde durch saubere Vorbelegung behoben.
-
Die optionalen Parameter $URLRewriting wurden im Page- und FrontController entfernt.
Manuelles Setzen in Verbdinung mit der Registry-Konfiguration führte zu
einem Fehler. Siehe http://forum.adventure-php-framework.org/de/viewtopic.php?f=5&t=54&st=0&sk=t&sd=a&start=15#p250.
-
Erweiterung newspager-Modul: durch die Angabe des zusätzlchen Parameters
datadir in der <core:importdesign />-Direktive kann das
Datenverzeichnis beliebig gewählt und damit in anderen Umgebungen unabhängiger
ausgeführt werden. Weiterhin wurden die Fehlermeldungen verbessert.
-
Erweiterung guestbook-Modul: das Formular wurde um ein CAPTCHA zur Vermeidung von SPAM erweitert.
-
Erweiterung usermanagement-Modul: es wurde eine Beispiel-Datei zum Betrieb des Moduls und ein
Dokumentations-UML hinzugefügt.
-
Bugfix captcha-Modul: eine fehlende Abhängigkeit zum sessionManager wurde aufgelöst.
Diese führte dazu, dass die Action unter gewissen Umständen kein CAPTCHA-Bild
ausgeliefert hat.
-
Erweiterung kontakt4-Modul: das Formular wurde um ein CAPTCHA zur Vermeidung von SPAM erweitert.
-
Bugfix comment-Modul: die Generierung der CAPTCHA-Bild-URL wurde korrigiert, so dass diese auch
im normalen URL-Modus funktioniert. Bisher wurde hier nur von aktiviertem URL-Rewriting
ausgegangen. Weiterhin wurden Farbformatierungen entfernt, die in Abhängigkeit zur bisherigen
Dokumentationsseite standen.
-
Bugfix <fcon:importdesign />-Tag: das Model-Objekt wurde nicht eingebunden, da der Tag
davon ausging, dass der import()-Aufruf bereits in der Bootstrap-Datei beinhaltet ist.
-
Erweiterung Framework: die Komponenten linkHandler und
frontcontrollerLinkHandler codieren Ampersands um in Links korrektes HTML
liefern zu können. Da bei generierten URLs eine Weiterleitung via header()
fehlschlägt, wurde der HeaderManager eingeführt. Dieser löst die
Ampersands auf und leitet korrekt auf die gewünschte Zielseite weiter. Die Dokumentation
dazu ist bisher nur im
SVN
verfügbar. Die Dokumentation ist - wie auch das Feature selbst - für Version 1.8 geplant.
-
Verbesserung ui_getstring: die in der Klasse ui_getstring enthaltenen
Fehlermeldungen wurden optimiert und erweitert um das Debugging zu erleichtern. Die Klasse ist
die Basis für die <*:getstring />-Tags.
-
Bugfix Logger: die Initialisierung des Log-Verzeichnisses wurde in die Methode
flushLogBuffer() des Loggers verschoben. Hintergrund ist, dass beim Erstellen
des Loggers noch keine Verzeichnisstruktur angelegt werden muss. Insbesondere im demopack kam es
deswegen zu skurilen Fehlermeldungen auf Grund von fehlenden Schreibrechten. Weiterhin bedeutet
diese Änderung eine Performance-Optimierung, falls keine Logs geschrieben werden müssen.
-
Bereinigung errorManager: die Nur-Text-Ausgabe im errorManager wurde entfernt, da bei Verwendung
des PageControllers immer sichergestellt ist, dass die Fehlerseite in grafisch aufbereiteter
Form angezeigt werden kann.
-
Verbesserung Logger: die Initialisierung des Log-Verzeichnisses wurde auf absolute Pfade
umgestellt. Relative können während des shutdown falsch ausgewertet werden und es kommt
zu unerklärlichen Fehlern. Um in den Applikationen sicher zu gehen, dass Logs korrekt
geschrieben werden können, sollte das LogDir immer mit einem absoluten Pfad
belegt werden. Siehe hierzu
Klassenreferenz - Logger.
-
Erweiterung <form:genericval />-Tag: das Tag wurde so erweitert, dass nun
auch eine Validierung per regulärem Ausdruck möglich ist. Um dies zu erreichen, erwartet
das Attribut validator den Wert RegExp, der den in einem weiteren
Attribut (regexp) gegebenen regulären Ausdruck zur Validierung des
gewünschten Elementes einsetzt. Die Dokumentation unter
Generischer Validator
wurde entsprechend erweitert.
-
Bugfix myValidator: die Methode validateNumber() der Klasse
myValidator validiert nun auch negative und fließkomma Zahlen als
korrekte Nummern. Zur Validierung wird nun die PHP-Funktion is_numeric()
eingesetzt.
-
Änderung API: wie angekündigt wurde die Methode getFormElementsByType()
aus der Klasse html_taglib_form entfernt.
-
Erweiterung Module: das Framework besitzt nun ein drei neue Module: captcha,
genericormapper und usermanagement. Das Modul captcha
kommt bereits beim Gästebuch zum Einsatz um SPAM zu vermeiden. Die Dokumentation des neuen
Moduls findet sich unter CAPTCHA-Taglib.
Das Modul genericormapper ist eine OR-Mapper-Komponente, die es ermöglicht, Objekte
auf generische Weise in einer relationalen Datenbank ablegen zu können. Die Dokumentation
zum im beta-Status befindlichen Modul findet sich unter
Generischer OR-Mapper.
Das Modul usermanagement basiert auf dem generischen OR-Mapper und implementiert ein
allgemeingültiges Benutzer-, Gruppen- und Rollen-Management. Auch diese Komponente befindet
sich noch im beta-Stadium. Die Dokumentation zu diesem Modul ist noch in Bearbeitung.
-
Korrekturen Sandbox: es wurden Korrekturen hinsichtlich neuer Features und Texte vorgenommen.
-
Bugfix Tutorials: Die Downloads des Tutorials
Webseite erstellen
wurden auf die Version 1.7 migriert. Zum Betrieb des Beispiels muss jedoch nun das passende
codepack-Release heruntergeladen werden. Hinweise dazu finden sich im README des Paketes.
-
Erweiterung form-Taglibs: zur Generierung von dynamischen Formularen wurde das
<form:marker />-Tag eingeführt. Zusammen mit den neuen Methoden
- addFormContentBeforeMarker()
- addFormContentAfterMarker()
- addFormElementBeforeMarker()
- addFormElementAfterMarker()
der Klasse html_taglib_form ist es nun möglich, Formulare komfortabel
dynamisch zu erstellen. Weiterhin wurde die Methode addFormElement() hinsichtlich
der neuen Logik zur Erstellung von dynamischen Formularelementen angepasst. Die Dokumentation
wurde im Kapitel Formulare um den Bereich
Dynamische Formulare
ergänzt. Details zur Feature-Diskussion können dem Foren-Thread
html_taglib_placeholder gesucht
entnommen werden.
-
Update Dokumentation: die komplette Dokumentation wurde hinsichtlich Sprungmarken überarbeitet.
Jede Dokumentationsseite verfügt nun über eine Quicknavi.
-
Bugfix ui_element: Im Fall von '0'-Werten wurde das Presetting von
Formular-Elementen nicht korrekt durchgeführt. Siehe hierzu auch
Presetting von Formularwerten beim Wert '0' fehlerhaft.
-
Erweiterung Tutorials: Das aus einer Diskussion im Forum entstandene Tutorial "Minimales Modul
mit dem APF" kann unter
http://forum.adventure-php-framework.org/de/viewtopic.php?f=6&t=44
eingesehen werden.
-
Erweiterung Registry: die Standard-Registry-Werte wurden um die Direktive
LibPath ergänzt. Diese enthält den dynamisch generierten Basis-Pfad
zur APF-Code-Basis und kann zur Addressierung von Inhalte verwendet werden. Die Direktive ist
schreibgeschützt und kann zur Laufzeit nicht verändert werden. Details können der
Dokumentation unter Grundlagen
entnommen werden.
-
API-Änderung: die in 1.6 hinzugekommene Methode getFormElementsByType() wurde in
getFormElementsByTagName() umbenannt. Letztere erwartet nicht mehr den Klassen-Namen
der Tag-Implementierung der gewünschten Elemente, sondern den Tag-Namen (z.B. "form:text")
als Parameter.
-
Änderung Fehler-Seite: die Errorpage wurde auf englisch übersetzt.
-
Core-Änderung Framework: Implementierung und Dokumentation der Registry Komponente und
Entfernen des ApplicationManagers. Durch diese Änderungen sind Anpassungen der
Bootstrap-Dateien notwenig. Details zur Migration auf Version 1.7 kann unter
Migration von Version 1.6 auf 1.7
nachgelesen werden. Die neue Variante der Konfiguration und der Initialisierung des Frameworks
erlaubt es Projekte schneller aufzusetzen und lässt die Basis-Konfiguration entfallen.
-
Umstellung Build: das Build der Pakete wurde umgestellt. Pakete mit dem Architektur-Kürzel
php4 sind für den Einsatz auf PHP-4-Umgebungen erstellen, Pakete mit
php5 für PHP-5-Umgebungen und Pakete mit noarch können
auf jeder Umgebung eingesetzt werden.
-
Erweiterung form-Taglibs: die Formular-Tags wurden um die Taglib form:addtaglib
erweitert. Mit Hilfe dieses Tags ist es möglich, beliebige weitere Tags in ein Formular
einzubinden und für den speziellen Anwendungsfall noch nicht vorhandene Funktionalität
hinzuzufügen. Durch die Einbindung per Tag bleibt die eingebundene Funktionalität zudem
wiederverwendbar. Die Dokumentation des Tags findet sich auf der
Standard TagLibs-Seite.
Die Dateien mit dem Namen adventure-codepack-* enthalten die Bibliotheken des Framework,
die Dateien mit dem Namen adventure-demopack-* die Bibliotheken plus einer Demo-Applikation.
Für Einsteiger wird empfohlen die Demo-Packs herunter zu laden. Release-Dateien mit dem Namen
adventure-configpack-* beinhalten einen Satz an Beispiel-Konfigurationen.
Dokumentation
Folgende Dokumentationen sind zu diesem Release vorhanden:
-
Online-Dokumentation: (Aktuelles Release)
-
Offline-Dokumentation:
Release-Packages
Version 1.7-RC2
Das Release 1.7-RC2 beinhaltet Bibliotheken für den Einsatz in PHP 4 und PHP 5.
Für die beiden PHP-Versionen werden allerdings ab Release 1.7-BETA unterschiedliche Pakete
ausgeliefert um die Trennung der Branches vorbereiten zu können. Getestet wurde mit und ohne
Kompatibilitätsmodus gegen die Versionen >= 5.2.6 und <= 4.4.8. Die Version ist für den
Einsatz auf Produktiv-Umgebungen freigegeben.
Wichtige Änderungen in der Version 1.7-RC2 sind:
-
Die Initialisierung des Log-Verzeichnisses wurde in die Methode flushLogBuffer()
des Loggers verschoben. Hintergrund ist, dass beim Erstellen des Loggers noch keine
Verzeichnisstruktur angelegt werden muss. Insbesondere im demopack kam es deswegen zu skurilen
Fehlermeldungen auf Grund von fehlenden Schreibrechten. Weiterhin bedeutet diese Änderung
eine Performance-Optimierung, falls keine Logs geschrieben werden müssen.
-
Die Nur-Text-Ausgabe im errorManager wurde entfernt, da bei Verwendung des PageControllers immer
sichergestellt ist, dass die Fehlerseite in grafisch aufbereiteter Form angezeigt werden kann.
-
Die Initialisierung des Log-Verzeichnisses wurde auf absolute Pfade umgestellt. Relative können
während des shutdown falsch ausgewertet werden und es kommt zu unerklärlichen Fehlern.
Um in den Applikationen sicher zu gehen, dass Logs korrekt geschrieben werden können, sollte
das LogDir immer mit einem absoluten Pfad belegt werden. Siehe hierzu
Klassenreferenz - Logger.
-
Der <form:genericval />-Tag wurde so erweitert, dass nun auch eine
Validierung per regulärem Ausdruck möglich ist. Um dies zu erreichen, erwartet das
Attribut validator den Wert RegExp, der den in einem weiteren
Attribut (regexp) gegebenen regulären Ausdruck zur Validierung des
gewünschten Elementes einsetzt. Die Dokumentation unter
Generischer Validator
wurde entsprechend erweitert.
-
Die Methode validateNumber() der Klasse myValidator validiert
nun auch negative und fließkomma Zahlen als korrekte Nummern. Zur Validierung wird nun die
PHP-Funktion is_numeric() eingesetzt.
-
Wie angekündigt wurde die Methode getFormElementsByType() aus der Klasse
html_taglib_form entfernt.
-
Das Framework besitzt nun ein drei neue Module: captcha, genericormapper
und usermanagement. Das Modul captcha kommt bereits beim Gästebuch
zum Einsatz um SPAM zu vermeiden. Die Dokumentation des neuen Moduls findet sich unter
CAPTCHA-Taglib.
Das Modul genericormapper ist eine OR-Mapper-Komponente, die es ermöglicht, Objekte
auf generische Weise in einer relationalen Datenbank ablegen zu können. Die Dokumentation
zum im beta-Status befindlichen Modul findet sich unter
Generischer OR-Mapper.
Das Modul usermanagement basiert auf dem generischen OR-Mapper und implementiert ein
allgemeingültiges Benutzer-, Gruppen- und Rollen-Management. Auch diese Komponente befindet
sich noch im beta-Stadium. Die Dokumentation zu diesem Modul ist noch in Bearbeitung.
-
An der DEMO-Webseite wurden Korrekturen hinsichtlich neuer Features und Texte vorgenommen.
-
Bugfix in der Sitemap: die englischen Seiten wurden bisher mit einem falschen Parameter verlinkt.
-
Die Download-Ressourcen des Tutorials
Webseite erstellen
wurden auf die Version 1.7 migriert. Zum Betrieb des Beispiels muss jedoch nun das passende
codepack-Release heruntergeladen werden. Hinweise dazu finden sich im README.
-
Hinzufügen der Methoden
- addFormContentBeforeMarker()
- addFormContentAfterMarker()
- addFormElementBeforeMarker()
- addFormElementAfterMarker()
zur Klasse html_taglib_form. Damit ist es nun möglich, Formulare komfortabel
dynamisch zu erstellen. Weiterhin wurde die Methode addFormElement() hinsichtlich
der neuen Logik zur Erstellung von dynamischen Formularelementen angepasst. Die Dokumentation
wurde im Kapitel Formulare um den Bereich
Dynamische Formulare
ergänzt. Details zur Feature-Diskussion können dem Foren-Thread
html_taglib_placeholder gesucht
entnommen werden.
-
Komplette Dokumentation wurde hinsichtlich Sprungmarken überarbeitet. Jede Dokumentationsseite
verfügt nun über eine Quicknavi.
Die Dateien mit dem Namen adventure-codepack-* enthalten die Bibliotheken des Framework,
die Dateien mit dem Namen adventure-demopack-* die Bibliotheken plus einer Demo-Applikation.
Für Einsteiger wird empfohlen die Demo-Packs herunter zu laden. Release-Dateien mit dem Namen
adventure-configpack-* beinhalten einen Satz an Beispiel-Konfigurationen.
Dokumentation
Folgende Dokumentationen sind zu diesem Release vorhanden:
-
Online-Dokumentation: (Aktuelles Release)
-
Offline-Dokumentation:
Release-Packages
Version 1.6
Das Release 1.6 beinhaltet Bibliotheken für den Einsatz in PHP 4 und PHP 5. Diese
Version ist - genau wie die Vorgängerversion 1.5 - eine Kompatibilitätsversion, die noch
nicht alle Features von PHP 5 verwendet, zu dieser jedoch voll kompatibel ist. Getestet wurde mit
und ohne Kompatibilitätsmodus gegen die Versionen >= 5.2.1 und <= 4.4.6. Die Version
ist für den Einsatz auf Produktiv-Umgebungen freigegeben.
Wichtige Änderungen in der Version 1.6-*-php4_php5 sind:
Auch in diesem Release gelten die Hinweise der Version 1.5 zur Einbindung von Software-Komponenten
per import()!
Die Dateien mit dem Namen adventure-codepack-* enthalten die Bibliotheken des Framework,
die Dateien mit dem Namen adventure-demopack-* die Bibliotheken plus einer Demo-Applikation.
Für Einsteiger wird empfohlen die Demo-Packs herunter zu laden. Release-Dateien mit dem Namen
adventure-configpack-* beinhalten einen Satz an Beispiel-Konfigurationen.
Dokumentation
Folgende Dokumentationen sind zu diesem Release vorhanden:
-
Online-Dokumentation: (Aktuelles Release)
-
Offline-Dokumentation:
Release-Packages
Version 1.5
Das Release 1.5 beinhaltet Bibliotheken für den Einsatz in PHP 4 und PHP 5. Diese
Version ist - genau wie die Vorgängerversion 1.4 - eine Kompatibilitätsversion, die noch
nicht alle Features von PHP 5 verwendet, zu dieser jedoch voll kompatibel ist. Getestet wurde mit
und ohne Kompatibilitätsmodus gegen die Versionen >= 5.2.1 und <= 4.4.6. Die Version
ist für den Einsatz auf Produktiv-Umgebungen freigegeben. Der Fokus des Releases liegt
auf der Übersetzung der Dokumentation und der Tutorials ins Englische.
Wichtige Änderungen in der Version 1.5-*-php4_php5 sind:
-
Installation und Konfiguration eines Deutsch- und Englisch-spachigen Supportforums. Das Forum
kann unter
http://forum.adventure-php-framework.org/de
erreicht werden.
-
Test der UTF-8-Verarbeitung der Framework-Komponenten. Der Test wurde im Rahmen der Entwicklung
einer Backend-Applikation für die Streaming-Server-Verwaltung
(http://streamadmin.nmm.de.nmm.de) erfolgreich durchgeführt. Das Programm basiert
auf der Version 1.4 mit allen verfügbaren Patches.
- Erweiterung mehrerer Applikationen auf Mehrsprachigkeit.
- Übersetzung der Dokumentation ins Englische.
-
Übersetzung der Tutorials ins Englische. Hier sind noch die beiden Tutorials
Kontaktformular und Gästebuch offen.
- Einführung eines zweisprachigen Menüs.
-
Bereinigung der Methode isButtonPushed() aus der Klasse
baseController. Die Funktionalität steckt komplett in den Formular-TagLibs.
-
Erweiterung des frontcontrollerLinkHandler um die Methode
generateURLParams() um ein Parameter-Array für die Verwendung mit der
Methode generateLink() aus den Informationen Namespace, Action-Name und einem
Parameter-Satz generieren zu können. Eine detaillierte Dokumentation findet sich unter
FrontController, Kapitel 1.4.3
erreicht werden.
-
Das Bugtacking wurde auf das Forum verlagert. Bugs bitte zukünftig unter
http://forum.adventure-php-framework.org/de/viewforum.php?f=8
berichten.
-
Das neue Release enthält nun eine
Klassenreferenz der wichtigsten
Tools des Frameworks. Hier finden Sie Möglichkeiten der Verwendung sowie Anwendungsbeispiele.
-
CAPTCHA-SPAM-Schutz für das Kommentar-Modul: das Kommentar-Modul wurde um einen SPAM-Schutz
via CAPTCHA erweitert, da dieses häufig zum Ziel vom SPAM geworden ist. Hierzu wurde die
Anwendung um eine FrontController-Action erweitert worden, die sich um die Auslieferung des
Bildes kümmert und die Busines-Schicht wurde um das Handling des CAPTCHA-Strings angepasst.
- Die Roadmap wurde üerarbeitet.
-
Die MySQLHandler-Komponente wurde um die öffentliche Methode escapeValue()
erweitert, die zum escapen von Zeichenketten herangezogen werden kann, die später in MYSQL-
Statements verwendet werden.
-
Die Bugfixes für FrontController und frontcontrollerLinkHandler
wurden komplett in das Release übernommen.
-
Bugfix für das Kontaktformular wie im Forum unter
http://forum.adventure-php-framework.org/de/viewtopic.php?f=8&t=19
beschrieben.
-
Änderungen am bbCodeParser, damit FrontController-Auslieferung von Bildern
unterstützt wird und Bugfixes wegen falscher Generierung der FrontController-Action-Links
im non-rewrite Modus.
-
Erweiterung des stringAssistant um die Methode generateCaptchaString
zur Generierung eines CAPTCHA-Strings beliebiger Länge.
- Überarbeitung der README-Dateien im adventure-demopack-*.
- Allgemeine Bugfixes und Performance-Verbesserungen.
Auch in diesem Release gelten die Hinweise der Version 1.4 zur Einbindung von Software-Komponenten
per import()!
Die Dateien mit dem Namen adventure-codepack-* enthalten die Bibliotheken des Framework,
die Dateien mit dem Namen adventure-demopack-* die Bibliotheken plus einer Demo-Applikation.
Für Einsteiger wird empfohlen die Demo-Packs herunter zu laden.
Dokumentation
Folgende Dokumentationen sind zu diesem Release vorhanden:
-
Online-Dokumentation: (Aktuelles Release)
-
Offline-Dokumentation:
Release-Packages
|
|
|
|