Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 12. September 2018 07:16

jeff1980
Server-Pate
Ort: Dortmund
Registriert: 26. November 2010
Beiträge: 608

AdvancedContent und PHP7.x

Hallo zusammen,
immer mehr Anbieter schalten ja demnächst PHP5.6 und teilweise sogar 7.0 ab. Da ich noch einige Seiten mit CMSms 1.12.2 betreue und fast immer AdvancedContent einsetze wird das wohl nicht reibungslos klappen.
In der Regel läuft das Frontend auf Anhieb oder nach ein paar kleinen Anpassungen. Aber die Seitenbearbeitung mit installiertem AdvancedContent bleibt schlicht weiß.
Gibt es für dieses Modul schon entsprechende Anpassungen? Ich habe nichts dazu gefunden.
Teilweise kann ich schlicht nicht auf CMSms 2 umstellen, da Module verwendet werden, die es dafür nicht mehr gibt und für die ich auch noch keine Alternativen gefunden habe (z.B. EventsManager).
Bin für jeden Tipp dankbar ...

Offline

#2 12. September 2018 15:10

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.168

Re: AdvancedContent und PHP7.x

Ich arbeite dran.
Und dabei versuche ich auch gleich alle Fehler in CMSms/Smarty/ADOdb/Xajax ... etc. zu beseitigen.

Aber die Seitenbearbeitung mit installiertem AdvancedContent bleibt schlicht weiß.

Zumindest das passiert bei mir (lokal) unter PHP 7.1.9 nicht mehr.

Kannst Du mir ein "Testszenario" zusammenbasteln? Wenn ich nur die Standardsachen teste, die mir so auf die Schnelle einfallen, übersehe ich die Hälfte.
Ich bräuchte wenigstens die AC Einstellungen, Beispieltemplates mit allen verwendeten AC Blocktypen und diverse Smarty-Eigenkreationen.

Offline

#3 12. September 2018 15:19

jeff1980
Server-Pate
Ort: Dortmund
Registriert: 26. November 2010
Beiträge: 608

Re: AdvancedContent und PHP7.x

Hallo NaN,
das klingt ja richtig gut! Meinst Du Zugriff auf eine entsprechende CMSms-Installation?
Ich nutze auch nicht alle Features von AC, aber da kann ich Dir gerne etwas (für mich) repräsentatives aufsetzen.

Offline

#4 12. September 2018 15:25

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.168

Re: AdvancedContent und PHP7.x

Zugriff brauch ich nicht unbedingt.
Seiten-Templates dürften ausreichen.
Ich muss einfach wissen, was alles schiefgehen kann.
Ich hatte irgendwo mal ein Monster-Template, in dem zu Testzwecken so ziemlich alle möglichen Konstellationen verwendet wurden, die mit AC möglich sind. Der Rechner existiert aber leider nicht mehr :-(

Offline

#5 12. September 2018 15:35

jeff1980
Server-Pate
Ort: Dortmund
Registriert: 26. November 2010
Beiträge: 608

Re: AdvancedContent und PHP7.x

Ok, das bekomme ich hin :-) Müsste ich morgen schaffen.
Danke schon mal :-)

Offline

#6 12. September 2018 16:09

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.168

Re: AdvancedContent und PHP7.x

Wenn Du es richtig drauf hast, dann kannst Du parallel dazu ja mal die SVN-Version testen (die im trunk-Verzeichnis).

Offline

#7 12. September 2018 16:12

jeff1980
Server-Pate
Ort: Dortmund
Registriert: 26. November 2010
Beiträge: 608

Re: AdvancedContent und PHP7.x

Das mache ich gerne - habe vor ein paar Tagen schon mal reingeschaut, aber da war noch der alte Stand.
Ob ich es drauf habe, wird sich dann zeigen :-)

Offline

#8 12. September 2018 16:35

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.168

Re: AdvancedContent und PHP7.x

Hab heute erst was eingecheckt.

Aber einige Fehler hängen mit SMARTY zusammen.

Denn der eine fatal-Error im Backend hatte nichts mit AC zu tun, sondern mit Smarty. Und zwar liegt es daran, dass der PHP-Parser Sachen wie

return $this->smarty->registered_plugins[$plugin_type][$tag][0][0]->$function[1]($new_args, $this);

jetzt anders interpretiert als früher. D.h. früher wurde der Wert von $function[1] als Funktionsname verwendet. Jetzt nicht mehr. Jetzt wird zuerst versucht $function aufzulösen - was dann in der Fehlermeldung "Array to String conversion" endet - und daraus wird dann

return $this->smarty->registered_plugins[$plugin_type][$tag][0][0]->"Array"[1]($new_args, $this);

Was in etwa soviel wie

return $this->smarty->registered_plugins[$plugin_type][$tag][0][0]->r($new_args, $this);

bedeutet. Und diese Funktion wollte man an der Stelle garnicht aufrufen, vor allem weil es die nicht gibt.

Und dann gibt es so winzig kleine Tippfehler, die einem erst nach Umschreiben des Codes auffallen (z.B. $x = $y | $z; was eigentlich lauten müsste $x = $y || $z;  roll ).

Offline