TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

Extension-Quellcode-Änderung wird nicht angenommen


Autor Nachricht
Verfasst am: 22. 05. 2012 [15:33]
ElDorado
Themenersteller
Dabei seit: 22.05.2012
Beiträge: 4
Hallo an alle Fornemitglieder,
ich weiß nicht ob das hier die richtige Stelle für meinen Post ist, aber ich versuche es mal. Ich habe in diesem sowie in anderen Foren bereits gesucht, bin aber für mein Problem auf keine Lösung gestoßen.

Zur Sache:

Ich habe den Quellcode einer Extension geändert. Mir ist bekannt, dass man den Weg auf diese Art nicht beschreiten sollte. Es ist eine vorrübergehende Änderung, die in ein paar Wochen wieder entfernt werden soll. Nun ist es so, dass diese Änderungen nicht angenommen wird. Die Extension erzeugt einen Javascript-Code der dann über die Extension in den HTML-Code eingebunden wird. Unteranderem wird eine Variable erzeugt, die mit einer leeren Zeichenfolge initialisiert wird:

PHP
var textcontent = "";


Diese Zeile finde ich dann auch im HTMl-Code an der jeweiligen Stelle wieder wenn ich mir den Quellcode der Seite ansehe. Als einfachen Test bzgl. meines Problems habe ich einfach folgende Änderung im Quellcode der Extension vorgenommen:

PHP
var textcontent = "XXX";


Ich habe also die Variable mit der Zeichenfolge 'XXX' initialisiert, in der Hoffnung, dass ich die vorab aufgeführte Zeile im HTML-Code wiederfinde. Leider wird weiterhin nur die erste Zeile (Initialisierung mit leerer Zeichenfolge) an den HTML-Code übergeben.

Bei der Typo3-Version handelt es sich um die Version 4.1.1. Ich Sämtliche Caches, sowohl in Typo3 als auch im Browser (in meinem Fall FireFox) geleert. Außerdem habe ich mir über den Extension-Manager angesehen unter welchem Pfad die Extension zu finden ist. Dies ist auch der Pfad unter welchem ich die für die Ausgabe notwendige Datei dieser Extension angepasst habe. Außerdem habe ich noch zu Fuss im Verzeichnis typo3conf die Cache-Dateien gelöscht. Leider hat das alles nicht geholfen.

Darum die Fragen an euch, was habe ich evtl. falsch gemacht bzw. was kann ich noch ausprobieren?

Vielen Dank im Voraus und Viele Grüße
Profil
Verfasst am: 23. 05. 2012 [09:04]
aemka
Dabei seit: 23.07.2009
Beiträge: 339
Hast dann wahrscheinlich an der flaschen Stelle geändert. Geh doch mal alles in der Extension durch und guck, ob das vlt. noch wo anders vorkommt.

ProfilWWWSkype
Verfasst am: 24. 05. 2012 [16:32]
ElDorado
Themenersteller
Dabei seit: 22.05.2012
Beiträge: 4
Das habe ich mehrmals geprüft. An eben dieser Stelle bzw. im Umfeld dieser Vaiablen-Deklaration hatte ich vor ein paar Wochen bereits schonmal eine kleine Änderung durchgeführt, die angenommen wurde. Diese ältere Änderung wird dann inkludiert in den HTML-Ausgabe-String, dieser wird wiederum an die aufgezeigte Variable textcontent übergeben, die dann wiederum über document.write ausgegeben wird, d.h. in den HTML-Code übergeht. Wenn ich eben diese Variable, wie beschrieben, vorbelege, so wird eben diese Vorbelegung nicht in den HTML-Code genauer in die darin befindliche Javascript-Section ausgegeben. Innerhalb des zugehörigen Codes wird an keiner anderen Stelle die Variable textcontent verwendet.

Meine Vermutung ist, Du hast indirekt recht. Irgendwo findet sich der Code ein zweitesmal, allerdings nicht in dieser Datei, und wird verwendet, d.h. die nicht geänderte Variante. Die Extension ist nicht sehr umfangreich (its-newsticker). Sie hat nur zwei Klassen-Dateien unter pi1. Die kleinere ist es definitiv nicht, dort steckt kaum etwas an Code drin und von der angesprochenen Variable ist dort gar nichts zu finden; sie wird aber definitiv benötigt für die Ausgabe. Sie findet sich nur in der anderen Klassen-Datei, dort aber auch nur in einer von zwei Routinen genauer nur im Bereich einer Schleife, die der Ausgabe dient.

Was mir wohl bereits bei anderen Extensions im Zusammenhang mit dieser Typo3 Version (4.1.1) auffiehl war, dass im Zuge der Internationalisierung/Lokalisierung im Verzeichnis I18N Extension-Code wiederholt zu finden war. Dort habe ich auch nachgesehen, aber für meinen Fall nichts gefunden.

Das kann nur ein Denkfehler sein, Betriebsblindheit oder dergleichen. Solche Änderungen mache ich nicht das erste mal aber in diesem Fall stecke ich fest; wobei das nur die halbe Wahrheit ist icon_wink.gif Ich habe mir zwischenzeitlich mit einer anderen Lösung beholfen, bin aber trotzdem weiterhin an Lösung interessiert, weswegen ich das hier mal weiterlaufen lasse. Wer weiß wann der Fall wieder eintritt!

Viele Grüße
Profil
Verfasst am: 10. 06. 2012 [21:03]
igorshmigor
Dabei seit: 17.03.2006
Beiträge: 942
Hast Du mal Konfigurations- und Seitencache gelöscht? Da es sich um generiertes JavaScript handelt wird dieses vielleicht noch aus dem Cache gezogen.
Mir liegt nur Version 1.0.7 vor, dort wird die Variable nicht mit einem leeren String initialisiert, sondern in Zeile 195 wie folgt:
JAVASCRIPT
var textcontent ="<span class=\"itsnewslinkstyle'.$uid.'\">&nbsp;&nbsp;+&nbsp;+&nbsp;+&nbsp;&nbsp;</span>";

Du kannst ja mal schauen, ob es am Cache liegt, indem Du direkt vor der folgenden Zeile (bei mir in Zeile 232)
PHP
$GLOBALS['TSFE']->setJS('its_ticker_'.$uid, $js);

$js veränderst, z.B. mit
PHP
$js='alert("lol, no changes" )';



ProfilWWW