Editor: Rel. Pfad wird absolut, wenn in HTML gewechselt wird
Editor: Rel. Pfad wird absolut, wenn in HTML gewechselt wird
1. HTML-Editor aufrufen
2. Text eingeben, markieren
3. Internen Link einfügen
4. Testweise Link markieren und über Insert Link überprüfen (-> Pfad ist relativ: "front_content.php?...")
5. Von 'Design' auf 'HTML' wechseln (-> Pfad ist relativ: "front_content.php?...")
6. Von 'HTML' auf 'Design' umschalten
7. Entweder wieder auf 'HTML' wechseln oder über Insert Link Link überprüfen. Link ist nun absolut und falsch ("http://www.domain.de/contenido/includes/front_content.php?...")
Halte ich für schwerwiegend...
Gruß
HerrB
2. Text eingeben, markieren
3. Internen Link einfügen
4. Testweise Link markieren und über Insert Link überprüfen (-> Pfad ist relativ: "front_content.php?...")
5. Von 'Design' auf 'HTML' wechseln (-> Pfad ist relativ: "front_content.php?...")
6. Von 'HTML' auf 'Design' umschalten
7. Entweder wieder auf 'HTML' wechseln oder über Insert Link Link überprüfen. Link ist nun absolut und falsch ("http://www.domain.de/contenido/includes/front_content.php?...")
Halte ich für schwerwiegend...
Gruß
HerrB
erste änderung
contenido/external/wysiwyg/spaw/dialogs/insert_link.php
zeile:40 ersetzen durch
damit funktioniert dort mal das on-the-fly replace (links werden dann wieder korrekt zugeordnet...
contenido/external/wysiwyg/spaw/dialogs/insert_link.php
zeile:40 ersetzen durch
Code: Alles auswählen
smyLink.Href = smyLink.Href.replace('<?php echo $cfgClient[$client]['path']['htmlpath'];?>', '')
smyLink.Href = smyLink.Href.replace('<?php echo $cfg['path']['contenido_fullhtml'].$cfg['path']['includes'];?>', '')
timo ich brauch was...
und zwar wo ersetzt contenido die absoluten links (gibts so ne funktion ?)
meine funktion würde nur funktionieren(mit einer kleinen modifikation) wenn man in die html ansicht wechselt. in die design ansicht retour werden die links und bilder immer falsch gesetzt.
auf gut deutsch wenn der quelltext in die db geschrieben wird müssten alle
$cfg['path']['contenido_fullhtml'].$cfg['path']['includes'] innerhalb des gesendeten texts durch '' ersetzt werden.
dann sind zwar innerhalb der db die links relativ nur eine bearbeitung bzw anzeige der bilder ist dann nicht mehr innerhalb von spaw möglich...
schlecht... das is für die umsetzung ein ziemlich massives problem...
für ne bearbeitung in spaw müssten alle links wieder durch absolute ersetzt werden (welche korrekt auf den client zeigen)
beim wechsel in die HTML ansicht müssten dieses wieder entfernt werden
und beim wechsel in die DESIGN ansicht wieder ergänzt.
und zwar wo ersetzt contenido die absoluten links (gibts so ne funktion ?)
meine funktion würde nur funktionieren(mit einer kleinen modifikation) wenn man in die html ansicht wechselt. in die design ansicht retour werden die links und bilder immer falsch gesetzt.
auf gut deutsch wenn der quelltext in die db geschrieben wird müssten alle
$cfg['path']['contenido_fullhtml'].$cfg['path']['includes'] innerhalb des gesendeten texts durch '' ersetzt werden.
dann sind zwar innerhalb der db die links relativ nur eine bearbeitung bzw anzeige der bilder ist dann nicht mehr innerhalb von spaw möglich...
schlecht... das is für die umsetzung ein ziemlich massives problem...
für ne bearbeitung in spaw müssten alle links wieder durch absolute ersetzt werden (welche korrekt auf den client zeigen)
beim wechsel in die HTML ansicht müssten dieses wieder entfernt werden
und beim wechsel in die DESIGN ansicht wieder ergänzt.
-
- Beiträge: 6284
- Registriert: Do 15. Mai 2003, 18:32
- Wohnort: Da findet ihr mich nie!
- Kontaktdaten:
Zum einen wird, sobald der Content gespeichert wird, alles absolute (sprich: alles das, was unter Contenido ist), mit relativem ersetzt. Die Funktion conSaveContentEntry in der functions.con.php macht das.emergence hat geschrieben: und zwar wo ersetzt contenido die absoluten links (gibts so ne funktion ?)
Ich dachte eigentlich, ich hätte das abgefangen...wichtig ist, daß das IE DHTML-Element immer mit absoluten Pfaden arbeiten kann. d.h. der Pfad sollte erst beim speichern wieder relativ gemacht werden.meine funktion würde nur funktionieren(mit einer kleinen modifikation) wenn man in die html ansicht wechselt. in die design ansicht retour werden die links und bilder immer falsch gesetzt.
Damit das alles gut funktioniert, muß einerseits ja beim Laden des Editors alles relative mit absolutem ersetzt werden (macht der WYSIWYG ja wunderbar falsch, da er ab 4.4 im Backend aufgerufen wird, und dann hat man z.b. contenido/includes/upload/blabla.gif). Deshalb wird eine Sekunde nach dem Laden des Editors das On-The-Fly-Replacement gemacht (Zeile 263 in der Datei spaw_control_class.php). Beim einfügen von Bildern sollte ja dann der volle Frontendpfad verfügbar sein, der beim abspeichern wieder weggekickt wird.
Sollte eigentlich ja alles funktionieren, oder hab ich was übersehen?schlecht... das is für die umsetzung ein ziemlich massives problem...
für ne bearbeitung in spaw müssten alle links wieder durch absolute ersetzt werden (welche korrekt auf den client zeigen)
beim wechsel in die HTML ansicht müssten dieses wieder entfernt werden
und beim wechsel in die DESIGN ansicht wieder ergänzt.
2 dinge müssen gemacht werden.
1. beim wechsel in die html ansicht muss bevor der text angezeigt wird
alle absoluten durch relative links ersetzt werden.
d.h $cfgClient[$client]["path"]["htmlpath"] durch ''
die ersetzung von
$cfg['path']['contenido_fullhtml'].$cfg['path']['includes'] durch '' wäre hier nicht notwendig.
2. sobald man wieder auf design tab klickt müssen alle relativen links wieder durch absolute ersetzt werden sprich $cfgClient[$client]["path"]["htmlpath"] muss wieder ergänzt werden... und dann darf der code erst an innerhtml übergeben werden.
dann müsste eigentlich alles funktionieren oder ?
auf der selben basis funktioniert an sich ja die ersetzung beim einfügen des contents wenn spaw sich öffnet... wenn man diese ersetzung auf absolute links zuerst macht, wäre keine zeitverzögerung von einer sekunde notwendig. das ganze müsste sich eigentlich ganz elegant via javascript php lösen lassen...
1. beim wechsel in die html ansicht muss bevor der text angezeigt wird
alle absoluten durch relative links ersetzt werden.
d.h $cfgClient[$client]["path"]["htmlpath"] durch ''
die ersetzung von
$cfg['path']['contenido_fullhtml'].$cfg['path']['includes'] durch '' wäre hier nicht notwendig.
2. sobald man wieder auf design tab klickt müssen alle relativen links wieder durch absolute ersetzt werden sprich $cfgClient[$client]["path"]["htmlpath"] muss wieder ergänzt werden... und dann darf der code erst an innerhtml übergeben werden.
dann müsste eigentlich alles funktionieren oder ?
auf der selben basis funktioniert an sich ja die ersetzung beim einfügen des contents wenn spaw sich öffnet... wenn man diese ersetzung auf absolute links zuerst macht, wäre keine zeitverzögerung von einer sekunde notwendig. das ganze müsste sich eigentlich ganz elegant via javascript php lösen lassen...
-
- Beiträge: 6284
- Registriert: Do 15. Mai 2003, 18:32
- Wohnort: Da findet ihr mich nie!
- Kontaktdaten:
Ja, das Problem ist aber, daß es schwierig ist, relative Links rauszubekommen. Der "Faulheit" halber, da das IE DHTML-Dingens das ja sowieso automatisch macht, wird einfach nach dem Ersetzen nochmal "richtig" ersetzt.
Was ich aber noch nicht verstehe: Wenn man vom WYSI in den HTML-Mode springt, warum müssen dann dort die relativen drin stehen? Des Komforts wegen?
Was ich aber noch nicht verstehe: Wenn man vom WYSI in den HTML-Mode springt, warum müssen dann dort die relativen drin stehen? Des Komforts wegen?
und genau das selbe machen wir auch wenn wir auf design klicken ! damit müssten wir eigentlich den gewünschten effekt erzielen.timo hat geschrieben:Ja, das Problem ist aber, daß es schwierig ist, relative Links rauszubekommen. Der "Faulheit" halber, da das IE DHTML-Dingens das ja sowieso automatisch macht, wird einfach nach dem Ersetzen nochmal "richtig" ersetzt.
so blöd wie es klingt ja,timo hat geschrieben: Was ich aber noch nicht verstehe: Wenn man vom WYSI in den HTML-Mode springt, warum müssen dann dort die relativen drin stehen? Des Komforts wegen?
das ist einer der hauptgründe warum gerne htmledit verwendet wird.
Traumhaft, dieser Fleiss! Danke euch beiden.
Aber so habe ich euch ja auch verstanden...
Gruß
HerrB
Aus meiner Sicht müssten in der HTML-Ansicht nicht zwangsläufig die relativen Pfade erscheinen (auch wenn es praktischer, weil kürzer, ist). Aber in der DB sollte immer der relative Pfad gespeichert werden.Was ich aber noch nicht verstehe: Wenn man vom WYSI in den HTML-Mode springt, warum müssen dann dort die relativen drin stehen? Des Komforts wegen?
Aber so habe ich euch ja auch verstanden...
Gruß
HerrB
bis auf die absoluten links ging fast alles...
insert_link -> funktionierte die zuweisung nicht mehr.
das einzige was ich jetzt mache beim wechsel in den html mode alle absoluten zu entfernen,
und beim design mode
den text normal einfügen lassen und anschließend mit replace wieder zu korrigieren.
es ist an sich nur jeweils eine zeile einzufügen...
das witzige daran mir ist innerhalb des javascript files die php variable
$cfgClient[$client]['path']['htmlpath']; abhanden gekommen... ähm tja...
für die funktion SPAW_design_tab_click
unterhalb von
hätte ich sonst nur diese zeile eingefügt...
bei SPAW_html_tab_click
wäre eigentlich auch nur unterhalb von
folgendes zu ergänzen.
einzusetzen.
damit hätte ich eigentlich alles was gewünscht wäre... relative links innerhalb der html ansicht und innerhalb der design ansicht die absoluten.
insert_link -> funktionierte die zuweisung nicht mehr.
das einzige was ich jetzt mache beim wechsel in den html mode alle absoluten zu entfernen,
und beim design mode
den text normal einfügen lassen und anschließend mit replace wieder zu korrigieren.
es ist an sich nur jeweils eine zeile einzufügen...
das witzige daran mir ist innerhalb des javascript files die php variable
$cfgClient[$client]['path']['htmlpath']; abhanden gekommen... ähm tja...
für die funktion SPAW_design_tab_click
unterhalb von
Code: Alles auswählen
this[editor+'_rEdit'].document.body.innerHTML = iText;
Code: Alles auswählen
this[editor+'_rEdit'].document.body.innerHTML.replace(/<?php echo str_replace('/', '\\/',$cfg['path']['contenido_fullhtml'].$cfg['path']['includes']); ?> /g,'<?php echo $cfgClient[$client]['path']['htmlpath']; ?>');
wäre eigentlich auch nur unterhalb von
Code: Alles auswählen
iHTML = this[editor+'_rEdit'].document.body.innerHTML;
Code: Alles auswählen
iHTML.replace(/<?php echo str_replace('/', '\\/',$cfgClient[$client]['path']['htmlpath']); ?> /g,'');
damit hätte ich eigentlich alles was gewünscht wäre... relative links innerhalb der html ansicht und innerhalb der design ansicht die absoluten.
noch was
Spaw Error Report
Error in file: http://localhost/contenido/includes/inc ... 9c8&lang=1
Line number: 228
Message: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
ähm ich tippe mal drauf, dass da client nicht mitübergeben wurde...
Spaw Error Report
Error in file: http://localhost/contenido/includes/inc ... 9c8&lang=1
Line number: 228
Message: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.
ähm ich tippe mal drauf, dass da client nicht mitübergeben wurde...