MetaModels Workshop in Berlin
Ergebnis 1 bis 8 von 8

Thema: Anpassung extContao für Contao 2.11

  1. #1
    Alter Contao-Hase Avatar von soweit_ok
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard Anpassung extContao für Contao 2.11

    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 ...

  2. #2
    Alter Contao-Hase Avatar von Messa
    Registriert seit
    19.01.2011.
    Ort
    Vorarlberg, Österreich
    Beiträge
    1.416

    Standard

    Contao im "abgesicherten Modus" laufen lassen, damit keine 3-Erweiterungen geladen wernde und dann
    versuchen über Autoload-Creator die bestehenden Dateien der Erweiterung zu überschreiben.

    Vielleicht gehen dadurch ein paar Fehler weg.

    Kenn leider die Erweiterung nicht

    Liebe Grüße
    Geändert von Messa (19.08.2014 um 22:27 Uhr)
    Full Service Agentur - Grafikdesign, Screendesign, Webdesign, Webentwicklung, SEO, Weiterbildung, persönliches Coaching
    http://www.matthiasgmeiner.com

  3. #3
    Alter Contao-Hase Avatar von soweit_ok
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard

    Hast Du wohl falsch verstanden. Ich will die Erweiterung (ein auf dem Javascript-Framework "extJs" basierendes Backendtheme, das unter C 2.9.3 einwandfrei läuft) zunächst auf Contao 2.11 portieren. Das Umbenennen der zwei zugehörigen Templates auf html5 allein hat´s noch nicht gebracht.

    Ist "Autoload" auch für C 2.11.x und falls ja, was macht man damit? Na ja, und es werden auch mehrere JS-Fehler in der Konsole angezeigt, die müssten ebenfalls behoben werden.

  4. #4
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.400
    User beschenken
    Wunschliste

    Standard

    Mission Impossible!

    Das in der Erweiterung eingesetzte Framework hat die Version 2.2 (aktuell ist V5). Contao 2.9.5 ist ein alter Hut. 2.11 wird auch nicht mehr unterstützt.

    Entwicklungsanfragen gibt es viele. Im Verhältnis dazu sind Entwickler eher schwer zu finden. Und die Webseite vom eigentlichen Entwickler zeigt auch eine 404. Und eine Opensource Community will neue Erweiterungen für Contao3.

    Trotzdem viel Glück bei der Suche


  5. #5
    Alter Contao-Hase Avatar von soweit_ok
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard

    Zitat Zitat von ciaobello Beitrag anzeigen
    Mission Impossible!
    Und eine Opensource Community will neue Erweiterungen für Contao3.
    Ja, das weiß ich natürlich. Neben der Community gibt´s nur eben noch die Welt der Kunden bzw. Systemanwender. Bei denen besitzt Bedienbarkeit und Übersicht des BE besonders hohen Stellenwert. Okay, gleich für Contao 3, dagegen hätte ich auch nichts, denn nach und nach komme ich ja auch selbst dorthin. Einige Kunden haben allerdings noch 2.x-Installationen und wollen vorläufig noch kein Update, z. B. wg. genutzter unter C3 nicht verfügbarer Erweiterungen oder wenn es ihnen noch keine nennenswerte Vorteile böte.

    Es sind eigentlich nur zwei spezielle Belange, die mir bei "extContao" vorhanden sind und ich beim Standard-BE vermisse. 1. Responsives fluides Verhalten. Das kann ich mittels CSS allerdings mit recht geringem Aufwand auch selber anpassen, ebenso fixe Buttons, Sticky Footer etc.. Aber ich hätte 2. auch fürs BE neuerer Contao-Versionen gern wieder die Möglichkeit, mehrere Bearbeitungsinstanzen in beschrifteten internen TABs zu öffnen. Keine ganz schlechte Alternative wären vielleicht auch zusätzl. Bearbeitungslinks z. B. für Artikel, Artikelkonfiguration, Seiten etc. in der Lightbox öffnen zu können.

    Mir geht halt dies ständige Hin-und Hergehüpfe mit auch Fokusverlust tierisch auf den Keks, besonders bei Webseiten mit vielen Pages und Artikeln. Du willst z. B. von oben nach unten verschiedene Artikel bearbeiten, kommst zurück und musst entweder gefühlte 100m nach unten scrollen oder ständig darauf achten, den Baum nicht zu weit zu öffnen. Die Funktion "Mehrere bearbeiten" ist zwar manchmal recht nützlich, reißt aber auch nicht alles raus - für vieles zu umständlich. So vermisse ich einige Filter, u. a. um im Artikelbaum für alle Seiten wahlweise nur spezielle Layoutbereiche (Header, Hauptspalte, re. Spalte ...) anzuzeigen. Und bisweilen auch Filter für Artikel, in denen sich Spezielles (wie etwa Bullet-Listen oder Links) befindet. So musste ich gestern in einer großen Webseite auf zig Pages eine neue Klasse eintragen, um Bullets standardmäßig mit einer thematisierten Grafik zu ersetzen. Nach 2 Stunden wird´s langsam nervig. "Mehrere bearbeiten" nützt da allein nicht viel, wenn man nicht auch filtern kann, um zu finden, was man eigentlich bearbeiten will.

    Auch Drag&Drop könnte umfassender verfügbar sein. Alles in allem gehts mir um Zeitersparnis. Sich Stunden um Stunden einen Wolf klicken müssen, obwohl sich manches mit besserer funktionaler Unterstützung viel zeitsparender erledigen ließe. "extContao" war auch noch nicht das Gelbe vom Ei. M. E. aber ein Ansatz in einer interessanten Richtung und u. a. das extJs-Framework bietet durchaus einiges zur Verbesserung der Usability.

  6. #6
    Alter Contao-Hase Avatar von soweit_ok
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard

    Zitat Zitat von ciaobello Beitrag anzeigen
    Contao 2.9.5 ist ein alter Hut. 2.11 wird auch nicht mehr unterstützt.
    Sicher, und techn. Neuerungen sind fein, wenn sie gut sind. Und dafür nunmal mitunter auch das teils schmerzliche Abschneiden alter Zöpfe nötig. Brechen der Abwärtskompatibilität ist aber trotzdem immer eine sehr kritische Sache. Und noch mehr, wenn das sogar vorgebliche Minor-Releases betrifft (2.9 > 2.10/2.11. Weil der früher oder später entstehende Updatezwang für viele Anwender beachtliche Mehrkosten bedeutet, ohne einen erkennbaren akt. Vorteil für ihre jeweiligen Webseiten.

  7. #7
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.400
    User beschenken
    Wunschliste

    Standard

    entstehende Updatezwang für viele Anwender beachtliche Mehrkosten bedeutet, ohne einen erkennbaren akt. Vorteil für ihre jeweiligen Webseiten.
    Mehrkosten für was? Für eine Rückständige Erweiterung mit Webtechnologien die vor 5 Jahren aktuell waren? Nimm ein Messer und Schneide den Strick Durch den dich an dem Betonklotz festbindet.
    Oder arbeite mit dem was Du hast. Die Seite sieht dann halt "alt" aus. Aber Du hast kein Zwang zum Updaten. Die CCA hat ja sogar Sicherheit Patches um das gröbste Risiko mit den alten Versionen einzudämmen bereitgestellt ( https://c-c-a.org/aktuelles/sicherheitshinweise ) Musst halt nur mal auf 2.9.5 Updaten. Dass sollte doch möglich sein?

    Je mehr schnick-schnack Du in den Core packst je unflexibler wird das ganze. Dass ist aber dann nicht das Problem des Fortschritts sondern viel mehr der Bequemlichkeit und der Arbeitsweise jedes einzelnen.

    Dein Problem ist nicht Contao. Es ist eine abgelaufene Erweiterung die nicht mehr weiterentwickelt wird!


  8. #8
    Alter Contao-Hase Avatar von soweit_ok
    Registriert seit
    07.05.2011.
    Beiträge
    1.199

    Standard

    Ob´s möglich ist, auf 2.9.5 upzudaten? Sicher, vor einiger Zeit bereits erledigt bzw. mehrere Versionen dabei übersprungen und inkl. umfangreicher eigener Extensions und Plugins gleich auf 2.11.12 hochgezogen. Ich denke, auf 3.x ginge jetzt ebenfalls. Nur gefällen mir einige essenzielle Lösungen im 3er-Release nicht besonders und ich will noch ein bisschen abwarten, wie es damit weitergeht. Zwei meiner Webseiten laufen allerdings noch auf 2.9.3., hab darin allerdings ebenfalls sämtliche relevanten Sicherheitspatches schon zeitnah laufend gemacht, also kein Problem und die Patchpakete ab 2.9.5 deshalb nicht mehr nötig.

    Hm, ich hab das doch eigentlich klar ausgedrückt? "Mehrkosten" bezogen sich natürlich nicht auf Erweiterungen, sondern abwärtskompatibilitätsbrechende Contao-Releases.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •