HTML-Editor (SPAW) für Contenido 4.4.x optimieren!

1-2-12
Beiträge: 2
Registriert: Do 8. Jul 2004, 20:32
Kontaktdaten:

Beitrag von 1-2-12 » Di 13. Jul 2004, 18:05

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

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Di 13. Jul 2004, 22:28

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...)
*** make your own tools (wishlist :: thx)

kevinerhardt
Beiträge: 15
Registriert: Mi 14. Apr 2004, 16:27
Kontaktdaten:

Beitrag von kevinerhardt » Di 27. Jul 2004, 12:46

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

steiniman
Beiträge: 19
Registriert: Fr 1. Okt 2004, 09:14
Wohnort: Crimmtschau
Kontaktdaten:

neue spaw-Version

Beitrag von steiniman » Sa 9. Okt 2004, 14:33

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?

scrabby0102
Beiträge: 5
Registriert: Fr 5. Nov 2004, 11:22
Kontaktdaten:

Es klappt nicht! Bitte Hilfe *verzweifel*

Beitrag von scrabby0102 » Fr 5. Nov 2004, 11:39

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!

matze
Beiträge: 106
Registriert: Mi 17. Dez 2003, 00:17
Wohnort: L.E.
Kontaktdaten:

Beitrag von matze » Sa 6. Nov 2004, 11:28

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.

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Sa 6. Nov 2004, 11:59

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...
*** make your own tools (wishlist :: thx)

ps
Beiträge: 41
Registriert: So 3. Okt 2004, 20:23
Kontaktdaten:

SPAN Problem

Beitrag von ps » Mi 1. Dez 2004, 21:35

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

jumar
Beiträge: 25
Registriert: Fr 24. Okt 2003, 00:38
Kontaktdaten:

Beitrag von jumar » Mo 13. Dez 2004, 00:25

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

ps
Beiträge: 41
Registriert: So 3. Okt 2004, 20:23
Kontaktdaten:

probier mal shift - enter

Beitrag von ps » Mo 13. Dez 2004, 00:31

hallo,

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

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 13. Dez 2004, 09:48

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);
  }
*** make your own tools (wishlist :: thx)

ps
Beiträge: 41
Registriert: So 3. Okt 2004, 20:23
Kontaktdaten:

Läuft bei mir noch nicht korrekt

Beitrag von ps » Mo 13. Dez 2004, 10:08

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

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 13. Dez 2004, 10:16

ich könnte mir nur vorstellen das du eine klammer zuviel oder zuwenig entfernt hast...

mit welchem editor hast du denn die änderung vorgenommen ?
*** make your own tools (wishlist :: thx)

ps
Beiträge: 41
Registriert: So 3. Okt 2004, 20:23
Kontaktdaten:

BBEdit

Beitrag von ps » Mo 13. Dez 2004, 10:52

Hallo emergence,

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

emergence
Beiträge: 10645
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 13. Dez 2004, 11:14

ä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...
*** make your own tools (wishlist :: thx)

Gesperrt