Hallo,
weil ich damit viel lieber arbeite als mit dem Standard-BE, und einige meiner Kunden ebenfalls, möchte ich extContao auch unter 2.11 zum Laufen bekommen. Später auch gern unter 3.x, doch eins nach dem anderen.
Okay, ich versuchte es heute in der lokalen Version einer bestehenden 2.11.12-Webseite zu installieren. Die Installation klappte und nach der Umbenennung der beiden ext...Templates auf die Endung html5 startete es auch. Es läuft aber trotzdem nicht richtig. Folgende Fehler.
1. Die Meldungsausgabe der Begrüßungsseite wird mit Fehlermeldungen statt der normalen Systemausgabe quittiert:
Code:
Warning: Invalid argument supplied for foreach() in …\system\modules\backend\templates\be_welcome.html5 on line 20 #0 …\system\modules\backend\templates\be_welcome.html5(20): __error(2, 'Invalid argumen...', '…...', 20, Array)
#1 …\system\libraries\Template.php(245): include('…...')
#2 …\system\modules\backend\BackendTemplate.php(49): Template->parse()
#3 …\contao\extMain.php(328): BackendTemplate->parse()
#4 …\contao\extMain.php(208): Main->welcomeScreen()
#5 …\contao\extMain.php(449): Main->run()
#6 {main}
Diese Fehlermeldung wiederholt sich in jedem Segment, so als sei die Variable garkein Array oder das Array leer. Um mich dessen zu vergewissern, fügte ich eine Prüfung in den Code von be_welcome.html5 ein.
Originalcode:
Code:
<h1 id="tl_welcome"><?php echo $this->welcome; ?></h1>
<div id="tl_soverview">
<div id="tl_messages">
<h2><?php echo $this->systemMessages; ?></h2>
<?php echo $this->messages; ?>
</div>
<div id="tl_shortcuts">
<h2><?php echo $this->shortcuts; ?></h2>
<p><?php echo $this->shortcutsLink; ?></p>
</div>
<div id="tl_moverview">
<?php foreach ($this->arrGroups as $arrGroup): ?>
<h2><?php echo $arrGroup['label']; ?></h2>
<?php foreach ($arrGroup['modules'] as $strModule=>$arrConfig): ?>
<div class="tl_module_desc">
<h3><a href="<?php echo $arrConfig['href']; ?>" class="navigation <?php echo $strModule; ?>"<?php echo $arrConfig['icon']; ?>><?php echo $arrConfig['label']; ?></a></h3>
<p><?php echo $arrConfig['title']; ?></p>
</div>
<?php endforeach; ?>
<?php endforeach; ?>
</div>
</div>
Auszug mit meinen Einfügungen:
Code:
<h2><?php echo $arrGroup['label']; ?></h2>
<?php if (is_array($arrGroup['modules'])){ foreach ($arrGroup['modules'] as $strModule=>$arrConfig): ?>
<div class="tl_module_desc">
<h3><a href="<?php echo $arrConfig['href']; ?>" class="navigation <?php echo $strModule; ?>"<?php echo $arrConfig['icon']; ?>><?php echo $arrConfig['label']; ?></a></h3>
<p><?php echo $arrConfig['title']; ?></p>
</div>
<?php endforeach;
}else {
echo var_dump($arrGroup['modules']);
} ?>
<?php endforeach; ?>
Mit dieser Ergänzung sind die Fehlermeldungen weg, als Inhalt der Array-Elemente wird aber nur NULL ausgegeben. Sie sind also leer, woraus wohl auch die vorherige Fehlermeldung resultiert. Warum sie leer sind, obgleich sie es eigentlich nicht sollten, kann ich mir allerdings nicht erklären.
Die Begrüßungsseite schaut dann so aus:
extjs View nach Patch be_welcome-html5.jpg
Die Benutzeroberfläche wird also geladen, wobei die Steuerelemente wie Buttons, Menüs etc. wohl grundsätzlich funktionieren. Doch es werden keinerlei Inhalte angezeigt und wenn ich irgendeinen Menüpunkt wie z. B. "Artikel" anklicke, wird kein TAB geöffnet und also auch nichts ausgegeben.
Beim Laden des Backends wirft außerdem die Javascript-Console ebenfalls ein paar Fehler. Sorry, die Meldungen der Fehlerkonsole lassen sich leider nicht ins Clipboard kopieren, deshalb als Grafik:
JS-Fehler.jpg "ReferenceError:Class is not defined" ist ja aus der Core-Datei "contao.js" bereits aus verschiedenen anderen Fehlerszenarien bei Erweiterungsupdates bekannt. Jedoch brachte mich keiner der betreffenden Threads weiter, zumal es darin um andere Erweiterungen ging. Und meine Javascriptkenntnisse reichen nicht aus, um die Fehlerursachen in diesem Gewusel fremden Codes finden und beheben zu können.
Falls jemand der Experten unter euch da weiterhelfen kann, freu ich mich natürlich. Sollte es mit vertretbarem Aufwand zum Laufen zu bringen sein, vielleicht auch ein paar andere Community-User, die diese Oberfläche mögen.
Ich stelle parallel auch einen "Kleinstauftrag" ins Forum. Wäre also bereit, für mehr Aufwand als nur ein paar kleine Tipps einen finanziellen Beitrag zu leisten. Sehr gut läuft extContao bei mir mit noch bestehenden Contao 2.9.3 Installationen. Contao 2.10 habe ich komplett übersprungen und arbeite zurzeit mit 2.11.12 - wegen diverser Erweiterungsmodifikationen und wichtiger eigener Plugins.
Contao 3.x verwende ich auch schonmal gelegentlich, wenn´s mir inkl. verfügbarer Erweiterungen so reicht wie es ist. Hab halt erst ca. die Hälfte meiner sehr nützlichen eigenen Komponenten geupdatet. Schreib ich nur vorsorglich bzgl. eventueller Unkenrufe, warum ich noch mit C2.11 zugange bin. Bei den vielen tiefgreifenden Veränderungen geht die komplette Anpassung eben nicht von jetzt auf gleich.
Also dann, ich freu mich über jede Unterstützung. Hoffentlich fühlt sich die eine oder andere optional helfende Hand vom Thema angesprochen ...
Lesezeichen