Egy projektünk, a www.sum.hu átadása előtt találkoztunk azzal a problémával, hogy a tartalom szerkesztéséhez használt XStandard editor megnyitáskor egyszerűen lefagyasztja a böngészőt.

Az XStandard Macintosh alatt kifogástalanul működött. A jelenség okának kiderítésében a reverse engineering problémamegoldással próbálkoztam először.
Az XStandard-et megjelenítő HTML objektum forrása így néz ki:
<script type="text/javascript"> document.writeln('<object type="application/x-xstandard" id="editor1" width="100%" height="400" codebase="http://sum.emesz.hu/modules/xstandard/XStandard.cab#Version=1,6,2,0">'); document.writeln('<param name="Value" value="'+chunk+'" />'); document.writeln('<param name="CSS" value="http://sum.emesz.hu/modules/xstandard/format.css" />'); document.writeln('<param name="Styles" value="http://sum.emesz.hu/modules/xstandard/styles.xml" />'); document.writeln('<param name="Localization" value="http://sum.emesz.hu/modules/xstandard/localization.xml" />'); document.writeln('<param name="Base" value="http://sum.emesz.hu/" />'); document.writeln('<param name="ScreenReaderXSLTv value="" />'); document.writeln('<param name="Toolbar" value="strong,em,sub,sup,,bullets,numbering,,layout-table,data-table,image,line,hyperlink,,undo,,wysiwyg,source,preview" />'); document.writeln('<param name="PreviewXSLT" value="" />'); document.writeln('<param name="ShowStyles" value="yes" />'); document.writeln('<param name="ShowToolbar" value="yes" />'); document.writeln('<param name="Options" value="170" />'); document.writeln('<param name="IndentOutput" value="yes"/>'); document.writeln('<param name="Debug" value="yes"/>'); document.writeln('<textarea name="alternate1" id="alternate1" cols="60" rows="15"></textarea>'); document.writeln('</object>'); </script>
Azért Javascript írja ki az objektumot, mert az alapértékét - Value - Javascript veszi át egy másik oldalon lévő textarea-ból.
Első lépésként kivettem minden paramétert. Kipróbáltam, az XStandard megnyílt. Ezután elkezdtem kisebb csoportokban visszatenni a paramétereket. Egészen addig működött az XStandard, amíg a Base paramétert vissza nem raktam. Ha ez benne volt, akkor az XStandard lefagyott.
A Base paraméterre szükség volt azért, hogy a képek megjelenjenek a szerkesztőfelületen. Tehát a megoldás nem lehetett, hogy akkor egyszerűen hagyjuk el a Base paramétert.
Ekkor lettem figyelmes arra, hogy vannak PHP tag-ek a szerkesztendő oldal tartalmi részében. A PHP nyitó tag-eket a Base paraméter nélkül indított XStandard html entitásokra cserélte.
Futó gondolatként villant át rajtam, hogy mi lenne, ha kivennénk a PHP tag-eket és visszaraknám a Base paramétert. És... az XStandard kifogástalanul működött.
Tanulság
Windows alatt az XStandard által szerkesztendő tartalmakba ne tegyünk PHP tag-eket, különben az editor megnyitásakor a böngésző lefagy.

I love coding, thanks to your
I love coding, thanks to your posts I got to know more!How cool is that! I'm glad to find this post by chance, because I was looking for natural fat burner when it came out!