Projekt-Template sollte über den VHost gesetzt werden, wenn nicht eingestellt
Situation
- Mein Projekt hat kein Template eingestellt
- Mein VHost, der das Projekt lädt, hat ein Template eingestellt
- Der Cache ist aus bzw. leer
- Mein Template überschreibt die
.html
-Datei eines anderen Paketes - Ich bin an einer Stelle im Frontend, wo diese
.html
-Datei geladen wird
Aktuelles Verhalten
- Beim Laden der
.html
-Datei prüft\Quiqqer\Engine\Smarty3::fetch()
, ob es im aktuellen Projekt-Template eine Datei gibt, die die Datei überschreibt - Um das aktuelle Projekt-Template zu holen wird
$Project->getAttribute('template')
ausgeführt (https://dev.quiqqer.com/quiqqer/package-smarty/blob/master/Quiqqer/Engine/Smarty3.php#L142) - Da das Projekt aber kein Template gesetzt hat, kommt da
false
raus, was so interpretiert wird wie "es gibt kein Template" - Folge: Die Original
.html
-Date wird geladen
Besseres Verhalten
- Wird ein Projekt über
QUI::getRewrite()->getProject()
geholt, sollte das Template des aktuellen VHosts automatisch in das Projekt gesetzt werden, wenn das Projekt keine eigene Template-Einstellung hat.
@mor Zur Info, weil das ggf. noch diskutiert werden muss.