Index: trunk/core/kernel/startup.php
===================================================================
diff -u -r2596 -r2600
--- trunk/core/kernel/startup.php (.../startup.php) (revision 2596)
+++ trunk/core/kernel/startup.php (.../startup.php) (revision 2600)
@@ -8,32 +8,28 @@
define('INPORTAL_ENV', 1);
-if( !isset($_SERVER['DOCUMENT_ROOT']) || !$_SERVER['DOCUMENT_ROOT'] )
-{
- $full_path = str_replace('\\', '/', dirname(FULL_PATH));
- if (!isset($_SERVER['PATH_INFO'])) {
- $_SERVER['PATH_INFO'] = $_SERVER['PHP_SELF'];
- }
- $path_info = str_replace('\\', '/', dirname($_SERVER['PATH_INFO']));
+# New path detection method
-// echo "replacing ".$path_info.' (path_info) with "" in '.$full_path.' (full_path) = '.str_replace($path_info, '', $full_path).'
';
- $_SERVER['DOCUMENT_ROOT'] = str_replace($path_info, '', $full_path);
-}
+echo "FULL_PATH: ".FULL_PATH.'
';
-$doc_root = rtrim(realpath($_SERVER['DOCUMENT_ROOT']), '/');
-$doc_root = str_replace('\\', '/', $doc_root); // windows hack
-define('DOC_ROOT', $doc_root);
+$fp = str_replace('\\', '/', dirname(FULL_PATH));
+$ps = preg_replace("/\/admin$/", '', str_replace('\\', '/', dirname($_SERVER['PHP_SELF'])));
-include_once(KERNEL_PATH.'/globals.php'); // non OOP functions used through kernel, e.g. print_pre
+echo "fp: $fp
";
+echo "ps: $ps
";
-safeDefine('INPORTAL_TAGS', true);
+$_SERVER['DOCUMENT_ROOT'] = $fp;
+define('DOC_ROOT', $fp);
+define('BASE_PATH', $ps);
-$reg = '/'.preg_quote (DOC_ROOT, '/').'/i';
-define('BASE_PATH', $base_path = ereg_replace('/admin', '', preg_replace($reg, '', str_replace('\\', '/', FULL_PATH))));
+# /New method
+include_once(KERNEL_PATH.'/globals.php'); // non OOP functions used through kernel, e.g. print_pre
+
+safeDefine( 'INPORTAL_TAGS', true);
safeDefine( 'SERVER_NAME', $_SERVER['HTTP_HOST']);
-safeDefine( 'KERNEL_PATH', DOC_ROOT.BASE_PATH.'/kernel4');
-safeDefine( 'PROTOCOL', 'http://');
+safeDefine( 'KERNEL_PATH', FULL_PATH.'/kernel4');
+safeDefine( 'PROTOCOL', isset($_SERVER["HTTPS"]) ? 'https://' : 'http://');
$vars = parse_portal_ini(FULL_PATH.'/config.php');
@@ -58,8 +54,13 @@
ini_set('memory_limit', '50M');
-define('MODULES_PATH', DOC_ROOT.BASE_PATH);
-define('EXPORT_PATH', DOC_ROOT.BASE_PATH.'/admin/export');
+echo "FULL_PATH: ".FULL_PATH.'
';
+echo "DOC_ROOT: ".DOC_ROOT.'
';
+echo "BASE_PATH: ".BASE_PATH.'
';
+echo "MODULES_PATH: ".DOC_ROOT.'
';
+
+define('MODULES_PATH', FULL_PATH);
+define('EXPORT_PATH', FULL_PATH.'/admin/export');
define('GW_CLASS_PATH', MODULES_PATH.'/in-commerce/units/gateways/gw_classes'); // Payment Gateway Classes Path
safeDefine('ENV_VAR_NAME','env');