mipmip
2/14/2012 - 9:00 PM

TYPO3: standalone frontend script

TYPO3: standalone frontend script

<?php

   // Add defines and includes below the have a working standalone
   // frontend script which has access to the TYPO3 API.
   define('TYPO3_OS', stristr(PHP_OS,'win')&&!stristr(PHP_OS,'darwin')?'WIN':'');
   define('TYPO3_MODE','FE');
   define('PATH_thisScript',str_replace('//','/', str_replace('\\','/', (
	  php_sapi_name()=='cgi'|| php_sapi_name()=='isapi' 
	  || php_sapi_name()=='cgi-fcgi') 
          && ($_SERVER['ORIG_PATH_TRANSLATED']?
	  $_SERVER['ORIG_PATH_TRANSLATED']:
	  $_SERVER['PATH_TRANSLATED'])?
	  ($_SERVER['ORIG_PATH_TRANSLATED']?
	  $_SERVER['ORIG_PATH_TRANSLATED']:
          $_SERVER['PATH_TRANSLATED']):
          $_SERVER['SCRIPT_FILENAME'])));
 
	  ####!!!!
	  ### REPLACE p3ga_typeimage WITH THE KEY OF YOUR EXTENSION
	  ####!!!!
	  define('PATH_site',
		preg_replace("/(typo3conf|typo3)\/ext\/p3ga_typeimage/i", '', dirname(PATH_thisScript)));
 
	  define('PATH_t3lib', PATH_site.'t3lib/');
	  define('PATH_tslib', PATH_site.'typo3/sysext/cms/tslib/');
	  define('PATH_typo3conf', PATH_site.'typo3conf/');
 
	  require_once(PATH_t3lib.'class.t3lib_div.php');
	  require_once(PATH_t3lib.'class.t3lib_extmgm.php');
	  require_once(PATH_t3lib.'class.t3lib_db.php');
	  require_once(PATH_t3lib.'config_default.php');
	  require_once(PATH_tslib."class.tslib_fe.php");
	  require_once(PATH_t3lib."class.t3lib_cs.php");
	  require_once(PATH_t3lib."class.t3lib_userauth.php");
	  require_once(PATH_tslib."class.tslib_feuserauth.php");
	  require_once(PATH_t3lib."class.t3lib_befunc.php");
 
	  $TYPO3_DB = t3lib_div::makeInstance('t3lib_DB');
	  $TYPO3_DB->sql_pconnect(TYPO3_db_host, TYPO3_db_username, TYPO3_db_password);
	  $tempClassName=t3lib_div::makeInstanceClassName("tslib_fe");
	  $TSFE = new $tempClassName($TYPO3_CONF_VARS,
	  t3lib_div::GPvar("id"),
	  t3lib_div::GPvar("type"), 
	  t3lib_div::GPvar("no_cache"),
	  t3lib_div::GPvar("cHash"), 
	  t3lib_div::GPvar("jumpurl"),
	  t3lib_div::GPvar("MP"),
	  t3lib_div::GPvar("RDCT"));
 
	  $TSFE->connectToMySQL();
	  $TSFE->initFEuser();
	  $TSFE->initUserGroups();
?>