[CON-1536] Bug bei CMS_DATE?

Alle bestätigten Fehler in CONTENIDO 4.9 (erledigte Fehler werden durch geschlossene Beiträge gekennzeichnet).
Gesperrt
malsdgtac
Beiträge: 717
Registriert: Fr 12. Mär 2004, 15:50
Kontaktdaten:

[CON-1536] Bug bei CMS_DATE?

Beitrag von malsdgtac » Di 15. Okt 2013, 13:41

Hallo,

ich glaube, ich habe einen Bug entdeckt. Folgender Code in einem Modul führt dazu, dass im Editor nur noch eine weisse Seite angezeigt wird:

Code: Alles auswählen

//echo "CMS_DATE[1]";
Der Fehler tritt nur auf, wenn man das CMS_DATE auskommentiert.

Im Errorlog steht folgendes:

Code: Alles auswählen

[15-Oct-2013 14:40:40 Europe/Berlin] PHP Parse error:  syntax error, unexpected 'var' (T_VAR) in .../contenido/includes/include.con_editcontent.php(135) : eval()'d code on line 730

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

Re: Bug bei CMS_DATE?

Beitrag von frederic.schneider_4fb » Di 15. Okt 2013, 13:59

Ich kann das Problem nicht reproduzieren. Ich habe die entsprechende Code-Zeile genauso auskommentiert in ein Modul eingefügt und aufgerufen - es funktioniert alles einwandfrei. In welchem Modul an welcher Stelle und in welchem Kontext tritt das Problem auf?
Frederic Schneider
Entwickler bei der four for business AG

malsdgtac
Beiträge: 717
Registriert: Fr 12. Mär 2004, 15:50
Kontaktdaten:

Re: Bug bei CMS_DATE?

Beitrag von malsdgtac » Di 15. Okt 2013, 14:16

Hallo,

ich habe das auch auf einer anderen Installation (4.9) getestet - dort gibt es den gleichen Fehler, die Fehlermeldung tritt aber in einer anderen Zeilennummer auf:

Code: Alles auswählen

[15-Oct-2013 14:38:17 Europe/Berlin] PHP Parse error:  syntax error, unexpected 'var' (T_VAR) in .../contenido/includes/include.con_editcontent.php(135) : eval()'d code on line 3044
bzw. in einer 4.9.RC - da kommt direkt im Editor der Fehler:

Code: Alles auswählen

Parse error: syntax error, unexpected T_VAR in .../contenido/includes/include.con_editcontent.php(138) : eval()'d code on line 2032
Die zwei 4.9er Installationen laufen auf PHP 5.4.16 mit einer 5.5.32 MySQl-Datenbank.
Die 4.9.RC läuft auf PHP 5.3.26 ebenfalls mit 5.5.32 MySQL

Ich habe dafür kein vorgefertigtes Modul verwendet sondern - vor allem zum Testen - einfach ein Modul erstellt, in welchem außer der

Code: Alles auswählen

<?php
//echo "CMS_DATE[1]";
?>
nichts steht.

Ich bin mehr durch Zufall darauf gestossen, weil ich in meinem neuen Module zweimal "CMS_DATE[1]" eingebunden habe - und dann Fehler bekommen habe, weil das Format in der Datenbank komisch war. Daher habe ich mal eines auskommentiert um zu testen ob der doppelte Aufruf daran Schuld ist - und es kam immer noch der Fehler, bis ich die zweite Code-Zeile ganz raus geworfen habe.

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

Re: Bug bei CMS_DATE?

Beitrag von frederic.schneider_4fb » Di 15. Okt 2013, 15:15

Bitte noch einmal prüfen, sobald die neue Version CONTENIO 4.9.1 raus ist. Eventuell hat sich das Problem damit erledigt. Ich kann Dein Problem jedoch auch nicht in der Release-Version von 4.9.0 reproduzieren :(.
Frederic Schneider
Entwickler bei der four for business AG

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: Bug bei CMS_DATE?

Beitrag von homtata » Di 15. Okt 2013, 15:17

Ich wiederum kann den Fehler für die 4.9.0 bestätigen. Sowohl in einer Update-Version wie auch einer reinen Neuinstallation. Einfach die auskommentierte Zeile in das Textmodul einfügen, schon bringt der Aufruf des Seiteneditors nix als eine weiße Seite.

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

Re: Bug bei CMS_DATE?

Beitrag von frederic.schneider_4fb » Di 15. Okt 2013, 15:34

Das Problem habe ich eben mit meinem Kollegen zusammen eruiert, ich kann es nun auch bestätigen. Die Problematik erklärt sich folgendermaßen:
Der Inhalt von CMS_DATE[1] wird ersetzt, auch wenn er im Eingabefeld auskommentiert wird. In der Regel wird die Variable CMS_DATE[1] durch einen mehrzeiligen Inhalt ersetzt. Aus :

Code: Alles auswählen

// echo "CMS_DATE[1]";
wird ein mehrzeiliger Code:

Code: Alles auswählen

echo "<div id=\"cms_date_1_settings\" class=\"cms_date\"><input id=\"date_timestamp_1\" name=\"date_timestamp_1\" disabled=\"disabled\" value=\"22.01.2013 11:57:00\" size=\"50\" type=\"text\" class=\"date_timestamp\" /><script type=\"text/javascript\">
//<![CDATA[

conLoadFile('http://contenido.local/contenido/scripts/content_types/cmsDate.js', 'date1ClassLoaded();');

function date1ClassLoaded() {
    var contentTypeInstance = new cContentTypeDate(
        '#cms_date_1_settings',
        'date',
        1,
        '13',
        'http://contenido.local/contenido/',
        'de',
        {\"date_timestamp\":\"1358852220\",\"date_format\":{\"dateFormat\":\"\",\"timeFormat\":\"\"}},
        'de_DE'
    );
    contentTypeInstance.initialise('http://contenido.local/contenido/images/calendar.gif');
}
(...)
So kommt es zu dem Problem. Du kannst die Problematik umgehen, indem Du folgendes schreibst:

Code: Alles auswählen

/* echo "CMS_DATE[1]"; */
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: Bug bei CMS_DATE?

Beitrag von frederic.schneider_4fb » Di 15. Okt 2013, 15:38

Um das langfristig zu lösen haben wir ein Ticket CON-1536 dazu angelegt.
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: [CON-1536] Bug bei CMS_DATE?

Beitrag von frederic.schneider_4fb » Do 15. Jan 2015, 12:34

Wir haben nun eine Lösung umgesetzt, die in Version 4.9.7 enthalten sein wird
Frederic Schneider
Entwickler bei der four for business AG

Gesperrt