Hallo allerseits,
ev. ist es schon aufgefallen, ein einigen Modulen kommt es zu unschoenen Textanzeigen a la *Gästebuch*. Die Ursache ist schnell gefunden, auf die bereits umgewandelten Entities wird die Funktion cms_htmlentities nochmals angewandt. Ausserdem wird dort statt der php-internen Encodierung eine eigene Routine verwendet (my_htmlentities in lib/misc.functions.php).
Nun koennte man zur Ursachenabstellung wieder zur php-routine (mit den Moeglichkeiten, '&' auszuschliessen) wechseln, hat aber beim naechsten Update wahrsch. das gleiche Problem erneut.
Deshalb meine Frage an die codekundigen, wo die Ueberschneidung stattfindet? Die Sucherei wuedre ich mir aus Zeitgruenden gern sparen, poste dann aber auch den fix.
Betroffen auf den ersten Blick sind das Gaestebuch (die emailbenachrichtigung) und SelfRegistration (Messag/Error-Ausgabe).
Danke und Gruss
Torsten
Doppeltes Decoding
Re: Doppeltes Decoding
Verwende die letzte SVN Version vom Gästebuch. Dort ist das Problem behoben.
Re: Doppeltes Decoding
Hallo allerseits,
Kannst Du (oder jemand) mir sagen, wo das gewoehnlich doppelt gemoppelt wird, ich fix mir das dann. Das Einlesen in den doch recht komplexen code kostet immer Unmengen an Zeit.
Danke und Gruss
Torsten
Danke. Das scheint aber ein generelles Problem zu sein. Habe es eben auch noch im Modul Newsletter gefunden (Messageausgabe).tobik wrote: Verwende die letzte SVN Version vom Gästebuch. Dort ist das Problem behoben.
Kannst Du (oder jemand) mir sagen, wo das gewoehnlich doppelt gemoppelt wird, ich fix mir das dann. Das Einlesen in den doch recht komplexen code kostet immer Unmengen an Zeit.
Danke und Gruss
Torsten
Re: Doppeltes Decoding
Beispiel:
Code: Select all
$e_mailnoti_subj = $this->Lang('e_mailnotibetr');
Code: Select all
$e_mailnoti_subj = html_entity_decode($this->Lang('e_mailnotibetr'),ENT_QUOTES,'UTF-8');
Re: Doppeltes Decoding
Hallo allerseits,

Hier muesste wirklich eine allgemeingueltige Loesung fuer alle Module gefunden werden. Ich hab das Problem nun auch im uploadmodul gefunden.
Eigentlich unverstaendlich - bei Angabe des Charsets muss ausser Specialchars nix encodet werden, cms_htmlentities ist eigentlich ueberfluessig. Also Sprachdatei mit Umlauten erstellen, korrektes Charset im HTML-Header, fertig. Probleme enstehen hoechstes bei utf-8, da der unbedarfte User wahrscheinlich die Sprachdatei nicht entsprechend als utf-8 abspeichert. Aber das Problem haben andere CMSe oder Shops auch und auch die haben Foren zur Hilfe
Tip noch zu deinem Gaestebuch, ich habe bei mir deinen Spamfilter so umgebaut, dass eine Fehlermeldung ausgegeben wird, der Eintrag also gar nicht erst angenommmen wird und statt dess ein Hinweis a la *Dein Eintrag enthaelt ein nicht gewuenschtes Anliegen* kommt. Ist vielleicht die bessere Loesung?
Liebe Gruesse
Torsten
hmm, dann wird das doppelt gemoppelte also ein drittes mal angefasst, das ist brrtobik wrote:Code: Select all
$e_mailnoti_subj = html_entity_decode($this->Lang('e_mailnotibetr'),ENT_QUOTES,'UTF-8');

Hier muesste wirklich eine allgemeingueltige Loesung fuer alle Module gefunden werden. Ich hab das Problem nun auch im uploadmodul gefunden.
Eigentlich unverstaendlich - bei Angabe des Charsets muss ausser Specialchars nix encodet werden, cms_htmlentities ist eigentlich ueberfluessig. Also Sprachdatei mit Umlauten erstellen, korrektes Charset im HTML-Header, fertig. Probleme enstehen hoechstes bei utf-8, da der unbedarfte User wahrscheinlich die Sprachdatei nicht entsprechend als utf-8 abspeichert. Aber das Problem haben andere CMSe oder Shops auch und auch die haben Foren zur Hilfe

Tip noch zu deinem Gaestebuch, ich habe bei mir deinen Spamfilter so umgebaut, dass eine Fehlermeldung ausgegeben wird, der Eintrag also gar nicht erst angenommmen wird und statt dess ein Hinweis a la *Dein Eintrag enthaelt ein nicht gewuenschtes Anliegen* kommt. Ist vielleicht die bessere Loesung?
Liebe Gruesse
Torsten
Re: Doppeltes Decoding
Hallo Torsten,crossi wrote: Tip noch zu deinem Gaestebuch, ich habe bei mir deinen Spamfilter so umgebaut, dass eine Fehlermeldung ausgegeben wird, der Eintrag also gar nicht erst angenommmen wird und statt dess ein Hinweis a la *Dein Eintrag enthaelt ein nicht gewuenschtes Anliegen* kommt. Ist vielleicht die bessere Loesung?
das Gästebuch ist nicht von mir und ich entwickle es auch nicht aktiv weiter. Ich habe lediglich meine Änderungen veröffentlicht, so dass sie allen zugute kommen sowie ein paar Patches von Dritten eingepflegt. In diesem Sinne kannst auch Du gern Deine Änderung einbringen.
Beste Grüße,
Tobias
Re: Doppeltes Decoding
Wäre nicht schlecht, wenn du die geänderten Dateien als "Patch" im Projekt veröffentlichen würdestcrossi wrote: Tip noch zu deinem Gaestebuch, ich habe bei mir deinen Spamfilter so umgebaut, dass eine Fehlermeldung ausgegeben wird, der Eintrag also gar nicht erst angenommmen wird und statt dess ein Hinweis a la *Dein Eintrag enthaelt ein nicht gewuenschtes Anliegen* kommt.

http://dev.cmsmadesimple.org/tracker/?a ... unc=browse