Seite 1 von 1

Plugin - Templates: Gab es Änderungen in 4.9.4?

Verfasst: Mo 28. Jul 2014, 15:10
von rethus
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.

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

Verfasst: Mi 30. Jul 2014, 12:27
von mischa.holz
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.

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

Verfasst: Do 31. Jul 2014, 07:58
von frederic.schneider_4fb
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.

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

Verfasst: Fr 1. Aug 2014, 16:34
von rethus
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

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

Verfasst: Fr 1. Aug 2014, 17:35
von rethus
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.

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

Verfasst: Do 7. Aug 2014, 07:37
von frederic.schneider_4fb
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!

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

Verfasst: Do 7. Aug 2014, 09:35
von frederic.schneider_4fb
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.