Changelog
Alpha version 0.1.8 (underdev)
+ Objektbeschreibungen (Texte Tabelle usw.) als XML (CLASSNAME.description.xml)
+ Descriptor Klasse geändert (Singleton – verwendet jetzt XML keine neu instanzierten Klassen)
+ Bug in der FRElement behoben
+ System-Views und Objecte verschoben (inc/class/module/system)
+ Debug Backtrace verschönert
+ TreeView und DepentView hinzugefügt (erstmal nur als Demo)
+ UserLoginStat Class – diese darf jeder Schreiben / löschen
falsche Anmeldungen vom “Unbekannten” User werden Erstellt
und alte Einträge vom “Unbekannten” User werden gelöscht
beim Login wird gelesen werden – ist auch quasi eine History
+ Templates Description und Klassen werden jetzt automatisch gesucht im (inc/class/module/*)
–> + Cachen der Gefundenen Dateien (vorallem Templates)
–> + Relations müssen in die XML der Objekte
–> + Listen aller Möglichen Klassen im class/module Ordner
(Um alle Verbindungen zu finden – und später Assistenten aufzulisten usw..)
–> + Optimierung der Field Objekte und Listen
(17k FRElement in 1,3K FRElementList brauchen 5,3 Sekunden – das ist mir zu langsamm)
–> + Das globale Container Object als “Grundgerüst” des Frontends
–> + Parzielle portierung einer DemoSeite
Alpha version: 0.1.79
- classes.inc.php im view Ordner gelöscht
- kein automatisches durchführen der Post ident auf Views
* Autoloader mit Views und Objects erweitert
* Debugcode aus dem SQL-Parser Object gelöscht
* Bug in der Registry Klasse behoben
* Enum default Werte (erste aus den Values im schema Array) – Values wurde nur bei SET geprüft nicht bei GET
Ein Obect mit enum Feld shipping(‘post’,'air’,’see’) z.B.
$myOrder = new Order (); echo $myOrder->shipping;
Ausgabe: “post”
* PHP < 5.2.0 __toString BUG im Testcode behoben –> http://de2.php.net/__tostring
(before PHP 5.2.0 the __toString method was only called when it was directly combined with echo())
* Bug in der PermissionList behoben (TreeList wurde Ignoriert)
* Bug in der GetDepent GetBacktrace .. hier wird eine cList erzeugt eine FRList währe hier aber besser
* Bug in der cList::add() Methode behoben – ein False darf nicht in die Liste aufgenommen werden!
* Bug in der EditView behoben der bei den automatisch erstellten Feldern doppelte Id´s auf einer Seite erlaubte
* Bug´s beim Clonen der Liste behoben
* Clone´s erscheinen beim DEBUG modus
* getParent Bug behoben (2000 Baumstruktur-Objekte werden jetzt 5 Sekunden schneller geladen!)
* Speichern ist wieder möglich (was ein Vorteil!)
+ FRList erstellt sich nicht automatisch wenn ein Add druchgefüht wurde
+ Performance der GetDepent GetBacktrace Methode erheblich verbesser (ca. 1,4 Sekunden bei 1000 Objekten)
+ Verzeichniss Konfiguration verändert
+ Neue MySql Feldtypen (nachzulesen in der item_schema.class.php ab Zeile 100)
+ Enum Feldtyp hinzugefügt
+ “config.inc.php” angepasst
+ Verzeichniss-Struktur angepasst (mehr Übersicht)
+ EditView und View Classe erweiter – jedes Feld im Object wird automatisch entsprechend formatiert
+ Die View Klasse kann jetzt jedes beliebige Objekt laden
(Wenn nicht beschränkt durch “protected $_objectName”)
+ Die EditView Klasse kann umgestellt werden zwischen ‘ (Mit der “protected $_showFieldsEditable”)
+ Alle Views haben unter “$values.FELDNAME” den vorformatierten Wert des Feldes
(keine Protected Felder)
+ Templates werden getrennt in System-Templates und normalen Templates
ist ein Tamplate im normalen Ordner vorhanden wird dies Verwendet wenn nicht das vom System
(Wenn diese Seite kein anderes Template für die Navigation hat wird das default verwendet) (Todo)
+ Views werden getrennt nach System-Views und normalen Views
z. B. UserLoginView und ServerStatView sind Systemviews
+ Theorethisch könnte man eine View jetzt auch in der Session speichern
(z.B. “registry::set ($myView, true);” für was man das auch immer mal brauchen könnte)
+ factory Class erweitert $mySun = factory::get (new FRList, newSun)->setLimit (1)->next();
+ jedes FRObject hat jetzt eine ->parse() Methode
(zeigt eine EditView wenn das Object veränderbar ist, wenn nicht eine View)
+ __toString in jeder View und jedem Object eingebaut – so kann “echo new Sun(4711);” durchgeführt werden
+ Sample Code der Index Seite angepasst
+ FCKEditor für mehrzeilige Text-Felder eingebaut
+ ?debug=true Modus verbessert (anzeige der vom System erstellten Objecte – in Bunt!)
+ Die “index.php” hat jetzt mehr nakte Haut – sex sales!
+ Unterscheidung zwischen HTML Feldern und Textarea (z.B. wir wollen kein HTML im Kommentar)
(Felder vom Typ longtext sind HTML-Felder – fckeditor && alle anderen nur mehrzeilige Texte – textarea)
+ jede FRList hat jetzt eine ->parse() Methode (zeigt alle Elemente der Liste an)
+ __toString zur FRList hinzufügen
+ Felder werden jetzt als Objecte gespeichert – nicht mehr als array
> SqlParser Class angepasst
> Adapter Class angepasst
> ItemSchema Class angepasst
> View Class angepasst
- EditView Klasse wurde gelöscht (die View Klasse übernimmt diese Aufgabe jetzt)
+ In der View Klasse kann man jetzt Elemente (Felder) “anmelden” diese werden mit dem request automatisch geschrieben
+ Template geändert man muss jetzt {$elements.fieldname} verwenden nicht mehr
{$object->fieldname}
Hier erhällt man den kompletten Formatierten String (optional als Edit-Box)
+ Template geändert man kann jetzt Views in einer View “anmelden” diese kann man mit
{foreach … from=$elements.viewListenName} durchgehen und hat hier genau die gleichen Felder wie
in der “angemeldeten” View
+ UserLoginView angepasst an das neue Element System der View Klasse
+ Custom Fields (nicht vom Object) für Edit-Views – mann kann quasi Felder die eigentlich nicht vorhanden sind erstellen
mit addElement(‘name’, assoc_array) und getElement(‘name’) bzw getElementValue(‘name’) wieder darauf zugreifen
+ Man kann die Logik einer View in eine andere View laden
+ Man kann mehr als nur ein Objekt in einer View verändern
Hier ist noch das Problem das sich die Listen nicht ändern dürfen weil sonst die Feldnummner/Namen
durcheinander geraten – hier muss noch eine zusätzliche sicherung auf die Unique_id erstellt werden
Wenn z.b. einem Universum eine Sonne genommen wird – jemand aber noch das alte Formular offen hat
wird beim speichern der Felder die Nummerierung falsch druchgeführt
Hierfür müssten alle Unique_id´s die die views haben mit übertragen werden – nicht nur die ursprungs Id
Das ist ein Bugfix für die nächste Version….
+ Felder können in der View explizit auf Edit gesetzt werden
Die std. View eines Objects “echo new User(123);” hat automatisch edit oder view Felder
Alle anderen Views (mit eigenem Template und eigener Logik) müssen hier mit
“$this->getObject()- >canChange ()”
prüfen ob es Sinn macht das Feld anzuzeigen bzw. das Objekt zu speichern
Alpha Version: 0.1.78
* Fehler in den ACL´s behoben
+ Berechtigungen (ACLs) um Verbindungen erweitert
* Fehler in der Registry Klasse behoben
* Fehler in der View Classe behoben
+ Cache Funktionen im Adapter (auskommentiert – ungetestet)
* Fehler in den Berechtigungen behoben der zum Dead-Loop führt
+ Gruppen hinzugefügt (Baumstruktur der User)
+ Ältere Versionen als Pre Alpha Definiert
* Berechtigungssystem Fehler Behoben
+ Performance verbessert (Objekt und Listen Erstellung)
Pre Alpah Version: 0.0.7
- Berechtigungssystem – Rollenbasierend gelöscht
+ Berechtigungssystem – ACL-Basierend
+ Cache Klasse hinzugefügt
+ Cache Klasse an Registry angepasst
+ Registry Klasse mit der Methode getCache() erweitert
+ DB Class zu Singleton umgebaut
+ Factory Class um unbekannte Objecte anhand einer UniqueId zu erhalten
+ die() druch registry::_die() ersetzt um backtrace und login zu ermöglichen
+ Auslagern der Datenbankstrukturen in das itemSchema Object
+ Caching der Datenbankstrukturen im itemSchema Object
- Verbindungen werden nun nicht mehr als Array hinterlegt
+ Verbindungen werden in einer Tabelle in der Datenbank hinterlegt
+ Registry Klasse greift jetzt lesend auf eine Tabelle zu falls es den gesuchten Wert nicht findet
+ config_end.inc.php hinzugefügt (um Operationen nach dem Aufbau der Website druchzuführen)
+ itemPermission Singleton Class hinzugefügt um ACL´s aus der Datenbank zu lesen
* Fehler in der Cache Klasse behoben
+ Datenbankfelder date time timestamp datetime und enum werden vom system geprüft / konvertiert
Pre Alpah Version: 0.0.6 (unstable)
+ Smarty für Template System
+ Registry Singleton Class hinzugefügt
+ DB Class umgebaut – Singleton, Konfiguration aus Registry
+ Classennamen geändert (Finale Klasse ist immer die FRObject und FRList)
+ User Class hinzugefügt
+ Angemeldeter Benutzer – verwaltet von der Registry
+ Backtrace hinzugefügt
+ Verbindungen werden nun als Array in der Datei “inc/class/base/config/relations.inc.php” hinterlegt
+ Berechtigungssystem – Rollenbasierend (unstable)
+ Baumstrukturen wieder eingebaut
+ Views autoloader hinzugefügt
+ Views Post/Get Parser hinzugefügt
Pre Alpah Version: 0.0.5
* Fehler in den Verbindungen behoben
+ Methoden und Variablen Deklarationen angepasst (private protected final usw..)
Pre Alpah Version: 0.0.4
+ Resultset und DB getrennt (zwei Dateien)
+ Ordnerstruktur geändert
* Fehler in den Verbindungen behoben
+ Felder und Tabellenindex werden automatisch via “SHOW COLUMNS FROM …” eingelesen
- Baumstrukturen zurückgestellt
Pre Alpah Version: 0.0.3 (unstable)
+ Objecte erhalten automatisch via __call neue Funktionen wie
“getSunList()”, “setUniverse()” oder “removeCountry()”
+ Verbindungen zwischen Objecten werden in eigener Tabelle gespeichert
+ Anfänge der Baumstruktur von Objecten (unstable)
+ Verbindungen werden in einem Array Konfiguriert
Pre Alpah Version: 0.0.2
+ Objecte werden automatisch via __autoload geladen
+ Ordnerstruktur geändert
Pre Alpah Version: 0.0.1
+ Tabellen und Felder werden im Schema für jedes Object festgelegt
+ Integer Float und String Felder werden gecastet
+ SqlParserClass in die Liste Integriert
+ Jedes Object wird in einer Zentralen Datenbank mit einer UniqueId gespeichert
Legende
+ Neues Feature
- Feature entfernt
* Bug Behoben
–> Planed
