Plugin - Templates: Gab es Änderungen in 4.9.4?

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von rethus » Mo 28. Jul 2014, 15:10

Ich habe meine 4.9.2er auf 4.9.4 aktualisiert.
Plötzlich erhalte ich im Plugin Meldungen, dass das Template nicht mehr gefunden wird.

Die gesuchte Quelle ../templates//css/cT.main.css wurde nicht gefunden
Gab es hier Anpassungen in der 4.9.4er Version?

Momentan führt ein getcwd im Plugin direkt ins Contenido-Verzeichnis. Zuvor war es aber so, das man automatisch im eigenen Pluginverzeichnis des aktuellen Plugins landete.

In der Konsole des Browsers habe ich dies gefunden :
Screenshot_001_20140728.jpg
(35.5 KiB) Noch nie heruntergeladen
Ist ein Problem, das aus der contenidoConfig.js resultiert.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

mischa.holz
Beiträge: 86
Registriert: Do 28. Jun 2012, 15:30
Wohnort: Darmstadt
Kontaktdaten:

Re: Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von mischa.holz » Mi 30. Jul 2014, 12:27

Das sieht so aus als hätte dein Browser entweder noch alte JavaScript Dateien (Cache löschen!) oder als wären nicht alle Dateien aus der 4.9.4 korrekt ersetzt/eingefügt worden.

Eventuell solltest du erstmal von deinem Backup wiederherstellen und dann das Upgrade erneut versuchen.
CONTENIDO Doku - API Doku - Git Repo - Bug Tracker - CONTENIDO 4.9.4!!
Arbeitet nicht mehr bei 4fb

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von frederic.schneider_4fb » Do 31. Jul 2014, 07:58

Wir haben einige Anpassungen vorgenommen, sodass im Backend nun Hinweise gegeben werden, wenn geladene Dateien nicht vorhanden sind. Wenn ich es richtig verstanden habe, dass es um ein Plugin von Dir geht, dann wurde für die Datei "cT.main.css" offensichtlich ein ->addStyle('cT.main.css') vorgenommen, obwohl diese Datei (am angegebenen Ort) nicht existiert. Daraus folgt: Entweder die css-Datei hinzufügen bzw. Pfad korrigieren oder den addStyle-Befehl herausnehmen, wenn die Datei gar nicht benötigt wird. Sollte ich Dich falsch verstanden haben, gilt das, was Mischa ausgeführt hat.
Frederic Schneider
Entwickler bei der four for business AG

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von rethus » Fr 1. Aug 2014, 16:34

Ja, so ganz Bug-frei ist die Sache aber nicht!

Also als Fehlermedung erhalte ich :

Code: Alles auswählen

Die gesuchte Quelle http://…….de/contenido/plugins/xst_contactTeaser_pro//templates/standard/css/cT.main.css wurde nicht gefunden
Nun kopiere ich den Link, gebe diesen im Browser ein, und "tada", der Sourcecode der CSS-Datei wird angezeigt.
Contenido 4.9.4
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von rethus » Fr 1. Aug 2014, 17:35

Ok, die Abfrage die die Fehlermeldung wirft ist in contenido/classes/gui/class.page.php ab Zeile 329

Code: Alles auswählen

        // Warning message for not existing resources
        if($perm->isSysadmin($currentuser) && ((!empty($this->_pluginName) && !cFileHandler::exists($backendPath . $cfg['path']['plugins'] . $this->_pluginName . '/' . $cfg['path']['styles'] . $stylesheet))) ||
           (empty($this->_pluginName) && !cFileHandler::exists($backendPath . $cfg['path']['styles'] . $filePathName))) {
        	$this->displayWarning(i18n("The requested resource") . " <strong>" . $filePathName . "</strong> " . i18n("was not found"));
        }

        if (strpos($stylesheet, 'http') === 0 || strpos($stylesheet, '//') === 0) {
            // the given stylesheet path is absolute
            if(!in_array($stylesheet, $this->_styles)) {
                $this->_styles[] = $stylesheet;
            }
        } else if (!empty($this->_pluginName) && cFileHandler::exists($backendPath . $cfg['path']['plugins'] . $this->_pluginName . '/' . $cfg['path']['styles'] . $filePathName)) {
            // the given stylesheet path is relative to the plugin stylesheets
            // folder
            $fullpath = $backendUrl . $cfg['path']['plugins'] . $this->_pluginName . '/' . $cfg['path']['styles'] . $stylesheet;
            if(!in_array($fullpath, $this->_styles)) {
                $this->_styles[] = $fullpath;
            }
        } else if (cFileHandler::exists($backendPath . $cfg['path']['styles'] . $filePathName)) {
            // the given stylesheet path is relative to the CONTENIDO
            // stylesheets folder
            $fullpath = $backendUrl . $cfg['path']['styles'] . $stylesheet;
            if(!in_array($fullpath, $this->_styles)) {
                $this->_styles[] = $fullpath;
            }
        }
Auf den ersten Blick würde ich sagen, wurde hier etwas zu schnell geschossen :)

Ich sehe 3 Abfragen, die $stylesheet auseinander nehmen um herauszufinden welcher Art der in addStyle() angegebene Pfad ist.
Aber "VOR" diesen 3 Abfragen geht der Dateicheck keinen dieser Wege sondern verwendet $stlyesheet ganz ohne check. Somit unterstütz die Abfrage nur die Variante von Stylesheetablage, die direkt im Styles-Folder des Plugins selber ist, und somit ohne Pfad angegeben wurde.

[Wish]

Hier übrigens die bitte, die Benennung des Ordners für Styles auch einheitlich und logisch zu machen und ausserdem in das Verzeichnis "templates" hinein zu verschieben. Die anderern Verzeichnisse heißen js und img, warum wird dann hier styles, anstatt css als Unterverzeichnis für CSS-Files genutzt. Das spricht übrigens auch gegen die sonstige Benennung des "Stylesheet" Ordners, denn im restlichen Contenido heißen diese auch überall "css". Zudem hat der Styles-Ordner ja nichts außerhalb vom template-Verzeichnis zu suchen, oder gibt es dafür einen triftigen Grund?

Bitte hier - der Entwickler und Einfachheit wegen - an eine Norm halten.


Wenn Ihr das auch so seht, bitte als Bug im Ticketsystem erfassen.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von frederic.schneider_4fb » Do 7. Aug 2014, 07:37

rethus hat geschrieben:Ich sehe 3 Abfragen, die $stylesheet auseinander nehmen um herauszufinden welcher Art der in addStyle() angegebene Pfad ist.
Aber "VOR" diesen 3 Abfragen geht der Dateicheck keinen dieser Wege sondern verwendet $stlyesheet ganz ohne check. Somit unterstütz die Abfrage nur die Variante von Stylesheetablage, die direkt im Styles-Folder des Plugins selber ist, und somit ohne Pfad angegeben wurde.
Es gibt zwei Varianten, an welchem Ort Stylesheet-Dateien (CSS) zu liegen haben:
  • Im CONTENIDO-Style-Ordner des Backends
  • Bei Plugins in dessen Style-Ordner
Bezüglich der Ordnerbenennungen halte ich mit meinen Kollegen noch Rücksprache!
Frederic Schneider
Entwickler bei der four for business AG

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: Plugin - Templates: Gab es Änderungen in 4.9.4?

Beitrag von frederic.schneider_4fb » Do 7. Aug 2014, 09:35

Zu den Ordernamen:
Wir halten Deinen Hinweis durchaus für richtig. Allerdings haben wir Sorge, dass es zu Problemen bei einigen Nutzern führen könnte, wenn wir diese Umbenennungen mitten in der Entwicklung von CONTENIDO 4.9 durchführen. Sobald wir unser Backend jedoch völlig neu gestalten werden, wird eine vereinheitliche Ordnerstruktur selbstverständlich ihre Berücksichtigung finden.
Frederic Schneider
Entwickler bei der four for business AG

Antworten