Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
#76 16. Mai 2016 18:47
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: CMSMS 1.12 & die aktuelle Smarty-Version
es gibt ja schon die version v3.1.29 hat die wer schon am laufen...
Ok, da die .30 immer noch auf sich warten lässt und der Thread hier nun schon etwas länger (unübersichtlich?) geworden ist, hier mal eine Zusammenfassung der bislang erarbeiteten Änderungen, um die aktuelle Smarty-Version zum Laufen zu bringen:
1. aktuelle Smarty-Version holen, im Moment eben die 3.1.29 und lokal entpacken
2. im daraus entstehenden Verzeichnis "smarty-3.1.29" das Unterverzeichnis "libs" nehmen und in "smarty" umbenennen
3. das (umbenannte) Unterverzeichnis "smarty" in das CMSMS-Verzeichnis "lib" auf den Server laden
4. die Datei /lib/classes/class.CMSPageTemplateResource.php in einem Editor öffnen und Zeile 47
protected function buildUniqueResourceName(Smarty $smarty, $resource_name, $is_config = false)
ändern in
public function buildUniqueResourceName(Smarty $smarty, $resource_name, $is_config = false)
5. die Datei /lib/classes/Smarty_CMS.class.php in einem Editor öffnen und nach Zeile 36 dies
public $smarty;
als neue Zeile 37 und dann nach Zeile 49 dies
$this->smarty = $this;
einfügen
6. die Datei /plugins/postfilter.postcompilefunc.php in einem Editor öffnen und Zeile 19
function smarty_postfilter_postcompilefunc($tpl_output, &$template)
ändern in
function smarty_postfilter_postcompilefunc($tpl_output, $template)
7. die Datei /plugins/prefilter.precompilefunc.php in einem Editor öffnen und Zeile 19
function smarty_prefilter_precompilefunc($tpl_output, &$template)
ändern in
function smarty_prefilter_precompilefunc($tpl_output, $template)
Hab damit hier auf dem Server keine Probleme feststellen können, läuft momentan allerdings auch nur in der Core-Variante, sprich im Auslieferungszustand, ohne zusätzliche Module.
Der Vollständigkeit halber sei nochmals erwähnt, dass diese Änderungen Teilvoraussetzung (!) sind, um eine bestehende CMSMS-Installation auf PHP 7 umzustellen.
PS: Und wem bißle die Zeit fehlt, die Änderungen händisch nachzuvollziehen, hier das Paket mit Smarty komplett und den geänderten Dateien
https://dl.orangedox.com/cy2EbYmtiDkGzD … u-diff.zip
Wäre prima, wenn ihr das mal testen könntet. Vllt bekommen wir doch noch raus, woran genau es ggf hakt.
Offline
#77 17. Mai 2016 07:27
- Henk1060
- Server-Pate
- Registriert: 12. August 2011
- Beiträge: 632
Re: CMSMS 1.12 & die aktuelle Smarty-Version
Moin Moin... Wow super danke für die Anleitung und für die bereitgestellte File!
Na dann komme ich mal mit meine Fehlern )
News berreich ( CGBlog missbraucht)
Wird kein header geladen und hier der Fehler text.
Fatal error: Uncaught TypeError: Argument 3 passed to Smarty_Internal_Runtime_FilterHandler::runFilter() must be an instance of Smarty_Internal_Template, null given, called in /home/www/lib/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on line 429 and defined in /home/www/lib/smarty/libs/sysplugins/smarty_internal_runtime_filterhandler.php:33 Stack trace: #0 /home/www/lib/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php(429): Smarty_Internal_Runtime_FilterHandler->runFilter('post', '<?php\n/* smarty...', NULL) #1 /home/www/lib/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php(330): Smarty_Internal_TemplateCompilerBase->postFilter('<?php\n/* smarty...') #2 /home/www/lib/smarty/libs/sysplugins/smarty_template_compiled.php(236): Smarty_Internal_TemplateCompilerBase->compileTemplate(Object(Smarty_Internal_Template)) #3 /home/www/lib/smarty/libs/sysplugins/smarty_template_compiled.php(123): Smarty_Template_Compiled->compileTemplateSource(Object(Smarty_Internal_Template)) #4 /home/ in /home/www/lib/smarty/libs/sysplugins/smarty_internal_runtime_filterhandler.php on line 33
Und irgendwie komme ich auch nicht ins Backend?
Kommt die Wartungseite vom Server, wenn ich zb. Apache neu starte... seltsam
Nachtrag mit login.php wird mir das Login angezeigt... jedoch ist die anmelde maske vom template NCleanGrey und nicht was ich normal habe OneEleven
Wenn ich wieder auf PHP 5.6 zurückgehen funkt auch das Backend wieder
Beitrag geändert von Henk1060 (17. Mai 2016 08:09)
Offline
#78 17. Mai 2016 07:55
- DokuMan
- probiert CMS/ms aus
- Registriert: 26. November 2011
- Beiträge: 51
- Webseite
Re: CMSMS 1.12 & die aktuelle Smarty-Version
Danke für die Bereitstellung des diff-Pakets. Jedoch hat sich hier ein kleiner Fehler eingeschlichen.
Das "/smarty"-Verzeichnis muss nach "/lib/smarty/libs/" und nicht nur nach "/lib/smarty/". Das fällt nur auf, wenn man das alte Verzeichnis entfernt und komplett durch dein Paket ersetzt, anstatt alles "nur" zu überschreiben.
Daher kommt wahrscheinlich auch Henk1060s Problem, weil das CMSMS noch die alten Smarty-Dateien zieht (wenn er die Dateien beim Upload nur überschrieben hat).
Ich habe das Paket nochmal um die Verzeichnisstruktur erweitert um das zu verdeutlichen:
CMSMS-Smarty_neu-diff.rar (166 kb)
Damit läuft das CMSMS auch mit PHP 7.0 sehr fix! Subjektiv gefühlt (ohne jetzt iterative Tests gemacht zu haben) ist der Seiteaufbau echt schneller.
Beitrag geändert von DokuMan (17. Mai 2016 07:57)
Offline
#79 22. Mai 2016 21:06
- DokuMan
- probiert CMS/ms aus
- Registriert: 26. November 2011
- Beiträge: 51
- Webseite
Re: CMSMS 1.12 & die aktuelle Smarty-Version
Kurzes Update.
Nach dem Update kann ich keine Templatedateien unter Layout-> Template ändern.
Beim Klicken auf Absenden/Übernehmen erscheint nur noch ein weißer Bildschirm.
Kann das jemand bestätigen?
Offline
#80 23. Mai 2016 14:11
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: CMSMS 1.12 & die aktuelle Smarty-Version
Also ich konnte das hier schon nachvollziehen.
Lösung: Ich hab's aufgegeben. Ich weiß nicht wie genau CMSms Smarty einbindet und zurechtbiegt. Noch weniger weiß ich warum es das so macht wie es das nunmal macht. Irgendeinen Grund wird es dafür schon geben und ich habe die vage Hoffnung, dass sich das irgendwann mal so auflöst, dass man Smarty nach Belieben selbst aktualisieren kann. Bis dahin nehme ich mit der alten Version Vorlieb.
Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)
Offline
#81 07. Juni 2016 14:14
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: CMSMS 1.12 & die aktuelle Smarty-Version
Damit läuft das CMSMS auch mit PHP 7.0 sehr fix! Subjektiv gefühlt (ohne jetzt iterative Tests gemacht zu haben) ist der Seiteaufbau echt schneller.
Nach dem Update kann ich keine Templatedateien unter Layout-> Template ändern.
Beim Klicken auf Absenden/Übernehmen erscheint nur noch ein weißer Bildschirm.
Da könnte man doch glatt auf die ketzerische Idee kommen, das Backend mit der alten Smarty-Version laufen zu lassen, und das Frontend mit der aktuellen .
Offline
#82 08. Juni 2016 11:15
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.018
- Webseite
Re: CMSMS 1.12 & die aktuelle Smarty-Version
Funktioniert natürlich nur bis PHP 5.6.x - unter PHP 7 dürfte es mit der Altversion schwierig werden.
Ansatzpunkt wäre wohl hier - /libs/classes/class.Smarty_CMS.php, Zeile 25
require_once(dirname(dirname(__FILE__)).'/smarty/libs/SmartyBC.class.php');
ersetzen durch
$sversion = ($CMS_ADMIN_PAGE == 1) ? 'smarty' : 'smarty3';
require_once(dirname(dirname(__FILE__)) . '/' . $sversion . '/libs/SmartyBC.class.php');
wobei der Name des Verzeichnisses der neueren Smarty-Version "smarty3" lauten und im gleichen Verzeichnis abgelegt sein müsste wie die Altversion.
Offline