Page 1 of 1
TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Sat Oct 14, 2006 2:21 am
by babulski
Hallo, zusammen.
Wie das Subject schon zeigt, ist das hier wohl ein komplexeres Problem.
Hintergrund: um eine ausgeblendete DIV einzublenden, verwende ich eine Javascriptfuntion. Es wird ein selflink gesetzt (href="#"). Das geht mit CMSMS bekanntlich nicht gerade unproblematisch, deshalb verwende ich den TAG 'cms_selflink'. Mit diesem Plugin wird das Script folgendermassen aufgerufen. Siehe Code:
Code: Select all
{cms_selflink dir='anchor' anchorlink='#' text='overlay zeigen' title='overlay anzeigen' more='onclick="showbox('main_overlay3'); showOverlayBoxes('main_overlay3')"'}
Ist alles ganz wunderbar, es funktioniert (in FF und Safari).
NUR:
Der erzeugte Quellcode ist nicht valide. Und IE weigert sich, das Script auszuführen.
Ist ja auch verständlich, wirft man einen Blick auf den via Smarty geparsten Quellcode:
Code: Select all
<a href="blablabla#" title="overlay anzeigen" 'onclick="showbox('main_overlay2'); showOverlayBoxes('main_overlay2')"'>overlay zeigen</a>[/tt]
Vor und nach der
onclick - funktion hat sich ein tick ( ' ) eingeschlichen. So kann das ja nicht gehen.
FRAGE:
Wo liegt hier der Fehler? Falsche Syntax? Ich habe cms-selflink auch schon mit Anführungzeichen ( " ) probiert. Geht nicht. TinyMC übersetzt &39; für den tick nicht. Im Sourcecode ist auch nichts möglich.
Was tun?
Jemand eine Idee?
Vielen Dank! Babulski
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Sat Oct 14, 2006 11:14 am
by babulski
Hello again!
Ich konnte das Problem zwischenzeitlich selber lösen

Es ist zwar etwas unorthodox -- aber praktikabel.
Die Lösung soll also niemandem vorenthalben bleiben
Der Trick besteht darin, den
href="#" in einem
global_content zu verpacken, der zusätzlich mit einem
literal umschlossen ist -- nennen wir ihn mal "showbox1".
Also:
Code: Select all
{literal}
<a href="http://absoluter.pfad.zur.datei#" title="overlay anzeigen" onclick="showbox('main_overlay1'); showOverlayBoxes('main_overlay1')">overlay zeigen</a>
{/literal}
Die einzublendende DIV wird auch per
global_content eingebunden -- nennen wir sie "overlay1":
Code: Select all
{literal}
<div id="main_overlay1" style="display: none">
<div class="overlay_content">
<div class="closebox">
<a href="http://absoluter.pfad.zur.datei#" title="schliessen" onclick="dismissbox('main_overlay1')"><img src="uploads/images/closebox.jpg" alt="schliessen" /> </a>
</div>
overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1 overlay content 1
</div>
</div>
{/literal}
In TinyMCE werden dann beide Funktionen folgendermassen eingebaut:
{global_content name="overlay1"}
{global_content name="showbox1"
Das Ergebnis ist W3C-valide und macht's auch mit IE5.5+
Ich hoffe, mit dieser Lösung können einige was anfangen.
Babaulski
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 16, 2006 6:34 am
by cyberman
babulski wrote:
Wo liegt hier der Fehler? Falsche Syntax? Ich habe cms-selflink auch schon mit Anführungzeichen ( " ) probiert. Geht nicht. TinyMC übersetzt &39; für den tick nicht. Im Sourcecode ist auch nichts möglich.
Hast du es schon mit Änderungen der
versucht?
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 5:47 am
by babulski
nein, habe ich noch nicht versucht. wo finde ich diesen eintrag/tag überhaupt?

Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 7:06 am
by cyberman
Schau mal hier:
http://forum.cmsmadesimple.org/index.ph ... l#msg28772
Mittlerweile ist es jedoch Zeile 347

.
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 10:07 am
by babulski
Hi Cyberman.
Ich würde den 'hack' ja gerne in der TinyMCE.module.php abspeichern -- aber:
auf meinem Server ist im Verzeichnis /modules/TinyMCE rein gar nichts drin!
WTF!?
Das System läuft unter 1.02, TinyMCE wurde über den ModuleManager installiert.
Any ideas?
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 11:00 am
by cyberman
Schiebs doch einfach noch mal per FTP hoch ...
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 11:37 am
by babulski
Ich weiss nicht ... den Tiny erneut per FTP drüberbügeln?
Ehm, ich befürchte, dass diese Aktion mir das ganze System zerschiesst.
Vielleicht ist das besser: -> Modules/Uninstall/Install?
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 12:59 pm
by cyberman
Wenn das TinyMCE-Verzeichnis wirklich leer ist, stellt sich die Frage, was da deinstalliert werden soll

... aber einen Versuch ist es wert.
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 1:12 pm
by babulski
Interessant ist doch die Frage, warum TinyMCE
überhaupt läuft -- wenn nichts im Modul-Ordner installiert ist!?
Wie du siehst: existent.
BTW: wie verwaltet der neue Module-Manager die einzelnen Packages? Alles in die DB drücken, oder was??

Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 1:45 pm
by cyberman
Der ModulManager kann nur Module von einem Server als XML-Dateien herunterladen und dann daraus wieder Klartext (sprich einzelne Dateien) machen, weiter nix. Eine Verwaltung im klassischen Sinne findet da nicht statt.
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 1:56 pm
by babulski
Das Prozedere "XML" -> "Source" ist schon klar.
Bloß: wo speichert der Midole-Manager diese decodierten files ab?
Ich habe gerade den gesamten Server durchsucht, per DB-Admin die Datenbank durchforstet -- nichts da?
Das kann doch eigentlich nicht gehen. Aber TinyMC funzt ... (Gleiches gilt übrigens für 'Feedbackform', das auch per MM installiert wurde.)
Ted mal fragen?

Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 2:12 pm
by cyberman
babulski wrote:
Bloß: wo speichert der Midole-Manager diese decodierten files ab?
Gar nicht - die Modulverzeichnisse werden aus den XML-Dateien extrahiert, welche anschließend gelöscht werden. Ich sagte doch - da wird nix verwaltet

.
Das kann doch eigentlich nicht gehen. Aber TinyMC funzt ...
Wenn ein Modul funktionieren soll,
MUSS es zwingend im Verzeichnis /modules vorhanden sein, also auch bei dir. Keine Ahnung, warum du die Dateien nicht sehen kannst

...
Re: TinyMC | Smarty | cms_selflink | Javascript --> falscher Output
Posted: Mon Oct 23, 2006 4:23 pm
by babulski
Ouch, hau mich mal!

Ich hatte total vergessen, dass ich CMSMS auf diesem Server per Shell installiert habe.
Die Zugriffrechte standen demensprechend falsch (wwwrun).
Einmal chown auf FTP-User und die Gurke flutscht.
So, jetzt aber mal schnell den Hack eingepatched ...
Thanx for the patience!