Backend Template Editor baut Fehler in das Template!

Gesperrt
acquire
Beiträge: 194
Registriert: So 13. Jun 2004, 13:24
Kontaktdaten:

Backend Template Editor baut Fehler in das Template!

Beitrag von acquire »

Hallo,

der Template Editor überarbeitet dummer weise mein Template stehts. Seine Änderungen werden nicht sofort angezeigt (erst nachdem ich irgendwann das Template nochmal gespeichert habe).

Dadurch gibt es immer ein JavaScript Fehler, da eine Klammer entfernt wird.

Und zwar wird aus diesem, korrektem Code:

Code: Alles auswählen

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
dieser:

Code: Alles auswählen

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}
}
In der vorletzten Zeile fehlt am Ende immer die Klammer.

Meine Fragen dazu:
Wie kann man das unterbinden und warum macht der Editor das überhaupt?

Danke im Voraus, Hauke
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

Ähm welcher Template-Editor? Bzw welche Version?
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ähm vermutlich bei 'ner 4.4.5 oder CVS_HEAD

class.template.php
-> function generate
->

Code: Alles auswählen

		$tmp_template['complete'] = str_replace("{", "{{", $tmp_template['complete']);
		$tmp_template['complete'] = str_replace("}", "}}", $tmp_template['complete']);
und

Code: Alles auswählen

		$tmp_template['return'] = str_replace("{{", "{", $tmp_template['return']);
		$tmp_template['return'] = str_replace("}}", "}", $tmp_template['return']);
wird das problem verursachen...
*** make your own tools (wishlist :: thx)
acquire
Beiträge: 194
Registriert: So 13. Jun 2004, 13:24
Kontaktdaten:

Beitrag von acquire »

Contenido 4.4.5.
Der ganz normale Template Editor. Es gibt ja nur einen.

@ emergence:
Muss die die Zeilen dann auskommentieren, oder was muss ich machen um das zu verhindern?

Danke für die Mühe.
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

acquire hat geschrieben:@ emergence:
Muss die die Zeilen dann auskommentieren, oder was muss ich machen um das zu verhindern?
diese zeilen wurden aufgrund eines anderen bugs eingefügt...
entweder kommentierst du diese zeilen einfach aus oder in deinem javascript anstelle von }} -> } } verwenden...

wohlgemerkt ich habs jetzt nicht getestet, sag bescheid ob es überhaupt an dem liegt... falls ja -> wäre das ein bug
*** make your own tools (wishlist :: thx)
acquire
Beiträge: 194
Registriert: So 13. Jun 2004, 13:24
Kontaktdaten:

Beitrag von acquire »

Mit dem Leerzeichen dazwischen klappt es, vielen Dank.
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

acquire hat geschrieben:Contenido 4.4.5.
Der ganz normale Template Editor. Es gibt ja nur einen.
Ähm eben nicht...es gibt weder in der 4.4.5 noch in der 4.5 einen Template-Editor. Wenn du der Meinung bist, daß es doch einen gibt, so sag mir bitte, wie du diesen aufrufst...
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ich hab noch was vergessen

Code: Alles auswählen

var $tags = array('static'  =>  '{{%s}}',
müsste wenn man das auskommentiert
ebenso auf

Code: Alles auswählen

var $tags = array('static'  =>  '{%s}',
geändert werden...

wie auch immer -> bug -> verschoben
*** make your own tools (wishlist :: thx)
acquire
Beiträge: 194
Registriert: So 13. Jun 2004, 13:24
Kontaktdaten:

Beitrag von acquire »

timo hat geschrieben:OK: Style->Layots->Layout auswählen und rechts ist dann der Editor.
Das ist kein Template, das ist ein Layout. Bitte die Terminologien einhalten, und alles wird gut ;)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

@timo
fehler ist leicht zu reproduzieren

style - styleeditor

Code: Alles auswählen

function MM_preloadImages() { //v3.0 
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); 
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) 
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} 
}
einfügen - speichern -> }} wird zu }

der hit an der sache -> das betrifft jedes template das irgendwo eingesetzt wird...
*** make your own tools (wishlist :: thx)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ich hab jetzt ein wenig überlegt

Code: Alles auswählen

      $tmp_template['complete'] = str_replace("{", "{{", $tmp_template['complete']); 
      $tmp_template['complete'] = str_replace("}", "}}", $tmp_template['complete']);

ersetzen durch

Code: Alles auswählen

$tmp_template['complete'] = preg_replace("/{([A-Z0-9]+)}/i", '{{\1}}', $tmp_template['complete']);
und

Code: Alles auswählen

      $tmp_template['return'] = str_replace("{{", "{", $tmp_template['return']); 
      $tmp_template['return'] = str_replace("}}", "}", $tmp_template['return']);

ersetzen durch

Code: Alles auswählen

      $tmp_template['return'] = preg_replace("/{{([A-Z0-9]+)}}/i", '{\1}', $tmp_template['return']);
sollte auch funktionieren...
*** make your own tools (wishlist :: thx)
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Cool, das Problem hatten wir doch auch schon anderen Stellen... wieder etwas ausgemerzt...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

im cvs_head wurde das bereits etwas anders gelöst...
*** make your own tools (wishlist :: thx)
acquire
Beiträge: 194
Registriert: So 13. Jun 2004, 13:24
Kontaktdaten:

Beitrag von acquire »

Wow, danke!
Gesperrt