﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking
1223	autoinclude in Basis-Funktionen?	Volker Strähle	somebody	"Vorschlag:

{{{
function xtc_redirect($url, $ssl='',$delay=true) {
  	global $request_type, $PHP_SELF;

	if ($delay == true) {
		foreach(auto_include(DIR_FS_CATALOG.'includes/extra/functions/redirect/','php') as $file) require_once ($file);
	}
	
    if ( (ENABLE_SSL == true) && ($request_type == 'SSL') && ($ssl != 'NONSSL') ) {
		  if (substr($url, 0, strlen(HTTP_SERVER)) == HTTP_SERVER) {
		    $url = HTTPS_SERVER . substr($url, strlen(HTTP_SERVER));
		  }
    }

    $_SESSION['REFERER'] = '';
    if (strpos($PHP_SELF, 'admin') === false &&
        strpos($PHP_SELF, FILENAME_CHECKOUT_SUCCESS) === false &&
        strpos($PHP_SELF, FILENAME_LOGIN) === false &&
        strpos($PHP_SELF, FILENAME_PASSWORD_DOUBLE_OPT) === false)
    {
      $_SESSION['REFERER'] = basename($PHP_SELF);
    }

    // save SESSION before redirect
    session_write_close();

    if (function_exists('xtc_db_close')) {
      xtc_db_close();
    }
    
    header('Location: ' . preg_replace(""/[\r\n]+(.*)$/i"", """", html_entity_decode($url)));
    exit();
  }
}}}

Das wäre eine Möglichkeit in die Verabeitung zentral einzugreifen.

Über eine ""exit;"" in einer autoinclude-Datei könnte ein redirect sogar abgebrochen werden.

Über ""xtc_redirect(url, ssl, false);"" läßt sich der redirect zu einem spätern Zeitpunkt ausführen ohne erneut die autoinclude-Dateien zu laden.

Diese Änderung der xtc.redirect.inc.php kann ohne weitere Änderungen im Shop gemacht werden.

Ähnlich könnte man auch an den anderen Dateien in /inc verfahren.
"	Neues Feature	new	normal		Shop	2.0.2.2					
