Ausblick auf die nächste Version
Aufgabe | Typ | Fortschritt |
---|---|---|
Vereinfachung der Pluginkonfiguration | Aktualisierung | [fertig] |
Code-Rework zur Verbesserung der Standardkompatiblität | Aktualisierung | [fertig] |
XLIFF und UTF8-Unterstützung | neue Features | [fertig] |
Verwendung virtueller Laufwerke vereinfachen | Aktualisierung | [fertig] |
Abonnements von Ereignissen vereinfachen | Aktualisierung | [fertig] |
Formulargenerator überarbeiten | Aktualisierung | [fertig] |
Handbuch erweitern | Aktualisierung | [wird bearbeitet] |
Installationsroutine aktualisieren | Aktualisierung | [geplant] |
30.11.2016 - Version 3.0.2
stable version
Updates
- volle Kompatibilität zu PHP 5.6
- Umstellung der Anwendung auf UTF-8 als Standardencoding
- bei Upgrade bitte unbedingt Datendateien / Datenbanktabellen auf UTF-8 ändern, damit die Unicodeunterstützung voll funktionstüchtig ist
18.03.2015 - Version 3.0.1
stabile Version
Aktualisierungen
- Bugfix Datenbanksetup: Problem mit Auto-Sync zur Datenbank beim Deployment behoben
- Bugfix Nutzeradministration: Suche nach Nutzernamen berücksichtigt Collations die nicht Case-insensitive sind
- Änderung Sprachdateien: Text "Benutzer abmelden" ersetzt durch "Logout".
- Konfiguration für Updates auf "stable" geändert
- Aktualisierung: einige Deprecated-Warnungen korrigiert, welche abwärtskompatibel sind
- Aktualisierung: Calltime pass-by-reference ersetzt, um Kompatibilität mit PHP 5.4.x und höher wieder herzustellen
- Bugfix Sprachdateien: Zeichen maskiert um Kompatibilität zur neuesten PCRE-Bibliothek zu wieder herzustellen
- Änderung Formulargenerator: Fremdschlüsselspalten dürfen jetzt beliebige skalare Typen haben
- Neues Feature Db-Strukturdateien: Spalten vom Typ "TIME" können im Element "DISPLAY" jetzt das boolsche Element "WITH_TIME" haben. Wenn DISPLAY.WITH_TIME "true" ist, dann wird beim Editieren des Datensatzes eine Zeitauswahl angezeigt. Default ist "false".
- Bugfix Db-Stream: False-Positive korrigiert. Funktion query() erkennt Semikola in Strings nicht mehr versehentlich als potentielle SQL-Injection.
- Änderung Db-Creator: Die MySQL-Syntax zur Auswahl der Datenbankengine von "TYPE=[Name]" auf "ENGINE=[Name]" geändert. Die Schreibweise "TYPE" ist deprecated.
08.06.2011 - Version 4.0.0 Beta 2
nur zu Testzwecken
Aktualisierungen
- ACHTUNG: Diese Version erfordert PHP 5.3
- komplette Überarbeitung der Codebasis
- verbesserte Performance
- verbessertes Caching
- Plugins können über Annotations gesteuert werden
- Unterstützung für neues XML-Format zur Modellierung von Datenbanken
- Unterstützung für OASIS XLIFF-Standard und UTF8 für Übersetzungen
Bekannte Probleme
- aktuell wird nur MySQL unterstützt
- Dokumentation noch nicht vollständig aktualisiert
- Installationsassistent noch nicht verfügbar
- Plugin Db-Tools: Import/Export von/nach DbDesigner und MDB2-Schema noch nicht verfügbar
- Plugin Calender: funktioniert zur Zeit noch nicht mit der neuen JQuery-Version
04.01.2009 - Version 3.0
stabile Version
Aktualisierungen
- Datenbanksetup: Synchronisation der Datenbanken ist jetzt optional (im Expertenmodus)
- SDK: Die Datenbankwerkzeuge wurden in ein eigenes Plugin (db_tools) exportiert. Dies erlaubt eine übersichtlichere Nutzeroberfläche.
- Änderungen in Templates:
- Template 'entry.html' (guestbook): Vor Kommentaren wird das Wort "Kommentar" und eine Grafik angezeigt.
- Änderungen in Sprachdateien:
- nur relevant für Englisch:
- LANGUAGE.2 (guestbook.config) Rechtschreibung
- LANGUAGE.4 (guestbook.config) Ausdruck
- LANGUAGE.26 (guestbook.config) Ausdruck
- LANGUAGE.28 (guestbook.config) Rechtschreibung
- neu:
- LANGUAGE.DATABASE.21 (admin.config)
- LANGUAGE.DATABASE.22 (admin.config)
- admin.config wurde geteilt, neu: db_tools.config
- nur relevant für Englisch:
- Handbuch erweitert und aktualisiert
24.12.2008 - Version 3.0.0RC2
Update nur erforderlich falls Fehler auftreten
Aktualisierungen
- Handbuch aktualisiert, Texte, Abbildungen und Tutorials sind jetzt auf dem neuesten Stand
- Code-Templates für ConTEXT und PSPad aktualisiert
- auf neue Smarty-Version aktualisiert
- Änderungen in Templates:
- Template 'index.html': Auswahlmenü für Sprache zeigt ab dieser Version einen Text statt eines Icons (einzelne nicht-britische Nutzer haben darauf hingewiesen, dass Nutzer es unangebracht finden könnten auf eine britische Flagge klicken zu müssen, um die Seite auf Englisch angezeigt zu bekommen)
- Änderungen in Sprachdateien:
- neu: LANGUAGE.TITLE_LANG (default.config)
Bugfix/Wartung
- Template-Funktion [%embeddedTags%] enthielt den Wert "smilies" nicht in der Liste der Standardtags. Hinweis an Entwickler: durch diese Korrektur werden Steuerelemente zum Einbetten von Icons ab dieser Version auch zu bestehenden Formularen automatisch hinzugefügt, falls diese die Standardtags verwenden. Sollte dies nicht erwünscht sein, definieren Sie über den Parameter "hide" eine Ausschlussliste.
17.11.2008 - Version 3.0.0RC1
Update nur erforderlich falls Fehler auftreten
neue Features
- vereinfachte Entwicklung von AJAX-Anwendungen
- neues Gästebuch-Plugin (verwendet neue AJAX-Techniken)
- bevorzugte Sprache des Nutzers wird nun automatisch erkannt
- neues, benutzerfreundlicheres Administrationsmenü
Aktualisierungen
- Template-Funktion [%embeddedTags show="taglist"%] akzeptiert als Parameter den Wert "smilies". Dadurch ist es nicht mehr notwendig ein Steuerelement zum Einfügen von Smilies separat in Formulare einzubinden.
- Formulare wurden angepasst und Smilies als Standardfunktion in die normale Menüleiste integriert.
- Standardgröße des AJAX-Ladesymbols von "big" reduziert auf "medium".
- Der Code für den Selbstdiagnosemodus wurde in ein eigenes Plugin ausgelagert. Es ist ein Administratorlogin notwendig um die Diagnose zu starten.
- Die Rückfalloption für die verwendete Sprachdatei wird nicht mehr über die Profilverwaltung im Administrationsmenü konfiguiert, sondern über die Systemkonfiguration (system.config). Die Option wird selten benötigt und belastet die Konfigurationsoberfläche mit unnötigen Informationen.
- JavaScript: neue globale Variable window.yanaLanguage gibt aktuell gewähltes Sprachpaket an.
- RSS-Plugin: verbesserte GUI
- SDK:
- Generator für AJAX-Skripte aktualisiert.
- Behandlung von Logos und Icons aktualisiert
- Änderungen in Templates:
- Plugin 'guestbook': alle Dateien
- Template 'message.html': Benennung der Variablen vereinheitlicht, Verhalten ist nun identisch zu 'stdout.html'
- Template 'configuration/index.html': neues Konfigurationsmenü
- Alle Skins wurden aktualisiert. Die Pakete "blue" und "natural" wurden komplett neu erstellt.
- Änderungen in Sprachdateien:
- neu:
- LANGUAGE.7 (guestbook.config)
- LANGUAGE.16 (guestbook.config)
- LANGUAGE.17 = (guestbook.config)
- LANGUAGE.PLUGIN.TITLE.DIAGNOSTICS = (default.config)
- LANGUAGE.PLUGIN.DESCRIPTION.DIAGNOSTICS = (about.config)
- LANGUAGE.ADMIN.9 = (admin.config)
- LANGUAGE.INDEX_14 = (admin.config)
- LANGUAGE.INDEX_15 = (admin.config)
- LANGUAGE.INDEX_16 = (admin.config)
- umbenannt: PROGRAM.TITLE = LANGUAGE.PROGRAM_TITLE (default.config)
- entfällt:
- LANGUAGE.0 (default.config) wird ersetzt durch: LANGUAGE.OK
- LANGUAGE.INDEX_1 (admin.config)
- LANGUAGE.INDEX_2 (admin.config)
- LANGUAGE.TITLE_SHOW (guestbook.config)
- LANGUAGE.TITLE_NEW (guestbook.config)
- neu:
- Installer aktualisiert.
Bugfix/Wartung
- Tippfehler im Reporting beseitigt. Dieses konnte dazu führen, dass Fehlermeldungen unabsichtlich unterdrückt wurden.
- Blog-Plugin: zwei überflüssige Datenfelder beseitigt
- Form-Generator: GUI-Bug in Kalendersteuerelement beseitigt
- Fehler in Bezug auf Kompatibilität zu PHP 4 beseitigt
- Schreibfehler beseitigt, Standardzeichensatz für Mailversand von "8859-1" auf "ISO-8859-1" geändert
20.10.2008 - Version 2.9.10
Update nur erforderlich falls Fehler auftreten
neue Features
- Überprüfung auf Updates
Aktualisierungen
- Handbuch aktualisiert
- Änderungen in Templates:
- globale Variable $BESCHREIBUNG umbenannt in $DESCRIPTION (index.html)
- Änderungen in Sprachdateien:
- neu: LANGUAGE.INDEX_13 = Beschriftung für Update-Link (admin.config)
- neue Konstanten:
- YANA_IS_STABLE = true für stabile und false für Beta-Versionen (library.php)
- DEFAULT.UPDATE_SERVER = URL des Yana Update-Server (system.config)
Bugfix/Wartung
- DB Reverse Engineering
- lesen der DDL über DBStream für MySQL korrigiert (fehlender Rückgabewert)
- bei Spalten vom Typ unsigned TinyInt(1) (die als Typ Boolean interpretiert werden) wird für die Eigenschaft "unsigned" keine E_USER_NOTICE mehr erzeugt
- Compatibility: File-Locking, CHMOD mit UMask
- Kompatibilität verbessert für Linux-Systeme ohne Unterstützung für File-Locking. Dies konnte dazu führen, dass das Programm nicht korrekt funktioniert.
- Kompatibilität verbessert für Unix- und Linux-Systeme, welche eine UMask benutzen. Dies ist eine systemspezifische Einstellung, welche Auswirkungen auf die Vergabe von Nutzerrechten hat. Dies konnte dazu führen, dass das Programm nicht korrekt funktioniert.
- DB Query Builder API
- Fehler beseitigt bei Verwendung von ORDER BY in einer Abfrage über mehrere Tabellen, wenn die Zielspalte mehrdeutig war.
26.03.2008 - Version 2.9.9
Update sollte durchgeführt werden
Aktualisierungen
- auf neue Smarty-Version aktualisiert
- Handbuch aktualisiert
Bugfix/Wartung
- Eine Änderung in der zuletzt veröffentlichten PHP 5 Version hat eine Anpassung der Smarty-Konfiguration notwendig gemacht. Ohne diese Anpassung stoppt die Template Engine das Programm unter PHP 5.2.5. Das Problem wurde in den Versionen 2.9.1 und 2.9.8 nachträglich behoben.
- Import von Projekten aus DBDesigner 4 wurde verbessert
- verschiedene kleinere Fixes
11.11.2007 - Version 2.9.8
Testversion
neue Features
- DB-API:
- es sind nun Änderungen des Schemas zur Laufzeit möglich
- Änderungen des Schemas werden automatisch im ChangeLog protokolliert
- es ist nun möglich SQL-Standardanweisungen zum Initialisieren der Datenbank festzulegen
- SDK:
- Import von DBDesigner 4 - Projekten
- Import von PEAR MDB2 - Schemadateien
- Installationspaket aktualisiert
- überarbeitetes PCL-ZIP Modul kann optional als Bibliothek eingebunden werden
- Formularkomponente erzeugt nun Kalender für Tabellenspalten vom Typ "time"
- neues Tutorial: Yana PHP-Framework mit Server2Go auf CD/DVD verwenden
- Lizenzänderung: das Framework ist ab Version 2.9.8 unter der GNU GPL verfügbar
Aktualisierungen
- Skins aktualisiert
- neue Funktionen:
- DbServer::getConnection() Alias für DbServer::get()
- DbServer::getDsn() liefert die aktuellen Verbindungseinstellungen
- DbStream::getDsn() liefert die aktuellen Verbindungseinstellungen
- DbStream::getErrorMessage() liefert den Text der letzten Fehlermeldung
- DbStructure::renameTable() Umbenennen einer Tabelle im Schema
- DbStructure::dropTable() Entfernen einer Tabelle aus dem Schema
- DbStructure::renameColumn() Umbenennen einer Spalte im Schema
- DbStructure::dropColumn() Entfernen einer Spalte aus dem Schema
- DbStructure::setInit() Festlegen von Standardeinträgen für eine Tabelle im Schema
- DbStructure::getInit() Lesen der Standardeinträge einer Tabelle im Schema
- DbStructure::getPrecision() Anzahl der Nachkommastellen (nur Typ Float/Double)
- DbStructure::setLength() Erlaubt nun auch das Festlegen der Zahl der Nachkommastellen für Typ Float/Double
- DbStructure::getListOfFiles() (statisch) liefert eine Liste aller gespeicherten Datenbankschemata
- DbStructure::getChangelog() Lesen des (automatisch erstellten) "ChangeLog" eines Schemas
- DbStructure::dropChangelog() Leert das ChangeLog des Schemas
- DbExtractor::createXML() erlaubt das Erstellen von Backups der Datenbank
- Skin::setLanguage() ändert die Spracheinstellungen für ein Template
- Skin::setScript() ändert die Standardskripte für ein Template
- Skin::setStyle() verknüpft ein CSS-Stylesheet mit einem Template
- Yana::clearCache() (statisch) Alias für SmartTemplate::clearCache()
- Änderungen in Sprachdateien:
- neu:
- LANGUAGE.ANY (default.config)
- LANGUAGE.TAGS.JS.BR (default.config)
- LANGUAGE.PLUGIN.TITLE.CATALOGUE (default.config)
- LANGUAGE.SDK.STEP5 (sdk.config)
- LANGUAGE.SDK.STEP5_3 (sdk.config)
- LANGUAGE.SDK.FIELD14 (sdk.config)
- LANGUAGE.SDK.FIELD15 (sdk.config)
- LANGUAGE.SDK.FIELD16 (sdk.config)
- LANGUAGE.SDK.FIELD17 (sdk.config)
- LANGUAGE.SDK.FIELD18 (sdk.config)
- LANGUAGE.HELP.11 (sdk.config)
- LANGUAGE.HELP.12 (sdk.config)
- LANGUAGE.HELP.13 (sdk.config)
- LANGUAGE.HELP.14 (sdk.config)
- aktualisiert:
- LANGUAGE.HELP.5 (sdk.config)
- neu:
- neue Template-Funktionen:
- sizeOf() liefert Anzahl der Einträge eines Arrays
- urlEncode() kodiert einen Parameter für die Angabe in einer URL
- Hinweis: die Funktion untaintInput() erlaubt nun das Angeben der Anzahl der Nachkommastellen für die Datentypen "float" und "double" als zusätzlichen Parameter. Details und Beispiele finden Sie in der API-Dokumentation.
- API-Dokumentation erweitert und aktualisiert
- DB-API:
- DbQuery::setWhere() erlaubt die Verwendung des Operators "REGEXP". Achtung! Die unterstützte Syntax kann je nach verwendetem DBMS unterschiedlich sein.
- DbServer erkennt bei Verwendung von Server2Go den MySQL-Port automatisch
- DbStructure mit verbesserter Erkennung von Datentypen beim Reverse-Engineering eines Datenbankschemas
- Dir::copy erlaubt nun die Angabe eines selektiven Verzeichnisfilters, optional auch als regulären Ausdruck
- bei CD/DVD-Installationen verbleiben "Blobs" (d.h. Artefakte, wie Bilder und Binärdateien) nun auf der CD und werden nicht mehr in den Cache kopiert
- Formulargenerator listet Formularfelder mit Eingabefehlern nun automatisch auf - muss nicht mehr von Hand erledigt werden
- ~ 5% bessere Performance
Bugfix/Wartung
- AJAX Javascript-Klasse funktioniert nun auch in dem Sondernfall, das von Hand eine AJAX-Seite in "system.config" als Startseite eingetragen wird.
- verschiedene Korrekturen am Formular-Modul
- automatischer SQL-Generator erzeugt nun korrekte Längenbegrenzung für Typ "float" in MySQL
- Fehler in PHP4-Version der Funktion String::replace() korrigiert
- Fehler bei ID-Quoting für MSSQL-Server korrigiert
- Kompatibilitätsfix für Identity-Feature in MSSQL-Server 2005: unterstützt nun automatisch auch IDENTITY_INSERT
Version 2.9.7
geschlossene (nicht öffentliche) Testversion
16.08.2007 - Version 2.9.6
Testversion
neue Features
- SDK: neue Funktion zum Export der Struktur einer Datenbank als SQL-Datei
- Templates: automatische Generierung für vertikale und (neue) horizontale Baummenüs
- Formulare prüfen automatisch vor dem Versenden die Syntax von emb. Tags in Textfeldern
- DB-API: verbesserte automatische Auflösung von Vererbungsbeziehungen zwischen Tabellen.
- Erbt eine Tabelle von einer Elterntabelle, so werden alle Anfragen auf die Kindtabelle automatisch als Abfragen auf einem virtuellen "updateable View" behandelt, welcher den gesamten Vererbungspfad umfasst. Der Vererbungspfad wird von der API automatisch rekursiv bestimmt.
- Ein aufwendiges Auflösen von Vererbungsbeziehungen in der Anwendung, oder komplizierte, handgeschriebene "Table Joins" sind damit nicht mehr nötig. Stattdessen genügt ein Aufruf der Form $db->get('foo') um die gesamte Tabelle inklusive der geerbten Eigenschaften abzurufen.
- Unterstützung der Eigenschaften "Unsigned" und "Zerofill" für alle DBMS (nicht nur MySQL).
- Unterstützung des Datentyps "Set" für alle DBMS (wird emuliert falls nicht verfügbar).
- DB-Backup: über das Administrationsmenü ist der Export und Download der Datenbanken, inklusive der Datenstruktur, als SQL-Datei möglich
Aktualisierungen
- neuer System-Cache eingeführt, welcher die Zeit zum Hochfahren der Kernkomponenten auf Produktivsystemen um bis zu 90% reduziert, was sich je nach Auslastung für den Nutzer durch kürzere Ladezeiten von bis zu 0.3 s auswirken kann.
- zusätzlich durch Optimierung etwa 10% bessere Performance
- SDK: verbessertes Reverse-Engineering für MySQL Datenbanken. Berücksichtigt ein gesetztes Datenbank-Präfix und erkennt nun auch Default-Werte, Foreign keys, Profile Constraints, Kommentare und Indizes.
- neue JavaScript-Funktionen:
- yanaSmlDecode() ermöglicht es AJAX-Anwendungen, alternativ zu XML, mit den einfacher strukturierten SML-Strings zu arbeiten
- yanaAddEventListener() erlaubt es, bequemer als zuvor mehrere Routinen zur Ereignisbehandlung an Gruppen von Tags zu binden
- yanaCheckEmbTags() prüft Werte in Eingabefelder auf fehlerhafte EmbTags und liefert eine genaue Fehlerbeschreibung
- yanaGetElementsByClassName() liefert eine Liste aller HTML-Knoten, deren class-Attribut einen bestimmten Wert hat
- neue Funktionen:
- String::htmlSpecialChars() Implementierung mit den in der PHP-Version 5.2.3 neu hinzugekommenen Parametern für PHP4 und ältere Versionen von PHP5
- DbQuery::getParent() bei einer Vererbungsbeziehung zwischen zwei Tabellen, liefert diese Funktion die Elterntabelle
- DbQuery::getParentByColumn() liefert in einer Vererbungskette den Namen jener Tabelle, in welcher eine Spalte definiert wurde
- DbQuery::setColumns() zum Setzen mehrerer Spalten für eine "SELECT"-Anweisung in einem einzigen Aufruf
- DbQuery::getColumns() liefert eine Liste aller ausgewählten Spalten
- DbStream::getTableInfo() liefert detailierte Informationen über die Struktur einer Tabelle
- neue Klasse DbExtractor erlaubt das einfache Erstellen von Backups der Datenbank
- Klasse "StructureFile" wurde umbenannt zu "DbStructure", um der Namenskonvention des Frameworks besser gerecht zu werden, die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Änderungen in Sprachdateien:
- Übersetzungen für Plugin "sdk" wurden aktualisiert
- neu:
- LANGUAGE.SDK.UTILITIES (sdk.config)
- LANGUAGE.SDK.STEP3_1_FORWARD (sdk.config)
- LANGUAGE.SDK.FIELD12 - LANGUAGE.SDK.FIELD17 (sdk.config)
- LANGUAGE.HELP.9 - LANGUAGE.HELP.13 (sdk.config)
- LANGUAGE.TAGS.JS
- LANGUAGE.HELP.26 (admin.config)
- LANGUAGE.DATABASE.15 - LANGUAGE.DATABASE.20 (admin.config)
- aktualisiert:
- LANGUAGE.HELP.5 (sdk.config)
- LANGUAGE.HELP.6 (admin.config)
- LANGUAGE.HELP.25 (admin.config)
- geänderte Template-Funktionen:
- printUnorderedList Argument "layout" akzeptiert den Wert 3, zum Erzeugen horizontaler Menüs
- Template-Designer können das Layout der neuen horizontalen Baummenüs über die folgenden CSS-Klassen beeinflussen:
- ul.hmenu
- ul.hmenu li.entry
- ul.hmenu li.entry a
- ul.hmenu li.hmenu
- ul.hmenu li.hmenu div.menu_head
- ul.hmenu li.hmenu ul.hmenu
- ul.hmenu li.menu_hover
- DbStructure:
- Datenbanken dürfen ein neues Element "description" besitzen
- Handbuch aktualisiert
Bugfix/Wartung
- fehlende englische Übersetzungen ergänzt für die Texte: LANGUAGE.BUTTON_SAVEASNEW, TEXT.SUCCESS
- Rechtschreibfehler in englischer Übersetzung beseitigt
Hinweise
- Der neu eingeführte System-Cache kann bei Bedarf über die Konstante YANA_CACHE_ACTIVE deaktiviert werden.
- Für virtuelle Verzeichnisse ändert sich die Belegung der Eigenschaft "AUTOMOUNT" von "yes" bzw. "no" auf "true" bzw. "false". Sollten Sie eigene virtuelle Verzeichnisse erstellt haben, aktualisieren Sie bitte deren Konfiguration.
- Template-Designer verwenden zum Erzeugen der neuen horizontalen Menü den folgenden Befehl
[%printUnorderedList value=$foo keys_as_href=true layout=3%]
18.07.2007 - Version 2.9.5
Testversion
neue Features
- Protokoll: es ist Administratoren nun möglich, sich das Systemprotkoll automatisch per Mail zuschicken zu lassen
- Suchmaschine:
- das Skript zum Erstellen des Suchindex wurde von Java nach PHP portiert und kann nun auch über einen Cronjob automatisch gestartet werden. Die Verwendung der Offline-Indexierung mit dem Java-Indexer ist alternativ weiterhin möglich.
- offline erstellte Index-Dateien können über ein Formular im Administrationsmenü auf den Server übertragen werden. Ein Upload via FTP ist nicht mehr zwingend erforderlich.
- EmbTags: es ist nun möglich, für jedes Profil zusätzliche eigene EmbTags zu definieren
- Erweiterungen: für das Schreiben eigener Plugins stehen für die Editoren ConTEXT und PSPad PHP-Vorlagen mit Tastenkürzeln aller Yana-Funktionen, sowie PHPDoc-Kommentare zur Verfügung. Die Erweiterungen liegen dem Handbuch bei.
- Formulare:
- alle automatisch generierten Formulare bieten nun eine Filterfunktion
- Edit-Formulare bieten nun die Option, einen editierten Eintrag unter anderem Namen als neuen Datensatz zu speichern
- API-Dokumentation beinhaltet eine Beschreibung der vom Framework bereitgestellten Funktionen und Klassen für JavaScript
Aktualisierungen
- JS-Baummenü: geöffnete und geschlossene Menüs bleiben während der Sitzung gespeichert und werden beim erneuten Aufrufen der Seite wiederhergestellt
- Datenbank: es ist nun möglich, zusätzlich zur Eigenschaft "action", welche einen Link auf einem Datensatz erzeugt, die Eigenschaften "title" und "text" zu definieren, welche es gestatten, einen Text und einen Tooltip für den Link festzulegen.
- PlugIns für ConTEXT und PSPad aktualisiert
- Klasse "InputStream" wurde umbenannt zu "FileSystemResource", die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Klasse "SecureInputStream" wurde umbenannt zu "FileReadonly", die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Klasse "SecureFileStream" wurde umbenannt zu "File", die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Klasse "DirStream" wurde umbenannt zu "Dir", die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Klasse "DisplayUtility" wurde umbenannt zu "SmartUtility", die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Klasse "Layout" wurde umbenannt zu "SmartUtility", die alte Klasse ist aus Kompatibilitätsgründen noch vorhanden, sollte jedoch nicht mehr verwendet werden.
- Performanz der Synchronisation zwischen DBS und FileDb wurde verbessert. Je nach Art und Umfang der erforderlichen Synchronisation verkürzt dies die Wartezeit um 0% - 30% für diese Operation.
- API-Dokumentation im neuen Design
- neue Funktion DbStream->update()
- neue Funktion DbStream->insertOrUpdate()
- neue Funktion DbStream->updateOrInsert() (Alias: DbStream->insertOrUpdate())
- Funktion DbStream->insert() geändert. Diese Funktion bearbeitet nun ausschliesslich Insert-Operationen und führt kein Update aus, wenn der Datensatz bereits existiert.
- neue Funktion DbStream->commit() (Alias: DbStream->write())
- neue Funktion FormCreator->hasFilter()
- neue Funktion FormCreator->allowNewEntry()
- AJAX: simultaner Aufruf und simultanes Verarbeiten mehrerer konkurrierender Anfragen mit paarweise verschiedenen Funktionen zur Ereignisbehandlung möglich. Neuer Dispatcher koordiniert automatisch die Verteilung der Response-Objekte an die Funktionen, für welche diese angefordert wurden. Die Umsetzung erfolgt automatisch. Änderungen am Quelltext bestehender Skripte sind nicht erforderlich.
- Templates: Dokumente in HTML 4.1 wurden durch Dokumente in XHTML 1.0 Syntax ersetzt
- bessere Unterstützung für IE 7
- Template-Designer können jede Spalte einer vom Formulargenerator erzeugten Tabelle via CSS separat gestalten. Dazu stellt das Programm die folgenden neuen CSS-Klassen zur Verfügung:
- .gui_generator_even_row
- .gui_generator_odd_row
- .gui_generator_new_row
- .gui_generator_{table}_{column} (table= Name der Tabelle, column=Name der Spalte)
- neue JavaScript-Funktionen:
- yanaSetCookie()
- yanaGetCookie()
- yanaXmlDecode()
- Änderungen in Sprachdateien:
- neue Fehlermeldung: 'field_missing' mit Parameter 'field'
- neue Fehlermeldung: 'field_invalid' mit Parameter 'field'
- neu:
- LANGUAGE.BUTTON_SAVEASNEW
- LANGUAGE.WHERE
- LANGUAGE.MENU
- Übersetzungen für Plugin "search" wurden aktualisiert
- SDK: Beschriftung der Links im generierten Seitenmenü besitzen nun englische und deutsche Übersetzung: LANGUAGE.MENU.*
Bugfix/Wartung
- Funktion dirlist(): Interpretation des Parameters $filter war ungenau, wenn der Paramenter mehr als einen Dateityp übergab
- Template-Funktion preview(): Interpretation des Parameters $width korrigiert
- Funktion Dir->copy() funktioniert nun auch mit absoluten Pfadangaben unter Win32
- CDROM-Version (betrifft nur Win32-Plattform), Pfadangaben der virtuellen Verzeichnisse der Plugins auf Konfigurationsdateien des Frameworks werden nun auch bei absoluten Pfadangaben unter Windows korrekt aufgelöst
Hinweise
- Funktion DbStream->insert() geändert. Diese Funktion bearbeitet nun ausschliesslich Insert-Operationen und führt kein Update aus, wenn der Datensatz bereits existiert. Die ursprüngliche Aufgabe dieser Funktion übernimmt zukünftig die Funktion DbStream->insertOrUpdate(). Es gibt für ältere Skripte einen Kompatibilitätsmodus, welcher das Verhalten der Versionen 2.9.4 und älter simuliert. Um diesen zu aktivieren, setzen Sie in der Datei "library.php" den Wert der Konstante YANA_DB_COMPAT_INSERT auf true.
12.06.2007 - Version 2.9.4
Testversion
neue Features
- Default-Skin erneuert, verbesserte optische Darstellung
- Formulare, welche in verschiedenen Darstellungen verfügbar sind, bieten nun eine Liste mit Vorschau
Aktualisierungen
- Struktur der Selbstdiagnosedatei verbessert, durch Einführung von XML und Semantic-Tagging, um Anwendungen von Dritten einen einfacheren Zugang zu ermöglichen
- Spalten vom Typ "url" werden als anklickbare Hyperlinks präsentiert - beim Anklicken des Links wird der Nutzer informiert, dass er den Bereich der aktuellen Seite verlässt und wird gebeten, die Aktion zu bestätigen (juristische Gründe + Vermeidung unabsichtlicher Klicks)
- der HTML-code der Konfigurationsmenüs (Setup) wurde aufgeräumt und optimiert
- Klasse "GuiCreator" umbenannt zu "FormCreator", die Klasse "GuiCreator" ist "deprecated". Sie verbleibt vorübergehend noch aus Kompatibilitätsgründen im Paket, sollte jedoch nicht mehr verwendet werden.
- Konstanten GUI_*foo* umbenannt zu FORM_*foo* entsprechend dem neuen Namen der Klasse, die alten Bezeichnungen bleiben vorübergehend aus Kompatibilitätsgründen, sollten jedoch nicht mehr verwendet werden
- Neue Funktion FormCreator->createForm(). Diese Funktion gestattet es, zukünftig Datenbankformulare auch über eine OO-typische API direkt im PHP-Code zu erzeugen und als HTML zu exportieren.
- Templatefunktion "create" unterstützt das neue Argument "layout", welches es dem Entwickler (zur Laufzeit auch dem normalen Nutzer) gestattet zwischen verschiedenen Darstellungen des Formulars zu wählen, sofern mehrere verfügbar sind. Dadurch sind die Templates "view_seperated" und "view_details" ab sofort "deprecated" und sollten nicht mehr verwendet werden. Stattdessen verwenden Sie das Argument "layout" mit den Werten "1" und "2", sowie das Argument "template" mit dem Wert "view" (layout "0" entspricht der Standarddarstellung für das Tempate "view"). In Ergänzung dazu bietet das Layout "3" eine neue hinzugekommene Listenansicht, welche eine Zusammenfassung aller Tabellenzeilen als anklickbare Liste präsentiert. Das Anklicken der Zusammenfassung öffnet automatisch die Detailansicht (Layout "2").
- Warnhinweise für fehlgeschlagene Zusicherungen (Assertions) bieten nun ebenfalls einen Backtrace (betrifft nur Debugging)
- Databankstrukturdateien unterstützen die neue Spalteneigenschaft 'action'. Diese Eigenschaft bewirkt, dass der Formulargenerator an dieser Spalte einen anklickbaren Link erzeugt. Diese Erweiterung kann verwendet werden, um das Navigieren innerhalb von Tabellen zu vereinfachen. Zum Beispiel kann das Anklicken eines Fremdschlüssels den verknüpften Datensatz in der fremden Tabellen öffnen.
- Das SDK fügt die Eigenschaft 'action' bei Fremdschlüsseln automatisch hinzu.
- Databankstrukturdateien unterstützen den neuen semantischen Typ 'reference'. Die Werte von Spalten des Typs 'reference' werden nicht in generierten Formularen dargestellt, können jedoch mit der Eigenschaft 'action' kombiniert werden, um ein Äquivalent zu einem klassischen Pointer zu erstellen. Dies soll es Entwicklern erleichtern n:m Assoziationen zwischen Tabellen als anklickbare Links darzustellen.
- Formulare für die Nutzerverwaltung präsentieren sich mit einer erneuerten, verbesserten Oberfläche.
- Implementierung der PHP5-Funktion "http_build_query()" für PHP4 hinzugefügt.
- Das SDK fügt Icons für die Sitemap automatisch neuen Plugins hinzu.
- neue Funktion DbQuery::resetQuery()
- Die Referenzen einiger Übersetzungen wurden umbenannt um den Namenskonventionen des Frameworks besser zu entsprechen:
- TEXT.UNGENUEGENDE_RECHTE = TEXT.INSUFFICIENT_RIGHTS
- TEXT.FEHLER = TEXT.INPUT_MISSING
- TEXT.UNGUELTIGE_EINGABE = TEXT.INPUT_INVALID (alte Version bleibt aus Kompatibilitätsgründen vorhanden, sollte jedoch nicht mehr benutzt werden)
- TEXT.LOGIN_UNGUELTIG = TEXT.LOGIN_INVALID
- LANGUAGE.USER.OPTIONEN = LANGUAGE.USER.OPTION
- LANGUAGE.TITLE.KOMMENTAR_ERSETZEN = LANGUAGE.TITLE_UPDATE_COMMENT
- LANGUAGE.TITLE.KOMMENTAR = LANGUAGE.DESCR_COMMENT
- LANGUAGE.TITLE.DESCR_KOMMENTAR = LANGUAGE.DESCR_COMMENT
- LANGUAGE.TITLE_LOESCHEN (removed)
- LANGUAGE.DESCR_LOESCHEN (removed)
- LANGUAGE.TITLE_LISTE = LANGUAGE.TITLE_LIST
- LANGUAGE.TITLE_KOMMENTAR = LANGUAGE.TITLE_COMMENT
- LANGUAGE.TITLE_ABBRECHEN = LANGUAGE.TITLE_ABORT
- LANGUAGE.TITLE_ZURUECK = LANGUAGE.TITLE_PREVIOUS
- LANGUAGE.TITLE_VOR = LANGUAGE.TITLE_NEXT
- LANGUAGE.BESUCHER = LANGUAGE.VISITOR_COUNT
- LANGUAGE.DATUM = LANGUAGE.DATE_TIME
- LANGUAGE.LOESCHEN = LANGUAGE.BUTTON_DELETE_ONE
- LANGUAGE.SUCHE = LANGUAGE.BUTTON_SEARCH
- LANGUAGE.PFLICHTFELDER = LANGUAGE.MANDATORY
- LANGUAGE.JA = LANGUAGE.YES
- LANGUAGE.NEIN = LANGUAGE.NO
- LANGUAGE.ZURUECK = LANGUAGE.BUTTON_PREVIOUS
- LANGUAGE.VOR = LANGUAGE.BUTTON_NEXT
- LANGUAGE.SPEICHERN = LANGUAGE.BUTTON_SAVE
- LANGUAGE.ABSCHICKEN = LANGUAGE.BUTTON_SUBMIT
- LANGUAGE.ABBRECHEN = LANGUAGE.BUTTON_ABORT
- umbenannte Skin-Variablen:
- $BESUCHER = $VISITOR_COUNT
- einige CSS-Klassen wurden verändert, um den Namenskonventionen des Frameworks besser zu entsprechen:
- .nachricht = .guestbook_message (überführt vom globalen Namensraum in den lokalen Namensraum des Plugins "guestbook")
- .text = .guestbook_value (überführt vom globalen Namensraum in den lokalen Namensraum des Plugins "guestbook")
- .kopfzeile = .guestbook_head (nur Skin "minimal")
- .fusszeile = .guestbook_foot (nur Skin "minimal")
- .eintrag = .guestbook_entry (nur Skin "minimal")
- .embtag__space = .embtag_space (doppelter Buchstabe)
- .dataset (entfernt)
- .enrtyname = .guestbook_head (überführt vom globalen Namensraum in den lokalen Namensraum des Plugins "guestbook")
- .beschrifung = .label (alte Version bleibt aus Kompatibilitätsgründen vorhanden, sollte jedoch nicht mehr benutzt werden)
- .beschreibung = .description (alte Version bleibt aus Kompatibilitätsgründen vorhanden, sollte jedoch nicht mehr benutzt werden)
- .kommentar = .comment (alte Version bleibt aus Kompatibilitätsgründen vorhanden, sollte jedoch nicht mehr benutzt werden)
- .statistik1 = .search_stat1 (nur Plugin "search")
- .statistik2 = .search_stat2 (nur Plugin "search")
- .suchbegriff = .search_label (nur Plugin "search")
- .highlight = .embtag_tag_h
- .emphasize = .embtag_tag_emp
- .kommentar = .embtag_tag_c
- .yanahide = .embtag_tag_hide
- neue CSS-Klassen:
- .embtag_tag_c
- .embtag_tag_b
- .embtag_tag_i
- .embtag_tag_u
- .embtag_tag_small
- .embtag_tag_big
- .embtag_tag_mark
- .embtag_tag_color
- Skin "tabular" wurde entfernt
- Databankstrukturdateien: Tabellen haben neue Eigenschaft "description" (für Spalten war dies bereits zuvor möglich). SDK und Formulargenerator erzeugen Namen von Menüeinträgen und Formularen zukünftig entsprechend dieser Eigenschaft automatisch (falls möglich).
- Suchformuluare:
- Der Formulargenerator erkennt automatisch, wenn eine Tabelle keine Spalten vom Typ 'text' besitzt und wechselt automatisch in die erweiterte Ansicht des Suchformulars statt die Standarddarstellung zu verwenden (welche leer gewesen wäre)
- die zuletzt vom Nutzer durchgeführte Suche wird auch dann gespeichert, wenn zwischen Formularen gewechselt wurde
- Profileeinstellung PROFILE.GUESTBOOK.NOREPLY wird nicht mehr automatisch als Absender für E-Mails verwendet. Stattdessen muss der Absender explizit gesetzt werden, mit Ausnahme des Plugins "guestbook", wo diese Beziehung weiterhin besteht.
- Profileeinstellung PROFILE.GUESTBOOK.PROFILE wurde umbenannt zu PROFILE.PROFILE_ID. Die Einstellung wurde im Administrationsmenü vom Menüpunkt "Gästebuch/Setup" unter den Menüpunkt "Programm/Setup" verschoben.
Bugfix/Wartung
- Function SML->getVar() korrigiert (fehlender Rückgabewert)
- Kodierung von URL-Parameter des Typs Array in Umgebungsvariable 'QUERY_STRING' wurde korrigiert
- korrigierter Bug, welcher das verfrühte Absenden von Headerdaten bewirken konnte (nur UNIX-Plattformen)
- Darstellung von Mailadressen in Plugin "guestbook" korrigiert (nur UNIX-Plattformen)
- Problem mit Groß- / Kleinschreibung von Spaltennamen in FileDb korrigiert, welches zu Problemen bei der Prüfung von Unique-Constraints und Entfernen von Schlüsseln aus Arrays führen konnte.
- Darstellung Hyperlinks zu Seiten im PHP-Handbuch in Warnhinweisen korrigiert (nur Debugging)
- Implementierung der Eigenschaft "includes" von Datenbankstrukturdateien im FileDB-Treiber korrigiert
- Hinweis: dieses Feature wird derzeit nicht aktiv verwendet - der Bugfix dient als Hilfe für Entwickler und künftige Erweiterungen
- verbesserte Unterstützung für MySQL's InnoDb-Treiber, bei der Verwendung von Fremdschlüsseln
- Hinweis: betrifft nur MySQL-Installationen, bei denen InnoDb aktiviert ist (InnoDb ist in der Voreinstellung deaktiviert)
- einige Rechtschreibfehler im Handbuch korrigiert
Hinweise
- Die Struktur einiger Tabellen, welche vom Plugin zur Nutzerverwaltung verwendet werden, hat sich geändert. Administratoren sollten beim Update auf diese Version die Struktur ihrer Datenbank überprüfen und diese gegebenenfalls anpassen oder ersetzen.
- Einige Übersetzungen und deren Referenzschlüssel wurden geändert. Übersetzer und Entwickler von Skins können von diesen Änderungen betroffen sein und sollten daher ihre Dateien überprüfen.
- Einige CSS-Klassen wurden umbenannt. Entwickler von Skins sollten ihre Templates überprüfen und gegebenenfalls anpassen.
03.05.2007 - Version 2.9.3
Testversion
neue Features
- Bad-Word Filter und Konfigurationstool für Spamblocker
Aktualisierungen
- Vorschaufenster wurde auf AJAX umgestellt
- Einbinden von Previews wurde vereinfacht.
Neue Template-Funktion [%preview%]
Die JavaScript-Funktion "preview()" ist deprecated und sollte nicht mehr direkt aufgerufen werden. - Einbinden von Captchas wurde vereinfacht. Neue Template-Funktion [%captcha%].
- Darstellung für Embedded-Tag [hide] wurde auf CSS umgestellt
- optische Darstellung von Statusmeldungen verbessert
- Handbuch aktualisiert
Bugfix/Wartung
- Gästebuch-Plugin: ein Sortierungsparameter wurde ersetzt (dies dient lediglich der besseren optischen Darstellung für einen seltenen Ausnahmefall)
- SQL-Generator: der Default-Wert für Datentyp "Boolean" wurde korrigiert
- die als "deprecated" gekennzeichneten Klassen und Funktionen BufferedDbStream, ConfigFile, SmlFile, TextFile, importConfigFile(), decodeConfigString(), getConfigFile() und makeConfig() wurden entfernt
- die Funktion DbServer::test() wurde umbenannt in DbServer::isAvailable()
- neue Klasse "DbQuery" bietet einen OO-Wrapper für den Query-Generator
- Überarbeitung des Codes der Datenbank-API, sorgt für eine um 10% bessere Performance
- Formulargenerator:
- Eingaben in Suchformularen bleiben beim Neuladen der Seite erhalten
- Spalten vom Typ "image" oder "file" (binary large objects) werden in Suchformularen automatisch ausgeblendet
- es ist nun möglich, in Suchbegriffen die Jokerzeichen "*" und "?" zu verwenden
- FileDb: Spalten vom Typ "array" können nun durchsucht werden
- StructureFile: die Eigenschaften "display.hidden" und "display.readonly" können nun alternativ auf eine Zahl zwischen 0 und 100 gesetzt werden. In diesem Fall wird die Eigenschaft zu "true" ausgewertet, wenn der Nutzer, welcher ein Formular aufruft, eine Sicherheitsberechtigung von diesem Wert oder höher besitzt. Das bedeutet, dass die Sichtbarkeit von bestimmten Spalten einer Tabelle auf bestimmte Nutzergruppen beschränkt werden kann.
Hinweise
- Die JavaScript-Funktion "preview()" ist deprecated und sollte nicht mehr direkt aufgerufen werden. Sollte Sie Skins geschrieben haben, welche diese Funktion benutzen, ersetzen Sie diese dort bitte durch die neue Template-Funktion [%preview%]
- Folgende JavaScript-Funktionen wurden umbenannt um Namenskonflikte zu
vermeiden:
- addEmbTag() => yanaAddEmbTag()
- addItem() => yanaAddItem()
- removeItem() => yanaRemoveItem()
- toggleOption() => yanaToggleOption()
- closeAll() => yanaCloseAll()
- Eventhandler für die Klasse AjaxRequest erhalten nun zwei Eingabeparameter: eine Referenz auf das XMLHttpRequest-Objekt und eine Referenz auf den Zielknoten des aktuellen Dokuments, in welchem das Resultat dargestellt werden soll (falls er nicht benötigt wird, kann dieser Parameter ignoriert werden). Der Status des Requests muss nicht geprüft werden. Der Eventhandler wird stets erst dann aufgerufen, wenn eine Serverantwort vorliegt.
- In Suchformularen wird das Sonderzeichen '_' als das Jokerzeichen '?' und Leerzeichen als "*" interpretiert.
28.03.2007 - Version 2.9.2
Testversion
neue Features
- die Präsentation der durch den Formulargenerator erstellten Formulare wurde optisch aufgewertet
- Plugin "Blog" verfügt nun über eine Funktion zum Einfügen von Kommentaren und eigenes Microsummary
- neue Demo: Plugin für Projektverwaltung
Aktualisierungen
- DBDatatype: erzeugt nun eine E_NOTICE, wenn der Typ einer Spalte undefiniert ist (erleichtert Debugging)
- Update für die neueste Smarty-Version 2.6.18
- das Token $INSERT_CONTENT_HERE wurde ersetzt durch [%import id=$SYSTEM_INSERT%], dieser Ansatz bietet eine sauberere Lösung und wird zukünftig den Einsatz weiterer Caching-Methoden erleichtern
- Code-Cleanup des Formulargenerators wurde durchgeführt, daraus resultiert eine deutlich gesteigerte Perfomance bei der Generierung komplexer Formulare
- neue Klasse "DbBlob": repräsentiert Inhalte einer Spalte vom Typ "file" in einer Datenbank und bietet Funktionen zum Kopieren, zur Dekodierung und Download von Dateien aus einer Datenbank
- neue Funktion "SmartTemplate::setFunction"
- neue Funktion "SmartTemplate::unsetFunction"
- Handbuch aktualisiert
Hinweise
- dadurch, dass das Token $INSERT_CONTENT_HERE ersetzt wurde (siehe oben), sind Skins aus älteren Versionen mit Version 2.9.2 inkompatibel. Bei einem Update eines Skins auf die neue Version ersetzen Sie bitte alle in allen Templates alle Vorkommen des Strings [%$INSERT_CONTENT_HERE%] durch [%import id=$SYSTEM_INSERT%].
10.03.2007 - Version 2.9.1
stabile Version
neue Features
- neues Plugin: "Blog" zum Schreiben von Weblogs
- neues Tutorial demonstriert das Erstellen eigener Plugins
Aktualisierungen
- für die Template-Funktionen "embeddedTags" und "smilies" ist das Argument "target" nicht mehr erforderlich
- JavaScript-Funktion "preview()", der zweiter Parameter "source" ist nicht mehr erforderlich
Bugfix/Wartung
- DBStream: E_NOTICE durch nicht initialisierte Variable wurde korrigiert
- Gästebuch-Plugin: fehlerhafter Defaultwert für Namen eines Gastes wurde entfernt
- Gästebuch-Plugin: ein Fehler bei der Erzeugung des Elements "Link" in RSS-Feeds wurde korrigiert
06.03.2007 - Version 2.9
stabile Version
neue Features
- Installer erzeugt Log-File mit Ergebnis der Installation
- Syntax-Highlighter und Code-Templates für "ConTEXT - Programmer's Editor" liegen Handbuch bei
- Kommandozeilenschnittstelle hinzugefügt, für das Ausführen des Frameworks als Cronjob
Aktualisierungen
- Installer
- verwendet Ajax um den Status der Installation abzufragen
- als Hook-Funktion darf nun auch ein String mit dem Namen einer Funktion verwendet werden
- Handhabung wurde vereinfacht
- 100% valides HTML
- Code-Cleanup
- Handbuch aktualisiert
- neue Funktion "StructureFile::addTable"
- neue Funktion "StructureFile::addColumn"
- neue Funktion "StructureFile::setNullable"
- neue Funktion "StructureFile::setAuto"
- neue Funktion "StructureFile::isAuto"
- neue Funktion "StructureFile::setIndex"
- neue Funktion "StructureFile::getProfile"
- neue Funktion "StructureFile::setProfile"
- neue Funktion "StructureFile::setUnique"
- neue Funktion "StructureFile::setDescription"
- neue Funktion "StructureFile::setLength"
- neue Funktion "StructureFile::setImageSettings"
- neue Funktion "StructureFile::setStrict"
- neue Funktion "StructureFile::setConstraint"
- neue Funktion "StructureFile::setTrigger"
- neue Funktion "StructureFile::setVisible"
- neue Funktion "StructureFile::setEditable"
- Update der Behandlung von Triggern und Constraints
- API der Session- und Nutzerverwaltung dokumentiert
- neuer DB-Constraint "profile_key"
- Gästebuch-Plugin aktualisiert (arbeitet nun mit "profile_key" constraint)
- die Datenbankinstallation wurde erheblich vereinfacht
Bugfix/Wartung
- FileDB: Problem mit der Sortierung von Resultsets bei der Abfrage einzelner Spalten behoben
bekannte Einschränkungen
- die experimentelle Unterstützung für Datenbankpräfixe ist in dieser Version nicht aktiviert
18.02.2007 - Version 2.9 Release Candidate 3
Testversion
neue Features
- Paketverwaltung für Installer
- File-Uploads mit automatischer Komprimierung
- Installationsprogramm:
- zu installierende Übersetzungen, Plugins und Skins können schon während der Installation ausgewählt werden
- verfügt nun über Hook-Points und Übersetzungsdateien, welche eine einfache Erweiterung oder Anpassung ermöglichen
- individuelle Installer für fremde Projekte können gegen Zahlung eines Entgelts bestellt werden
Aktualisierungen
- Funktion "SecureFileStream::is_writeable" umbenannt zu "SecureFileStream::isWriteable"
- Funktion "SecureFileStream::is_writeable" ist "deprecated"
- neue Funktion "SML::getVar" (Alias von "SML::get")
- neue Funktion "SML::setVar" (Alias von "SML::insert")
- geänderte Funktion "Image::uploadFile"
vergrößert keine Bilder, die kleiner sind als die Maximalgröße nur noch, wenn $keepAspectRatio auf false gesetzt wird - Funktion "Image::getFilename" umbenannt zu "Image::getPath"
- neue Funktion "StructureFile::getColumnsByType"
- neue Funktion "StructureFile::setType"
- Funktion "SecureInputStream::checksum" umbenannt zu "SecureInputStream::getCrc32"
- Funktion "SecureInputStream::md5checksum" umbenannt zu "SecureInputStream::getMd5"
- Funktion "SecureInputStream::getFilename" umbenannt zu "SecureInputStream::getPath"
- Funktion "SmartTemplate::getFilename" umbenannt zu "SmartTemplate::getPath"
- Funktion "SmartTemplate::SetFilename" umbenannt zu "SmartTemplate::SetPath"
- Funktion "DBStream::getFilename" umbenannt zu "DBStream::getPath"
- Installationsprogramm:
- erzeugt nun eine Warnung, wenn das Arbeitsverzeichnis schreibgeschützt ist
- Plugin "default_library":
- Aktion "get_image" umbenannt zu "download_file"
- Aktion "download_file" erlaubt nun die Behandlung von "images" und "files"
- Komponente "Database":
- Rückgabewert der Abfrage einer image- oder file-Spalte ist nun der
vollständige Pfad und Dateiname
(betrifft nur die Aktionen "download_file" und "get_profile_image" der Plugins "default_library" und "user_admin") - Blobs werden nun in einem separaten Verzeichnis gespeichert und
verwenden zufällige, schwer vorhersagbare Dateinamen
(diese Änderung betrifft nur in Version 2.9.0 RC 2 gespeicherte Grafikdateien)
- Rückgabewert der Abfrage einer image- oder file-Spalte ist nun der
vollständige Pfad und Dateiname
Bugfix/Wartung
- Behandlung von unique-constraints in FileDB korrigiert
(hat keinen Einfluss auf Programmfunktionen - dient nur der Stabilität) - Indexes werden nun sofort regeneriert, falls die Datei aus Versehen oder
absichtlich gelöscht wurde
(hat keinen Einfluss auf Programmfunktionen - dient nur der Stabilität) - FileDB entdeckt nun automatisch, wenn eine Spalte einen unique-constraint
verletzt und meldet dies in den System-Logs
(hat kein Einfluss auf Programmfunktionen - dient nur der Stabilität) - DbAdmin-Plugin synchronisiert nun Spalten der Typen "image" und "file"
korrekt
(betrifft nur die Aktion "db_sync" des Plugins "db_admin") - Links zum Nutzerprofil eines registrierten Mitgliedes werden im
Gästebuch-Plugin nun nur noch dann angezeigt, wenn das Plugin zum
Anzeigen von Nutzerprofilen ("user_admin") aktiviert ist
(hat keinen Einfluss auf Programmfunktionen - "kosmetische" Korrektur)
Hinweise
- falls Sie Release Candidate 2 verwenden und Grafiken hochgeladen haben, müssen diese neu übertragen werden
- falls Sie Autor eines Plugins sind, das Datenbankabfragen auf Spalten vom Typ "image" oder "file" durchführt, gemäß der Implementierung in Release Candidate 2, müssen Sie den Code für die Behandlung dieser Abfragen aktualisieren
- Übersetzer zur Übersetzung von Artikeln und Tutorials gesucht (Deutsch nach Englisch)
02.02.2007 - Version 2.9 Release Candidate 2
Testversion
neue Features
- neue AJAX-Klasse zur Unterstützung von HTTP-Requests
- Beispiele mit Screenshots zur Verwendung der Image-Klasse und Grafikfilter im "Kochbuch"
- das Handbuch verfügt nun über eine eingebaute Stichwortsuche
Aktualisierungen
- Formulargenerator erzeugt nun auch Oberfläche zum Editieren von Spalten vom Typ "array" in Datenbanken
- Handbuch aktualisiert
- Funktion "Yana::message" wurde ersetzt durch "Yana::exitTo" und ist nun "deprecated" (neues Beispiel, siehe Handbuch)
- Plugins aktualisiert und von Yana::message auf Yana::exitTo umgestellt
- Templatefunktion "import" besitzt neuen Parameter "id" (neues Beispiel, siehe Handbuch)
- Sprachdateien aktualisiert
- das SDK bietet nun Uploadformulare für SQL-Dateien zu allen unterstützten DBMS (nicht nur MySQL)
Bugfix/Wartung
- theoretisches Problem mit möglichen false positives in AntiSpam-Plugin beseitigt
- Trefferliste in Suchformular: fehlender Parameter ergänzt
- Rechtschreibung und Grammatik in Handbuch korrigiert
25.01.2007 - Version 2.9 Release Candidate 1
Testversion
neue Features
- Verschlüsselung für Passwörter geändert von MD5 auf stärkeren SHA1-Algorithmus
Aktualisierungen
- neue Klasse "DbQuery"
- neue Funktion "StructureFile::isVisible"
- neue Funktion "StructureFile::isEditable"
- neue Funktion "GuiCreator::getFormdata"
- Handbuch aktualisiert
- Gästebuch: Einbindung der neuen Funktion des Formulargenerators
- SDK: Einbindung der neuen Funktion des Formulargenerators
Bugfix / Wartung
- Code überprüft und gesäubert
- Registrierung: Verweis auf Mailfunktion korrigiert
- Nutzerverwaltung: Überprüfung des Codes
- RSS-Feed: Auszeichnung der CDATA-Bereiche korrigiert
- Microsummaries: Persistenz der Einträge wiederhergestellt
- Handbuch: Rechtschreibung geprüft
- DB-API: fehlenden Verweis auf Präfix eingefügt
- GUI-Generator: Felder vom Typ Image werden in Suchmaske ausgeblendet
21.01.2007 - Version 2.8.9
Testversion
neue Features
- DB-API und Datenbankschemata unterstützten Tabellenspalten vom Typ "image"
- automatischer Upload und automatisches Erstellen von Thumbnails für Spalten vom Typ "image"
- Nutzerverwaltung erlaubt den Upload von Grafiken für Nutzerprofile
- neue Komponente für die Erstellung von Baummenüs aus mehrdimensionalen Arrays
- die ausgewählte Sprache wird beim Logout gespeichert
Aktualisierungen
- Formulargenerator unterstützt Tabellenspalten vom Typ "image"
- neue Funktion "SmartTemplate::getSmarty"
- neue Funktion "StructureFile::getImageSettings"
- Strukturdateien: neue Eigenschaften für die Definition von Spalten vom
Typ "image"
- "width", "height", "radio", "background"
- neue Funktion "StructureFile::getFiles"
- neue Funktion "StructureFile::setDefault"
- neue Funktion "Image::uploadFile"
- neuer Event "get_profile_image" (Nutzerverwaltung)
- neuer Event "show_image" (Formular-Generator)
- neue Template-Funktion "printUnorderedList"
- Formulargenerator zeigt Tabellenspalten vom Typ "array" automatisch als Baummenü
- neue Spalten in Tabelle "user":
- "user_image", "user_image_active", "user_language"
- Spalte "photo" entfällt
- ~10% bessere Performance für Formulargenerator durch Restrukturierung der Templates
- Dokumentation umfasst neue Artikel zu den Themen: "Verschlüsselung", "Spam und Flooding", "SML-Dateiformat"
- README-Datei mit Kurzinstallationsanleitung in Deutsch und Englisch
Bugfix / Wartung
- mehrere kleinere Fixes für DB-API und Formulargenerator
- Gästebuch: Prüfung für Nutzerzugriffe auf fremde Profile eingefügt
- Datenmodell und Behandlung von Zugriffsrechten der Nutzerverwaltung aktualisiert
- einige Links im Menü zur Sprachauswahl korrigiert
02.01.2007 - Version 2.8.8
Testversion
Aktualisierungen
- Klasse "Image" erweitert, getestet und aktualisiert
- Code des Formular-Generators komplett überarbeitet
- Portierung von PHP 5 und PHP 4.3 -Funktionen und -Konstanten für PHP 4.2,
zum Beispiel:- file_get_contents(), file_put_contents()
- scandir()
- stripos(), strripos()
- substr_compare()
- array_combine()
- property_exists() ... und andere
- ~5% bessere Geschwindigkeit durch Optimierungen
- ~20% geringere Anforderungen an Hauptspeicher im laufenden Betrieb durch Optimierung des Cache
Bugfix / Wartung
- Bug in der Datenbankinstallation des DB-Admin Plugin behoben
- diverse kleinere Fixes für DB-API und Image-Klasse
10.12.2006 - Version 2.8.7
Testversion
neue Features
- es gibt nun einen vollständigen OO-Wrapper für PHP's Image-Funktionen
Aktualisierungen
- Konstruktor für "DbStream" akzeptiert als 1. Argument jetzt zusätzlich ein Objekt vom Typ "StructureFile"
- Einträge des Virtuellen Drive wurden erweitert
- Plugin "DB_Admin" wurde aktulisiert
- neue Klasse "Image"
- neue Klasse "Brush"
- Plugin "Default_Library" wurde aktualisert und arbeitet nun mit der neuen Klasse "Image"
Bugfix / Wartung
- die Funktion "length()" der Klasse "FileDB" ermittelt die Anzahl der Einträge in einer Tabelle nun korrekt (Bug in Version 2.8.6)
02.12.2006 - Version 2.8.5a, 2.8.6a
Bugfix
Bugfix / Wartung
- beseitigt Probleme beim Anzeigen von CAPTCHAs
01.12.2006 - Version 2.8.6
Testversion
neue Features
- die Installation der Datenbank(en) funktioniert nun automatisch - es ist nicht mehr nötig SQL-Dateien von Hand zu erstellen, das erforderliche SQL wird zur Laufzeit generiert
Aktualisierungen
- Unterstützung von Joins in Flat-File DB
- Namen und Beschreibung der Skins und Plugins wurden aktualisiert und ins Englische übersetzt
- neue Klasse "DbCreator"
- neue Funktionen "StructureFile::isNullable", "StructureFile::isAutonumber", "StructureFile::getDescription"
- Klasse "BufferedDbStream" umbenannt zu "DbStream" ("BufferedDbStream" ist noch vorhanden aber "deprecated")
- nicht mehr benötigte Klasse "QueryBuilder" wurde entfernt
23.11.2006 - Version 2.8.5
stabile Version, Nutzer der Version 2.8.1 sollten auf 2.8.5 aktualisieren
neue Features
- RSS-Support für Gästebuch (die 10 neuesten Einträge als RSS-Feed)
- Framework Logs übersichtlich online abrufbar
- Unterstützung von Unique Constraints in Flat-File DB
Aktualisierungen
- Skin "Light" unterstützt nun das Anzeigen von Kommentaren
- Kommentarfelder sind nun im Backend editierbar
- Klasse "String" unterstützt nun die in PHP 5.2 neu hinzugekommene "hash()" Funktion und "xor" Block-Chiffre
- die Funktionen equals(), getClass(), toString(), copy() und die in PHP 5 hinzugekommenen "magischen" Funktionen __clone() und __toString() werden nun unterstützt
- neue Funktion "cloneArray()"
- Verwendung von "Order By" Klauseln wurde überarbeitet und vereinfacht. Die Flat-File DB unterstützt nun auch das Sortieren nach mehreren Spalten.
- die als "deprecated" gekennzeichneten Funktionen BufferedDbStream::getFilter() und BufferedDbStream::setFilter() wurden entfernt
- Variable "PHPSESSID" wurde in "ysid" umbenannt
- Klasse "SessionManager" verwendet nun die sicherere SHA1 Verschlüsselung statt MD5 zur Berechnung der Session-Ids, außerdem wurden neue Maßnahmen zur Abwehr von Angriffen über "Session fixation" eingeführt
- Klasse "SerializeableObject" umbenannt zu "Object"
- Funktion "Object::copy" umbenannt zu "Object::cloneObject" (Namenskonflikt)
- neue Funktion "Object::__clone"
- neue Funktion "Object::__toString"
- neue Funktion "Object::getClass"
- neue Funktion "SecureFileStream::copy"
- neue Funktion "SecureFileStream::getFilesize"
- Klasse "String_type" umbenannt zu "String"
- Klasse "Yana_log" umbenannt zu "Report"
- neue Klasse "SML"
- Funktion "makeConfig" überholt durch "SML::encode" (als "deprecated" gekennzeichnet)
- Funktion "decodeConfigString" überholt durch "SML::decode" (als "deprecated" gekennzeichnet)
- Funktion "getConfigFile" überholt durch "SML::getFile" (als "deprecated" gekennzeichnet)
- Funktion "importConfigFile" wurde als "deprecated" gekennzeichnet und wird in 2.9 entfallen
- Klasse "SmlFile" überholt durch "SML" (als "deprecated" gekennzeichnet)
- Klasse "ConfigFile" überholt durch "SML" (als "deprecated" gekennzeichnet)
- neue Klasse "FileDb_index"
- neue Klasse "Microsummary"
- neue Klasse "RSS"
- neue Klasse "RSS_item"
- Funktion "InputStream::write" erzeugt nun im Fehlerfall eine E_USER_NOTICE, welche die Ursache beschreibt
- neue Funktion "InputStream::md5Checksum" berechnet den MD5-Hash der Datei
- Funktion "InputStream::checksum" erlaubt neuen Parameter "string filename"
- neue Funktion "StructureFile::getIndexes"
- neue Funktion "StructureFile::getUniqueConstraints"
- neue Funktion "StructureFile::getTrigger"
- neue Funktion "StructureFile::isUnique"
- neue Funktion "StructureFile::hasIndex"
- neue Funktion "Yana::getRequestVar"
- Verbesserung der Performance und geringerer Bedarf an Hauptspeicher
- Überarbeitung der Administrationsoberfläche - Plugin Konfigurationsdateien ermöglichen die Angabe von Menüpunkten
- Template-Funktion "create" unterstützt das neue Template "view_details"
- der Query-Builder der Klasse "BufferedDbStream" erlaubt nun zusätzliche Operatoren bei der Definition der Where-Klausel
- Flat-File DB arbeitet schneller dank neuem Caching-Mechanismus
- API-Dokumentation wurde aktualisiert
Bugfix / Wartung
- Verwendung von Stylesheets in Templates, Liste wird jetzt aufsteigend sortiert, nicht mehr absteigend
- Template-Funktion "create" zeigt nun die Leiste zum Blättern zwischen Einträgen korrekt an
- Template-Funktion "create" zeigt NULL-Werte für Felder vom Typ "time" nun durch einen Strich an, anstatt das aktuelle Datum zu verwenden
- überflüssige Debug-Meldung in "Language::get" deaktiviert
- die Flat-File DB verarbeitet Anfragen mit "descendant", die in der letzten Alpha-Version Probleme machten, nun korrekt
- das Plugin "DB Admin", welches in Version 2.8.4 defekt war, wurde korrigiert
24.10.2006 - Version 2.8.4 alpha
Testversion
neue Features
- Schaltfläche für Besucher zum Wählen der Sprache
- englische Übersetzung für SDK
- Unterstützung für Trigger in Datenbankstrukturdateien in PHP-Syntax: (before, after + insert, update, delete)
Aktualisierungen
- API-Dokumentation aktualisiert
- Menü des SDK aktualisiert
- für Entwickler: Syntaxfehler in SML-Dateien werden beim Debugging protokolliert
- für Administratoren: nicht registrierte Action-Parameter können nun optional mit Fehlermeldung gesperrt werden um die Sicherheit zu erhöhen. Diese Option ist ab dieser Version außerdem per Default aktiviert, kann jedoch bei Bedarf in system.config über den Parameter "ALLOW_UNDEFINED_ACTIONS" deaktiviert werden.
- Unterstützung für Firefox 2.0 Microsummaries
Bugfix / Wartung
- Kompatibilität zu IE 7
- fehlende englische Übersetzungen eingetragen
- fehlenden Link zu Ressource "reserved_sql_keywords" eingetragen (beseitigt Datenbankzugriffsfehler)
16.10.2006 - Version 2.8.3 alpha
Testversion
neue Features
- Oberfläche zum Editieren einzelner Einträge in Frontend/Backend (neue Funktion des GUI-Generators)
- automatische Behandlung von Vererbung in Datenbanken
- automatisches Installationsprogramm
- Includes in DB-Schemata
Aktualisierungen
- Handbuch aktualisiert
- API-Dokumentation aktualisiert
Bugfix / Wartung
- Dokumentation: Schreibfehler in Beschreibung für Fremdschlüssel korrigiert
29.09.2006 - Version 2.8.2 alpha
Testversion
neue Features
- neue Template-Funktion "load_sml()"
- neue Template-Funktion "embeddedTags()"
- Datenbank-API verwendet automatisch "smart quoting" für IDs
- Erfolgs- und Fehlermeldungen können nun wahlweise auf eigener Seite, oder inline angezeigt werden
Aktualisierungen
- Handbuch aktualisiert
- API-Dokumentation aktualisiert
Bugfix / Wartung
- Rechtschreibfehler im Handbuch korrigiert
16.09.2006 - Version 2.8.1 stable
stabile Version, Update von Version 2.8 ohne Probleme möglich
neue Features
- das Aktivieren von Skins, Plugins und Sprachpaketen im Administrationsmenü wurde vereinfacht
- das Nutzerhandbuch wurde aktualisiert
Aktualisierungen
- das Plugin, welches die Passwortverwaltung und Nutzerauthentifizierung durchführt wurde überarbeitet und aktualisiert
- die "embedded Tags" [color] und [mark] akzeptieren nun auch hexadezimale Werte als Eingaben
Bugfix / Wartung
- ein Problem mit dem Update-Skript für Version 2.7 auf 2.8.x wurde
korrigiert, die Datei "guestbook_updater.php" wurde entsprechend
aktualisiert
(Dies betrifft nur Nutzer, die von Version 2.7 auf Version 2.8 umsteigen wollen.) - ein Problem mit der Auflösung von Ids in der internen Datenbank wurde
korrigiert zur Verbesserung der Stabilität der Anwendung
(Dies ist derzeit nur für Entwickler interessant. Die offiziell verfügbaren Plugins waren von diesem Fehler bisher nie betroffen.) - Rechtschreibfehler im Handbuch korrigiert
Hinweise
- Zum Update von Version 2.8 auf 2.8.1 müssen nur die Verzeichnisse "plugins", "skins", "manual" und "languages", sowie die Dateien "index.php" und "library.php" ersetzt werden. Die übrigen Verzeichnisse bleiben unverändert.
08.09.2006 - Version 2.8 stable
stabile Version
Version 2.8 bringt vor allem Neuerungen für zwei Gruppen von Anwendern. Einerseits Communities, welche optional Profile Ihrer Nutzer in einer Datenbank verwalten können, anstatt im Filesystem. Andererseits Entwickler neuer Plugins, welche wesentlich mehr Komfort für Ihre Arbeit vorfinden werden.
neue Features
- Skript zum Upgrade von Versionen 2.6 und 2.7 auf Version 2.8
- neues Datenbankverwaltungstool erlaubt die Aktivierung, Installation und Import von alten Daten aus dem Filesystem für alle Datenbanken über einen einzigen Knopf
- die Nutzerverwaltung ist nun optional auch über Datenbank möglich
- neue Funktionen zum Schutz vor Spam
für Entwickler
- Unterstützung für virtuelle Datenbanken im Filesystem - Vorteil: Skripte die für Datenbanken geschrieben sind funktionieren auch dann, wenn der Kunde bzw. Anwender auf seinem Webspace keine Datenbankunterstützung nutzen kann
- erweiterte Debugging-Funktionen - Vorteil: Fehlerquellen lassen sich während der Entwicklung neuer Plugins leichter identifizieren und frühzeitig korrigieren
- Dokumentation für Entwickler wurde aktualisiert und umfassend erweitert
- automatischer Spam-Schutz - Vorteil: CAPTCHA ist bereits fertig eingebunden und kann mit ca. drei Zeilen Code
Aktualisierungen
- Update auf die neueste Version der Template-Engine
- Datenbankstrukturdateien gestatten das Definieren von Constraints
- Ereignisprotokollierung wurde vervollständigt
- Skins wurden aktualisiert und das Editieren durch neue CSS-Styles erleichert
24.03.2006 bis 25.08.2006 - Version 2.8 alpha / beta
nur zu Testzwecken
neue Features
- Skins: Template-Konfigurationen haben nun das optionale Element "style", welches es erlaubt, Templates CSS-Stylesheets zuzuordnen. Diese Maßnahme sorgt für saubereren Code, mehr Übersichtlichkeit und bessere Lesbarkeit der Templates.
- Die Anzahl der CSS-Klassen wurde deutlich erhöht und der Umfang an verfügbaren Optionen massiv erweitert, um das Erstellen neuer Skins in Zukunft zu erleichtern.
- Es gibt nun ein vorgefertigtes ausklappbares Menü in einer suchmaschinenfreundlichen Darstellung, welches leicht einzubauen und zu verwenden ist. Das Layout kann vollständig über CSS-Stylesheets gesteuert werden.
- SDK: Das SDK generiert nun für neu erzeugte Plugins automatisch auch ein Menü, über das alle automatisch produzierten Funktionen aufgerufen werden können.
- GUI-Generator: Die Suchfunktion generiert die Trefferliste nun vollautomatisch, ohne das Code dafür geschrieben werden muss.
- Handbuch: Die neuesten Ergänzungen des Handbuchs wurden dem Release beigefügt.
- Schutz vor Spam: neue Erweiterung mit zusätzlichen Funktionen zum Schutz vor unerwünschter Werbung und ein verbessertes CAPTCHA
- Das Spamschutz-Plugin wurde um eine automatische Funktion zum Schutz vor XSRF Angriffen erweitert.
- Nutzerverwaltung über Datenbank möglich
- Installationsroutinen für Datenbank
- Abgleich zwischen Daten in der Datenbank und im Filesystem möglich
- neue SQL-Installationsdateien für MS-SQL, PostgreSQL und MS Access Datenbanken
- Constraints in DB Config-Files, virtuelle Views
- Unterstützung für virtuelle Datenbanken im Filesystem
- per Knopf kann nun zwischen Speicherung neuer Einträge in Datenbank oder Datei gewechselt werden
Aktualisierungen
- Quellcode geprüft und überflüssigen bzw. veralteten Code entfernt
- Ereignisprotokollierung erweitert. Es werden insgesamt mehr aussagekräftige Log-Einträge erzeugt.
- Default-Skin und Languages aktualisiert (GUI-Generator)
- Im Anfängermodus ist die Profilverwaltung im Administrationsmenü nun ausgeblendet.
- Skins, Language-Files und Plugins aktualisiert
- nur noch 1 Gästebuch-Plugin (nicht mehr 2 Plugins) für Nutzung mit UND ohne Datenbank
- SDK ist jetzt als Plugin integriert und muss nicht mehr getrennt installiert werden
- Dokumentation aktualisiert
- Skriptupdate von Versionen 2.6 und 2.7 auf 2.8
23.03.2006 - Version 2.7a
Update nur erforderlich falls Fehler auftreten
Bugfix / Wartung
- Problem mit Lizenzverwaltung korrigiert
Aktualisierungen
- Entwicklerhandbuch geringfügig erweitert
26.02.2006 - Version 2.7
Update empfohlen, falls neue Funktionen erwünscht sind. Nicht kompatibel zu älteren Versionen. Erfordert Neuinstallation.
neue Features
- Ereignisprotokollierung ist optional möglich.
- neue Spamschutzfunktion gegen unerwünschte Werbung
- Programm: Gästebuch-Update
- Programm: Dat2SQL
- Programm: YANA SDK
- Plugin: Suchmaschine für Stichwortsuche
- Plugin: Gästebuch wahlweise auf Dateibasis ODER mit einer vorhandenen Datenbank. Unterstützte DBMS: MySQL, MS-SQL, PostgreSQL, u.a.
- neue Template-Engine erlaubt mehr Freiheiten beim Schreiben eigener Skins
- komplett neues Handbuch