Branch 1.13

Version 1.13.0

Releasedatum: 20.03.2013

Geänderte Pakete

  • Dragon
    • Json
      • Es gibt nun einen einfachen Client um Requests zu anderen JsonRPC Servern zu senden
      • Über die Konfigurationsdatei "/config/dragon/json/route.php" können nun Routen hinterlegt werden für die Services
      • Die Instanz des Servers ist nun unter dem Key "Dragon_Json_Server" in der Zend Registry verfügbar
      • Der Server bietet nun die Möglichkeit auf die interne Servicetabelle zuzugreifen
  • DragonX
    • Account
      • Es ist nun möglich die Session in einer anderen Storage Engine zu speichern und es wird dabei auch die Storage Engine des Memcache unterstützt
      • Die Session erlaubt nun auch das Hinzufügen zusätzlicher Daten beim Login. Beim Login wird standardmäßig der Account in der Session abgelegt
    • Cronjob
      • Die Cronjobs sind nun per Dependency Injection (Ableitung des Service und der Logic) anpassbar
    • Device
      • Das Paket wurde überarbeitet und bietet nun eine Geräteregistrierung um Accounts mit Geräten zu verknüpfen
    • Emailaddress
      • Die Authentifizierung gibt nun neben dem Account auch den Datensatz zur E-Mail Adresse zurück
      • Es gibt nun die Möglichkeit sich die Validierungsanfrage zurück geben zu lassen
      • Die Algorithmen zur Erzeugung eines Validierungs- und eines Passwortanfragehashes sind nun per Einstellungsdatei austauschbar
      • In der Konfigurationsdatei kann nun ein Validator für das Passwort definiert werden
      • Passwort vergessen Anfragen haben nun eine Lebenszeit nach der sie gelöscht werden
      • Die Validierungsanfrage kann nun nach einer bestimmten Wartezeit erneut gesendet werden
      • Es darf für eine E-Mail Adresse nur eine Passwort vergessen Anfrage bestehen. Somit kann erst nach der Lebenszeit wieder eine Anfrage erstellt werden
    • Storage
      • Es wurde ein Fehler in der Storage Engine des ZendDbAdapaters behoben der auftrat wenn man Schlüsselwörter von MySQL bei Spaltennamen in der "saveList()", "deleteByConditions()" oder "updateByConditions()" verwendete
      • Die ID bei Records muss nun nicht mehr vom Datentyp Integer sein, was vor allem für Records wie die Session wichtig ist die im Memcache abgelegt werden
      • "saveList()" unterstützt nun auch wieder Records die "created" und "modified" Attribute haben und befüllt diese beim Einfügen und Aktualisieren
      • Die Storage Engine des Memcache erlaubt nun die Definition eines Namespace der für jeden Record vorangestellt wird
      • Die Storage Engine des ZendDbAdapaters bietet nun die Möglichkeit mehrere SQL Statements mit einem Aufruf auszuführen
      • Beim Installieren der Packages kann nun angegeben werden welche Storage Engines berücksichtigt werden sollen
      • Beim Löschen von Datensätzen wird nun die ID richtig auf NULL gesetzt statt das Attribut komplett entfernt
      • Das Memcacheobjekt steht nach aussen hin nun per "getMemcache()" der Storage Engine zur Verfügung
      • Die Storage Engine des Memcache erlaubt nun auch das Speichern von einfachen Werten unabhängig von Records

Allgemein

  • Die "cron.php" nimmt das Securitytoken nun auch von der Kommandozeile entgegen wodurch die Cronjobs über die Kommandozeile aufrufbar sind
  • Die Datentypen aller ID Spalten wurden angepasst und auf BIGINT erhöht um auch langlebige Anwendungen zu unterstützen
  • Externe Frameworks auf die aktuellen Versionen aktualisiert:
    • URI.js von v1.7.4 auf v1.9.1
    • jQuery von v1.7.2 auf v1.9.1
    • Bootstrap von v2.1.1 auf v2.3.1

Homepage

  • Die Accountverwaltung wird nur eingeblendet wenn die Pakete "Account" und "Emailaddress" angeschaltet sind, da "Account" alleine nicht alle Funktionen bietet

JsonClient

  • Für die Unterstützung von Htaccess wird nun eine Base64 Bibliothek genutzt

Migration vom Branch 1.12

Benötigt

  • Das Paket Device wurde überarbeitet und die Clients die bisher die Services des Paketes genutzt haben müssen überarbeitet werden
  • Durch die zusätzliche Rückgabe der E-Mail Adresse müssen die Stelle der E-Mail Authentifizierung angepasst werden
  • Bei Routen ist ein Servicename nicht mehr auf den Klassennamen abbildbar. Um auf den Klassennamen zu kommen muss nun die Table des Servers ausgelesen werden