Version Barrhorn

Veröffentlichungsdatum -nicht veröffentlicht-
Sicherheitsupdate nein
Behobene Fehler 0
Optimierungen 0
Übersicht Versionshistorie

Hinweis

Beim Update wird die Verzeichnisstruktur von webEdition umgebaut. Bitte machen Sie vorher eine Datensicherung!

Die Datenbank und alle Dokumente werden auf UTF-8 umgestellt; es wird nun die Collation utf8mb4_general_ci verwendet. Sofern Fremdtabellen verwendet werden sollten diese ebenfalls an die neue Collation angepaßt werden, da es sonst zu Problemen kommen kann. Das <we:charset> Tag liefert nun nur noch UTF-8 zurück, egal was hier eingestellt wurde.

Das Backup-System wurde nun auf Zip-Archive umgestellt. Alte Backups können noch gelesen werden.

Nach dem Update ist ein Rebuild der Vorlagen nötig!


Informationen für Entwickler

Änderungen an internen Funktionen/webEdition Tags/Datenstrukturen

  • Geänderte Verzeichnisstruktur! Die Verzeichnisstruktur von webEdition ändert sich folgendermaßen:
    Verzeichnis Inhalt Bemerkungen
    custom apps
    codesnippets
    conf
    hook
    hooks
    tag
    tw
    alle Benutzeranpassungen (Apps, Config, Hooks, Tags)
    generated backup
    site
    templates
    versions
    alles was von WE generiert wird und idr. neu erzeugt werden kann (Backup, Site, Templates, versions)
    samples   Beispiele (Configs, Hooks)
    temp cache
    fragments
    preview
    tmp
    alles was Temporär ist (Cache, Fragmente Temp)
    we classes
    cli
    css
    images
    include
    js
    libraries
    licenses
    alles statische Inhalte (keine Veränderung außer durch Updates)

    Es entsteht somit eine klare Trennung der statischen und veränderlichen Inhalte.

  • <we:linklist> wurde entfernt. Beim Update wird diese in einen <we:block> gewandelt. Nach dem Rebuild wird das Tag <we:linklist> automatisch zu einem <we:block>. Die Templates sollten nach dem Update angepaßt werden.
  • Objekt-Tabellen: die 1:1 Beziehung zwischen tblObject_X und tblObjectFiles gilt NICHT mehr. Durch den Wegfall der tblTemporaryDoc besitzt jede Objekt-Tabelle eine weitere Spalte OF_DocumentTable, die angibt ob es sich bei dem Eintrag um ein gespeichertes oder ein normales Dokument handelt.
  • Geänderte Klassenamen - hier die wichtigsten:
    alt neu Bemerkungen
    we_folder we_folder_document
    we_folder_objectFile
    we_folder_vfile
    we_folder_template
    we_folder_module
    Je nach Bereich/Tabelle wird nun eine eigene Klasse verwendet.
    we_imageDocument we_document_image  
    we_objectFile we_contents_objectFile  
    we_webEditionDocument we_document_webEdition  
    Weitere Änderungen sind in webEdition/we/classes/contents zu sehen.
  • Geänderte Datenstrukturen:
    • tblnavigation enthält keine Einträge für den Kundenfilter mehr
    • tblFiles, tblObjectFiles, ... ist komplett auf den Datentyp "TIMESTAMP" migriert. Die Spalten Creation_Date,Mod_Date und Publish_Date sind hierfür verwendet worden. Die Spalten CreationDate, ModDate und Published werden als virtuelle Spalten weiter angeboten, sind aber als deprecated eingestuft!
  • PHP 7:
    • durch die Umstellung auf PHP 7, werden die nun verfügbare Typisierung streng durchgesetzt. Alle Funktionen und Methoden achten auf die korrekten Datentypen. Eine Initialisierung bspw. $doc=new we_document_webEdition(); $doc->initByID("3"); führt zu einem Fehler, da der übergebene Typ "String" und nicht "Int" ist.

 

Deprecated: Funktionen/webEdition Tags/Datenstrukturen die ab dieser Version nicht mehr genutzt werden sollten

Folgende globale Variablen werden ersetzt
Alt Neu Bemerkungen
$GLOBALS['DB_WE'] DB_WE::$inst  für die Funktionen f,getHash ist diese Angabe idr. unnötig!
$GLOBALS['we_editmode'] we_base_WE::$editmode
<we:ifEditmode>
 
 $GLOBALS['WE_MAIN_ID']  we_base_WE::$mainDoc['id']  sollte nur intern/im Tag über self::getDocForTag verwendet werden
 $GLOBALS['WE_MAIN_DOC'] we_base_WE::$mainDoc['doc']   
$GLOBALS['we_doc']->setElement($name,$val) <we:setVar to="self" name="$name" value="$val"/>
we_tag('setVar', ['to' => 'self', 'nameto' => $name, 'value' =>$val]) 
 
$GLOBALS['we_doc']->getElement($name) <we:input name="$name"/>
we_tag('input', ['name' => $name])
 
$GLOBALS['we_doc']->Property <we:setVar to="self" property="true" name="Property" value="$val"/>
<we:var type="property" doc="self" name="Property"/>
Die Rückgabe der Properties erfolgt als String - beachte das beim Setzen von Nicht String-Werten es zu Problemen in WE kommen kann/wird!
$GLOBALS['we_doc'] we_base_WE::getWeDoc() Prüfe, ob du deinen Kode nicht durch WE-Tags umschreiben kannst.
     
     

Funktionen/webEdition Tags/Datenstrukturen die in dieser Version nicht mehr zur Verfügung stehen

  • Die Funktion printElement (we_tag.inc) wurde final entfernt
  • Die Unterstützung für das Backend mysql wurde entfernt. Alle WE Versionen sollten bereits länger auf mysqli laufen.
  • Die Unterstützung von WE-Tags als Funktionen wurde entfernt. we-Tags müssen nun als Klasse implementiert sein. Siehe z.B. we/classes/tag/we_tag_a.class.php. Custom-Tags werden beim Update kopiert, sind aber erst lauffähig, wenn die Dateiendung .class.php lautet und auf die neue Basisklasse umgestellt sind.
  • Tag-Wizzard Einträge müssen nun von we_weTag_twbase erben und die Klassen we_tagData_* nutzen. Siehe hierzu bspw. webEdition/we/classes/tw/we_tw_a.class.php. Da alte TW Einträge nicht lauffähig sind, werden diese in webEdition/we/include/old-tw-Tags verschoben.
  • $GLOBALS['lv'] wurde entfernt
  • Tags:
    <we:ifHasShopVariants> und <we:useShopVariant/>
powered by webEdition CMS