Plugin Compatibility with PHP 8
Moderator: Tata
Re: Plugin Compatibility with PHP 8
Stimmt bei den beiden folgenden Plugins (Uploader 1.0beta2 + Jm_iframe) habe ich im im ursprünglichen Post die falschen Ergebnisse reinkopiert.
Uploader 1.0beta2 (edit: 04.02.2023)
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 =>
Beim Pluginaufruf Tab "Konfiguration" + der dortigen Speicherung Debugmeldungen:
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:5
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:6
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:7
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:8
Adminmenü Plugin Funktion / Bedienung: PHP 8.0 =>OK
Jm_iframe (edit: 04.02.2023)
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 + PHP 8.0 =>
Dauerhafte Debug Meldung und keine erkennbare Funktionseinschränkung:
XH-DEPRECATED: Function initvar() is deprecated
/mnt/.../plugins/jm_iframe/admin.php:15
Danke für die Hinweise zu Crazystat 1.05 + Expandcontract 0.7 + Swiper 1.0rc1.
Da werde ich noch einmal nachschaun und nacharbeiten.
Uploader 1.0beta2 (edit: 04.02.2023)
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 =>
Beim Pluginaufruf Tab "Konfiguration" + der dortigen Speicherung Debugmeldungen:
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:5
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:6
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:7
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:8
Adminmenü Plugin Funktion / Bedienung: PHP 8.0 =>OK
Jm_iframe (edit: 04.02.2023)
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 + PHP 8.0 =>
Dauerhafte Debug Meldung und keine erkennbare Funktionseinschränkung:
XH-DEPRECATED: Function initvar() is deprecated
/mnt/.../plugins/jm_iframe/admin.php:15
Danke für die Hinweise zu Crazystat 1.05 + Expandcontract 0.7 + Swiper 1.0rc1.
Da werde ich noch einmal nachschaun und nacharbeiten.
Re: Plugin Compatibility with PHP 8
Da gab es bereits https://github.com/cmsimple-xh/teaser/issues/2, das ich nun gefixt habe. Und die Debug-Meldungen bei der Pluginaktivierung sind nun ebenfalls behoben. Vielleicht magst du ja den aktuellen Entwicklungsstand mal testen?
Oh, das ist https://github.com/cmb69/uploader_xh/issues/10; längst behoben, aber noch keine neue Version veröffentlicht.Hartmut wrote: ↑Sat Feb 04, 2023 2:39 pmUploader 1.0beta2 (edit: 04.02.2023)
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 =>
Beim Pluginaufruf Tab "Konfiguration" + der dortigen Speicherung Debugmeldungen:
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:5
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:6
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:7
NOTICE: Indirect modification of overloaded element of XH\PluginConfig has no effect
/mnt/.../plugins/uploader/config/metaconfig.php:8
Adminmenü Plugin Funktion / Bedienung: PHP 8.0 =>OK
Noch harmlos, aber sollte behoben werden. Wird das Plugin denn noch gewartet?Hartmut wrote: ↑Sat Feb 04, 2023 2:39 pmJm_iframe (edit: 04.02.2023)
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 + PHP 8.0 =>
Dauerhafte Debug Meldung und keine erkennbare Funktionseinschränkung:
XH-DEPRECATED: Function initvar() is deprecated
/mnt/.../plugins/jm_iframe/admin.php:15
Christoph M. Becker – Plugins for CMSimple_XH
Re: Plugin Compatibility with PHP 8
Da bei meinem letzten Strato Paket PHP 7.4 ab dem 07.02.23 kostenpflichtig ist, wird der Test zeitnah erfolgen.cmb wrote: ↑Sat Feb 04, 2023 3:11 pmDa gab es bereits https://github.com/cmsimple-xh/teaser/issues/2, das ich nun gefixt habe. Und die Debug-Meldungen bei der Pluginaktivierung sind nun ebenfalls behoben. Vielleicht magst du ja den aktuellen Entwicklungsstand mal testen?
Viele Grüße
Hartmut
Re: Plugin Compatibility with PHP 8
Teaser_XH v. 1.2.1 - Master
Dieses Plugin kannte ich noch nicht
Und mir ist auch (noch) nicht ganz klar, welche Vorteile es eigentlich bringt.
Ein Schnelltest des Masters zeigte aber folgende Probleme:
Teaser bearbeiten.
Unterhalb des Editors wird eine Teaser-Vorschau angezeigt.
Ein Klick darauf bringt folgende Debug-Meldung (weiße Seite):
Dieses Plugin kannte ich noch nicht
Und mir ist auch (noch) nicht ganz klar, welche Vorteile es eigentlich bringt.
Ein Schnelltest des Masters zeigte aber folgende Probleme:
Teaser bearbeiten.
Unterhalb des Editors wird eine Teaser-Vorschau angezeigt.
Ein Klick darauf bringt folgende Debug-Meldung (weiße Seite):
Die gleiche Meldung erhält man, wenn es mehrere Teaser gibt und man dann eine Teaser-Nummer (im oberen Teil) anklickt.Uncaught TypeError: Unsupported operand types: string - int in … \plugins\teaser\admin.php:259
Stack trace:
#0 … \cmsimple\cms.php(1123): include()
#1 … \index.php(6): include(' … \\ht...')
#2 {main}
thrown in … \plugins\teaser\admin.php on line 259
Re: Plugin Compatibility with PHP 8
Ich glaube, da ging es eigentlich vor allem um das CSS, das vom Plugin passend erzeugt wird.
Ja, das hatte ich bei Hartmuts Post ganz vergessen, und dann konnte ich es nicht reproduzieren. Aber so kann ich; es ist das leidige Problem mit der Änderung der Vergleiche von Strings und Zahlen (https://3v4l.org/H6THZ); die Lösung ist einfach, aber ich gehe nach wie vor davon aus, dass viele Plugins von dieser Änderung betroffen sind (man wird das ohne statische Analyse wohl nur schwer finden können).frase wrote: ↑Sat Feb 04, 2023 3:44 pmEin Schnelltest des Masters zeigte aber folgende Probleme:
Teaser bearbeiten.
Unterhalb des Editors wird eine Teaser-Vorschau angezeigt.
Ein Klick darauf bringt folgende Debug-Meldung (weiße Seite):Die gleiche Meldung erhält man, wenn es mehrere Teaser gibt und man dann eine Teaser-Nummer (im oberen Teil) anklickt.Uncaught TypeError: Unsupported operand types: string - int in … \plugins\teaser\admin.php:259
Stack trace:
#0 … \cmsimple\cms.php(1123): include()
#1 … \index.php(6): include(' … \\ht...')
#2 {main}
thrown in … \plugins\teaser\admin.php on line 259
Christoph M. Becker – Plugins for CMSimple_XH
Re: Plugin Compatibility with PHP 8
Die Lösung lässt zwar die Fehlermeldung verschwinden – aber: Eigentlich sollte ja der entsprechende Teaser (bei mehreren) in den Editor geladen werden. Das passiert aber nicht.cmb wrote: ↑Sat Feb 04, 2023 4:13 pmJa, das hatte ich bei Hartmuts Post ganz vergessen, und dann konnte ich es nicht reproduzieren. Aber so kann ich; es ist das leidige Problem mit der Änderung der Vergleiche von Strings und Zahlen (https://3v4l.org/H6THZ); die Lösung ist einfach, aber ich gehe nach wie vor davon aus, dass viele Plugins von dieser Änderung betroffen sind (man wird das ohne statische Analyse wohl nur schwer finden können).
Um andere als den Ersten zu bearbeiten, müsste man die Reihenfolge ändern – aber das ist nicht so gewollt.
Re: Plugin Compatibility with PHP 8
Ja, da stimmt was nicht. Hat allerdings nichts mit diesem Fix zu tun (der forciert nur unter PHP 8 das gleiche Verhalten wie unter vorherigen PHP-Version), sondern lag an einem vorherigen Fix. Sollte nun aber wieder passen.frase wrote: ↑Sat Feb 04, 2023 4:25 pmDie Lösung lässt zwar die Fehlermeldung verschwinden – aber: Eigentlich sollte ja der entsprechende Teaser (bei mehreren) in den Editor geladen werden. Das passiert aber nicht.
Um andere als den Ersten zu bearbeiten, müsste man die Reihenfolge ändern – aber das ist nicht so gewollt.
Ach so, anstatt die temporären Infos in der Session zu speichern (wo sie natürlich Futsch sind, wenn man die Seite irgendwann später bearbeitet, könnte man sie natürlich auch in irgendeiner Datei speichern; aber eben bitte nicht in den Sprachdateien). Ich denke, so wie es jetzt ist, ist es aber eigentlich ganz gut; was interessiert es den Nutzer nach Tagen/Wochen/Monaten, an welchem Teaser bzw. welcher Nummer er zuletzt gearbeitet hat.
Christoph M. Becker – Plugins for CMSimple_XH
Re: Plugin Compatibility with PHP 8
Re: Plugin Compatibility with PHP 8
Hier moch ein Kurztest von gestern Nachmittag und heute Vormittag:
"Extedit 1.1"
Änderung classes/Controller.php
Alt: = !get_magic_quotes_runtime() ? 'ok' : 'fail';
Neu: = !function_exists('get_magic_quotes_runtime') || !get_magic_quotes_runtime() ? 'ok' : 'fail';
Beim Aufruf des Plugins im Adminmenü (PHP 7.4):
DEPRECATED: Function get_magic_quotes_runtime() is deprecated
/mnt/.../plugins/extedit/classes/Controller.php:117
Beim Wechsel im Plugin in den Tab "Konfiguration" verschwindet die Debugmeldung.
Beim Aufruf des Plugins (PHP 8.0) + beim Wechsel im Plugin in den Tab "Konfiguration" ohne Debugmeldungen
Unter PHP 7.4 + 8.0 kann mit Exedit ohne Fehler und ohne Debugmeldungen bearbeitet werden.
xxxxxxxxxxxxxxxxx
Expandcontract_XH 1.0 (Nach Update von 0.7 auf 1.0):
Danke für den Hinweis. Nach dem Update auf "1.0" und Anpassungs des Contents an die "neue Syntax":
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 + PHP 8.0 => OK
xxxxxxxxxxxxxx
Teaser 1.2.1
Ich nutze das Plugin Teaser um auf einigen Content-Seiten mittels einer Vorschau auf untergeordnete Seiten mit Text und Bild hinzuweisen.
Bei Teaser gibt es (auch in früheren Versionen) die "Besonderheit" (=Bug), das bei der Auswahl einer anderen Teaserseite ZWEIMAL die neue Seite ausgewählt werden muss bis sie zur Bearbeitung angezeigt wird (vielleicht ein Timing-Thema?)
Nach Einarbeitung des Masters (4.02.2023, 16:46:55) und Aktivierung des Plugins im Adminmenü:
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK, nachdem die "alte" stylesheet.css reinkopiert worden ist (dort sind individuelle Teaserboxen hinzugefügt)
Beim Pluginaufruf unter PHP 7.4 (Tabs werden angezeigt): => OK
Wechsel (Auswahlmenü) von anderen Teaser-TXT-Dateien => OK
Auswahl einer anderen Teaserseite in Teaser-TXT-Dateien im Plugin: Nicht möglich (auch nach mehrmaliger Auswahl nicht.)
Beim Pluginaufruf unter PHP 8.0 (Tabs werden angezeigt): => OK
Beim Pluginaufruf der Plugin "Konfigseite" unter PHP 8.0: => OK
Bei der Auswahl einer anderen Teaserseite im Plugin unter PHP 8.0: => Whitescreen mit Fehlermeldung:
Uncaught TypeError: Unsupported operand types: string - int in /mnt/.../plugins/teaser/admin.php:259
Stack trace:
#0 /mnt/.../cmsimple/cms.php(1123): include()
#1 /mnt/.../index.php(6): include('...')
#2 {main}
thrown in /mnt/.../plugins/teaser/admin.php on line 259
Ursache derzeit unbekannt.
Gruß Hartmut
"Extedit 1.1"
Änderung classes/Controller.php
Alt: = !get_magic_quotes_runtime() ? 'ok' : 'fail';
Neu: = !function_exists('get_magic_quotes_runtime') || !get_magic_quotes_runtime() ? 'ok' : 'fail';
Beim Aufruf des Plugins im Adminmenü (PHP 7.4):
DEPRECATED: Function get_magic_quotes_runtime() is deprecated
/mnt/.../plugins/extedit/classes/Controller.php:117
Beim Wechsel im Plugin in den Tab "Konfiguration" verschwindet die Debugmeldung.
Beim Aufruf des Plugins (PHP 8.0) + beim Wechsel im Plugin in den Tab "Konfiguration" ohne Debugmeldungen
Unter PHP 7.4 + 8.0 kann mit Exedit ohne Fehler und ohne Debugmeldungen bearbeitet werden.
xxxxxxxxxxxxxxxxx
Expandcontract_XH 1.0 (Nach Update von 0.7 auf 1.0):
Danke für den Hinweis. Nach dem Update auf "1.0" und Anpassungs des Contents an die "neue Syntax":
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK
Adminmenü Plugin Funktion / Bedienung: PHP 7.4 + PHP 8.0 => OK
xxxxxxxxxxxxxx
Teaser 1.2.1
Ich nutze das Plugin Teaser um auf einigen Content-Seiten mittels einer Vorschau auf untergeordnete Seiten mit Text und Bild hinzuweisen.
Bei Teaser gibt es (auch in früheren Versionen) die "Besonderheit" (=Bug), das bei der Auswahl einer anderen Teaserseite ZWEIMAL die neue Seite ausgewählt werden muss bis sie zur Bearbeitung angezeigt wird (vielleicht ein Timing-Thema?)
Nach Einarbeitung des Masters (4.02.2023, 16:46:55) und Aktivierung des Plugins im Adminmenü:
Handling (Besuchersicht): PHP 7.4 + PHP 8.0 => OK, nachdem die "alte" stylesheet.css reinkopiert worden ist (dort sind individuelle Teaserboxen hinzugefügt)
Beim Pluginaufruf unter PHP 7.4 (Tabs werden angezeigt): => OK
Wechsel (Auswahlmenü) von anderen Teaser-TXT-Dateien => OK
Auswahl einer anderen Teaserseite in Teaser-TXT-Dateien im Plugin: Nicht möglich (auch nach mehrmaliger Auswahl nicht.)
Beim Pluginaufruf unter PHP 8.0 (Tabs werden angezeigt): => OK
Beim Pluginaufruf der Plugin "Konfigseite" unter PHP 8.0: => OK
Bei der Auswahl einer anderen Teaserseite im Plugin unter PHP 8.0: => Whitescreen mit Fehlermeldung:
Uncaught TypeError: Unsupported operand types: string - int in /mnt/.../plugins/teaser/admin.php:259
Stack trace:
#0 /mnt/.../cmsimple/cms.php(1123): include()
#1 /mnt/.../index.php(6): include('...')
#2 {main}
thrown in /mnt/.../plugins/teaser/admin.php on line 259
Ursache derzeit unbekannt.
Gruß Hartmut
Re: Plugin Compatibility with PHP 8
Hallo Hartmut,Hartmut wrote: ↑Sun Feb 05, 2023 12:22 pmTeaser 1.2.1
Beim Pluginaufruf unter PHP 7.4 (Tabs werden angezeigt): => OK
Wechsel (Auswahlmenü) von anderen Teaser-TXT-Dateien => OK
Auswahl einer anderen Teaserseite in Teaser-TXT-Dateien im Plugin: Nicht möglich (auch nach mehrmaliger Auswahl nicht.)
Beim Pluginaufruf unter PHP 8.0 (Tabs werden angezeigt): => OK
Beim Pluginaufruf der Plugin „Konfigseite“ unter PHP 8.0: => OK
Bei der Auswahl einer anderen Teaserseite im Plugin unter PHP 8.0: => Whitescreen mit Fehlermeldung:
Uncaught TypeError: Unsupported operand types: string - int in /mnt/.../plugins/teaser/admin.php:259
Stack trace:
#0 /mnt/.../cmsimple/cms.php(1123): include()
#1 /mnt/.../index.php(6): include('...')
#2 {main}
thrown in /mnt/.../plugins/teaser/admin.php on line 259
Ursache derzeit unbekannt.
ich habe gerade nochmal einen neuen Test mit dem aktuellen Master gestartet – und da sind alle beschriebenen Probleme behoben.
Das gilt sowohl für PHP 7.4.2 als auch für PHP 8.2.0
Du könntest ja mal dein momentan aktives Teaser-Plugin deaktivieren (einfach vor den Ordnernamen einen Punkt setzen = „.teaser“).
Dann könntest du den heruntergeladenen Ordner „teaser-master“ in deinen Plugin-Ordner kopieren und umbenennen zu „teaser“.
Normalerweise (Standard-Einstellungen) liegen die Teaser-Daten (*.txt) im Ordner „\userfiles\plugins\teaser\“.
Falls das bei dir anders konfiguriert war, dann musst du die Konfiguration noch ändern und den Ordner an die entsprechende Stelle kopieren.
Theoretisch sollte bei dieser Aktion nichts zerstört werden. Das hoffe ich zumindest.
Damit könnten wir vielleicht herausfinden, ob es nun in Ordnung ist, oder ob bei mir etwas nicht stimmt.