Seite 3 von 5

Verfasst: Di 13. Jul 2004, 18:05
von 1-2-12
hallo,
danke für eure antworten, werde das ganze noch einmal von vorne beginnen --> evtl. habe ich einen flüchtigkeitsfehler gemacht.

@emergence --> habe mit php coder pro diese sachen geändert, sollte ich es besser mit dreamweaver probieren?

gruß
andi

Verfasst: Di 13. Jul 2004, 22:28
von emergence
1-2-12 hat geschrieben:habe mit php coder pro diese sachen geändert, sollte ich es besser mit dreamweaver probieren?
kenne das programm zwar nicht, ist aber sicher besser als dreamweaver.. (ich meine für die bearbeitung des codes...)

Verfasst: Di 27. Jul 2004, 12:46
von kevinerhardt
Hallo

Ich habe die Änderungen vorgenommen und es funktioniert soweit ganz gut , die einzellnen CSS Styles werden in der Auswahlliste geladen und der Text wird im Quelltext richtig formatiert.
Das Problem liegt daran dass der Text im SPAW-Editor nicht wie gewünscht formatiert wird .

Wie kann ich das Problem lösen? Bin für jeden Tipp sehr dankbar.

Mit freundlichem Gruß

Kevin

neue spaw-Version

Verfasst: Sa 9. Okt 2004, 14:33
von steiniman
Die bei contenido verwendete Spaw-Version scheint ja schon paar Tage alt zu sein. Hat jemand schon die aktuelle Version (http://www.solmetra.com) erfolgreich angepasst und eingebunden?

Es klappt nicht! Bitte Hilfe *verzweifel*

Verfasst: Fr 5. Nov 2004, 11:39
von scrabby0102
Hallöchen,

habe mir vor ca. 2 Wochen Contenido 4.4.4 auf dem Server installiert und bin sehr zufrieden. Nun habe ich diese Anleitung hier gelesen, um die Style-Classen aus dem Style-DropDown per <SPAN> in den Editor einzufügen (zu b). Habe alles so gemacht wie beschrieben!

Jetzt mein Problem: wenn ich in den Editor gehe, einen Text markiere und ihm dann per Style-DropDown eine classe aus meiner Style-Datei zuweise ist alles OK und er zeig sofort (z.b.) die Farbänderung an, ABER wenn ich das dann rückgängig machen will (mit dem Button 'Rückgängig') passiert es:
Der Text verschwindet, anstelle dessen taucht auf einmal diese Zahlenkette auf: 556e697175657e537472696e67 (wenn ich mich nicht täusche ist die unter 'otext/unique string ' in der script.js.php aufgehührt)
So, ich klicke erneut auf den Button 'Rückgängig' und es steht garnichts mehr da.
Wenn ich nochmals auf den Button klicke, habe ich meinen alten Text wieder (aber das kanns doch nicht sein!?).
Wenn ich nun erneut einem Text eine Classe per DropDown zuweisen will, geht garnichts mehr, der Editor scheint kolabiert zu sein!?
Der Cursor springt nur von einem Absatz zum anderen.

Währe echt toll wenn mir jemand helfen könnte
(Bitte nicht so viele Fachbegriffe :lol: bin ein Newbie auf diesem Gebiet)

Dankääää im Voraus!

Verfasst: Sa 6. Nov 2004, 11:28
von matze
mhhh,
stimmt, bei mir passiert das gleiche!

irgendwie macht er genau die einzelschritte, die in der function "SPAW_style_change" stehen (script.js.php):
1. string rausnehmen
2. gelöschten string durch code (556e697175657e537472696e67) ersetzen
3. span und string dort einsetzen, wo code steht
woran, dass liegt kann ich aber auch nicht sagen!? :-(

emergence HELP!!! ;-)

m.

Verfasst: Sa 6. Nov 2004, 11:59
von emergence
ich hab damals einfach keine bessere lösung gefunden um spans zu includieren...
das mit dem zwischenschritt weiss ich... ne lösung dafür hab ich aber nicht...

SPAN Problem

Verfasst: Mi 1. Dez 2004, 21:35
von ps
Gibts da einen neuen Lösungsansatz für das SPAN Problem? Ich könnte alle meine Redaktoren einfach schulen und mitteilen, dass Sie nachdem Sie mit SPAN einem Textteil ein CSS Stil zugewiesen haben, nicht mehr den "Rückgängig machen"-Knopf drücken dürfen, aber vielleicht gibt es ja noch eine bessere Lösung. Die andere Lösung wäre, die Font Tags zu missbrauchen und dort irgendwelche SPANs zu definieren, diese scheinen ja zu funktionieren. Ich finde diesen Weg jedoch auch nicht besonders schön. Hat jemand eine andere Idee? Ich möchte auf keinen Fall mit den alten FONT Tags arbeiten, sondern mit SPAN und diesen die CSS Klasse zuordnen.

Danke und Gruss,


Pascal

Verfasst: Mo 13. Dez 2004, 00:25
von jumar
Hi!

Mal ne Frage...

Vielleicht weiß jemand wie das geht:
Ich möchte, daß beim Drücken der Enter-Taste (im WYSIWYG-Modus) ein <br> statt des <p>-Tags benutzt wird.
Leider konnte ich das nicht im Quelltext finden.

Gruß,
Jumar

probier mal shift - enter

Verfasst: Mo 13. Dez 2004, 00:31
von ps
hallo,

probier mal shift - enter, dass sollte einen < br > tag geben.

Verfasst: Mo 13. Dez 2004, 09:48
von emergence
hab mir das jetzt ein wenig mit dem zwischenschritt angesehen und die funktion etwas umgebaut...

zwischenschritt sollte drausen sein:

Code: Alles auswählen

  function SPAW_style_change(editor, sender)
  {
    classname = sender.options[sender.selectedIndex].value;

    window.frames[editor+'_rEdit'].focus();

    // v2.5 modified version by horwath@opensa.org
    var ttext = "";
    var trange = this[editor+'_rEdit'].document.selection.createRange();

    if (trange != null && this[editor+'_rEdit'].document.selection.type != "Control")
      ttext = trange.htmlText.replace(/<\/?span[^>]*>/gi,''); // remove all spans from ttext

    var el = SPAW_getParentTag(editor);

    if (SPAW_trim(ttext) == "") { // if no range was selected

      if (el != null && el.tagName.toLowerCase() != 'body')
      {
        if (classname != 'default' && classname != "")
          el.className = classname;
        else
          if (el.tagName.toLowerCase() != 'span')
            el.removeAttribute('className');
          else
            el.removeNode(); // remove span tag
      }
      else if (el.tagName.toLowerCase() == 'body')
      {
        if (classname != 'default' && classname != "")
          this[editor+'_rEdit'].document.body.innerHTML = '<p class="'+classname+'">'+this[editor+'_rEdit'].document.body.innerHTML+'</p>';
        else
          this[editor+'_rEdit'].document.body.innerHTML = '<p>'+this[editor+'_rEdit'].document.body.innerHTML+'</p>';
      }
    } else { // if range was found

      this[editor+'_rEdit'].document.selection.clear(); // remove selection

      if (el.tagName.toLowerCase() == 'body')
        container = "div";
      else
        container = "span";

      if (classname != 'default' && classname != "")
        ttext = '<'+container+' class="'+classname+'">'+ttext+'</'+container+'>';

      trange.pasteHTML(ttext);                          // insert replacement -> keeps cursor position
                                                        // does not replace &nbsp; before span

    }
    sender.selectedIndex = 0;

    SPAW_update_toolbar(editor, true);
  }

Läuft bei mir noch nicht korrekt

Verfasst: Mo 13. Dez 2004, 10:08
von ps
Hallo Emergence


Besten Dank für deinen neuen Zwischenschritt. Habe ihn sogleich bei mir eingefügt, jedoch zeigt nun der Editor nichts mehr an, .d.h. der Inhalt im Editorfenster ist weg und ich kriege einen JavaScript Error (auf Zeile: 17, Zeichen: 5, Fehler: Objekt erwartet, Code: 0), wenn ich auf den Knopf "Text HTML" klicke. Hast du eine Idee, an was dies liegen könnte?

Kannst du mir deine Email-Adresse (per PM) geben, dann würde ich dir gerne meine script.js.php mailen, vielleicht ist mir dort ein Fehler unterlaufen.

10000 Dank,

Pascal

Verfasst: Mo 13. Dez 2004, 10:16
von emergence
ich könnte mir nur vorstellen das du eine klammer zuviel oder zuwenig entfernt hast...

mit welchem editor hast du denn die änderung vorgenommen ?

BBEdit

Verfasst: Mo 13. Dez 2004, 10:52
von ps
Hallo emergence,

Habe die Änderungen mit BBEdit gemacht (auf dem Mac). Gibts da Probleme? Ich danke dir für deine Antwort.

Verfasst: Mo 13. Dez 2004, 11:14
von emergence
ähm der code sieht etwas mitgenommen aus

Code: Alles auswählen

Ê function SPAW_style_change(editor, sender) 
 Ê { 
 Ê Ê classname = sender.options[sender.selectedIndex].value; 

 Ê Ê window.frames[editor+'_rEdit'].focus(); 

 Ê Ê // v2.5 modified version by horwath@opensa.org 
 Ê Ê var ttext = ""; 
 Ê Ê var trange = this[editor+'_rEdit'].document.selection.createRange(); 

 Ê Ê if (trange != null && this[editor+'_rEdit'].document.selection.type != "Control") 
 Ê Ê Ê ttext = trange.htmlText.replace(/<\/?span[^>]*>/gi,''); // remove all spans from ttext 

 Ê Ê var el = SPAW_getParentTag(editor); 

 Ê Ê if (SPAW_trim(ttext) == "") { // if no range was selected 

 Ê Ê Ê if (el != null && el.tagName.toLowerCase() != 'body') 
 Ê Ê Ê { 
 Ê Ê Ê Ê if (classname != 'default' && classname != "") 
 Ê Ê Ê Ê Ê el.className = classname; 
 Ê Ê Ê Ê else 
 Ê Ê Ê Ê Ê if (el.tagName.toLowerCase() != 'span') 
 Ê Ê Ê Ê Ê Ê el.removeAttribute('className'); 
 Ê Ê Ê Ê Ê else 
 Ê Ê Ê Ê Ê Ê el.removeNode(); // remove span tag 
 Ê Ê Ê } 
 Ê Ê Ê else if (el.tagName.toLowerCase() == 'body') 
 Ê Ê Ê { 
 Ê Ê Ê Ê if (classname != 'default' && classname != "") 
 Ê Ê Ê Ê Ê this[editor+'_rEdit'].document.body.innerHTML = '<p class="'+classname+'">'+this[editor+'_rEdit'].document.body.innerHTML+'</p>'; 
 Ê Ê Ê Ê else 
 Ê Ê Ê Ê Ê this[editor+'_rEdit'].document.body.innerHTML = '<p>'+this[editor+'_rEdit'].document.body.innerHTML+'</p>'; 
 Ê Ê Ê } 
 Ê Ê } else { // if range was found 

 Ê Ê Ê this[editor+'_rEdit'].document.selection.clear(); // remove selection 

 Ê Ê Ê if (el.tagName.toLowerCase() == 'body') 
 Ê Ê Ê Ê container = "div"; 
 Ê Ê Ê else 
 Ê Ê Ê Ê container = "span"; 

 Ê Ê Ê if (classname != 'default' && classname != "") 
 Ê Ê Ê Ê ttext = '<'+container+' class="'+classname+'">'+ttext+'</'+container+'>'; 

 Ê Ê Ê trange.pasteHTML(ttext);Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê // insert replacement -> keeps cursor position 
 Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê Ê // does not replace &nbsp; before span 

 Ê Ê } 
 Ê Ê sender.selectedIndex = 0; 

 Ê Ê SPAW_update_toolbar(editor, true); 
 Ê }
anscheinend ist da beim einfügen beim editor was passiert...
ich schick dir gleich die geänderte datei zurück...