Seite 1 von 1

Popup im IE mit Plugin Advanced Mod Rewrite 0.4.3

Verfasst: Sa 30. Aug 2008, 08:49
von Tbird
Guten Morgen!

Ich habe hier ein neues Problem entdeckt. Und zwar wenn ich MR aktiviert habe, werden Popups im IE (intern) mit falschen Pfad geöffnet:

Bsp:
Die Seite mit dem Popup:
http://www.visit-world.com/englisch/eur ... ovnik.html

Klicke ich auf den Popup-Link wird zwar der richtige Pfad angezeigt, aber der IE macht "intern" daraus folgendes:

http://www.visit-world.com/englisch/eur ... ia/upload/.....

was natürlich nicht funktioniert. (Weiterleitung zur Startseite, müßte ja http://www.visit-world.com/upload/.. heißen)

Im FF geht alles prima. Im IE auch wenn ich MR deaktiviere.

EDIT:
Ach so und im TinyMCE scheint ein Bug im Popup für die Link-Popups zu sein: Der Haken bei "Link trotz Popup folgen" hat die verquerte Funktionalität.

Gruß
Tbird

Re: neues Problem: Popup im IE

Verfasst: So 31. Aug 2008, 13:50
von xmurrix
Hallo Tbird,

danke für den Hinweis, diesen Bug gibt es schon seit der Version 0.2.1rc des Plugins, und keinem ist es aufgefallen, auch mir nicht.

Der IE interpretiert die Pfade etwas anders, dafür gab in den früheren Versionen der MR-Bundles einen Hack dafür. Beim Umstellen auf Plugin habe ich das wohl übersehen.

Beheben lässt sich das Problem folgendermaßen:
Öffne die Datei /contenido/plugins/mod_rewrite/includes/functions.mod_rewrite.php und ersetzte in der Funktion mr_build_generated_code() die Zeile 480

Code: Alles auswählen

        // IE hack with wrong base href interpretation
        $code = preg_replace("/([\"|\'|=])upload\/(.?|.+?)([\"|\'|>])/ie", "stripslashes('\\1${str_base_uri}upload/\\2\\3')", $code);
gegen

Code: Alles auswählen

        // get base uri
        $sBaseUri = $GLOBABLS['cfgClient'][$GLOBABLS['client']]['path']['htmlpath'];
        $sBaseUri = CEC_Hook::execute("Contenido.Frontend.BaseHrefGeneration", $sBaseUri);

        // IE hack with wrong base href interpretation
        $code = preg_replace("/([\"|\'|=])upload\/(.?|.+?)([\"|\'|>])/ie", "stripslashes('\\1${sBaseUri}upload/\\2\\3')", $code);
Gruß
xmurrix

Verfasst: Mi 3. Sep 2008, 22:13
von Tbird
Nabend xmurrix!

Ahso.. ich oute mich als Bug-Jäger :)

..jedoch dein Fix funktioniert bei mir nicht, genauso eingebaut aber gleiches Verhalten.. schitt.

Gruß
Tbird

Verfasst: Mi 3. Sep 2008, 22:49
von xmurrix
Tbird hat geschrieben:...Ahso.. ich oute mich als Bug-Jäger :)

..jedoch dein Fix funktioniert bei mir nicht, genauso eingebaut aber gleiches Verhalten.. schitt...
Servus,

ist gut so, dann werden die Bugs hoffentlich weniger.

Sorry habe dir ein falsches Beispiel gezeigt, es muss

Code: Alles auswählen

        $sBaseUri = $GLOBALS['cfgClient'][$GLOBALS['client']]['path']['htmlpath']; 
anstatt

Code: Alles auswählen

        $sBaseUri = $GLOBABLS['cfgClient'][$GLOBABLS['client']]['path']['htmlpath']; 
sein, die Variable $GLOBABLS gibts nicht.

Gruß
xmurrix

Verfasst: Fr 5. Sep 2008, 21:58
von Tbird
...sein, die Variable $GLOBABLS gibts nicht.
hätte ich müssen aber auch selbst erkennen sollen :roll:

Vielen Dank..klappt super!

Gruß
Tbird