Changes

Jump to navigation Jump to search
m
Line 202: Line 202:  
Edit the file to have a correct relative path to the main.inc.php file.  
 
Edit the file to have a correct relative path to the main.inc.php file.  
 
<source lang="php">
 
<source lang="php">
 +
// Load Dolibarr environment
 
$res=0;
 
$res=0;
if (! $res && file_exists("../main.inc.php")) $res=@include("../main.inc.php"); // to work if your module directory is into dolibarr root htdocs directory
+
// Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined)
if (! $res && file_exists("../../main.inc.php")) $res=@include("../../main.inc.php"); // to work if your module directory is into a subdir of root htdocs directory
+
if (! $res && ! empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) $res=@include($_SERVER["CONTEXT_DOCUMENT_ROOT"]."/main.inc.php");
 +
// Try main.inc.php into web root detected using web root caluclated from SCRIPT_FILENAME
 +
$tmp=empty($_SERVER['SCRIPT_FILENAME'])?'':$_SERVER['SCRIPT_FILENAME'];$tmp2=realpath(__FILE__); $i=strlen($tmp)-1; $j=strlen($tmp2)-1;
 +
while($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i]==$tmp2[$j]) { $i--; $j--; }
 +
if (! $res && $i > 0 && file_exists(substr($tmp, 0, ($i+1))."/main.inc.php")) $res=@include(substr($tmp, 0, ($i+1))."/main.inc.php");
 +
if (! $res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i+1)))."/main.inc.php")) $res=@include(dirname(substr($tmp, 0, ($i+1)))."/main.inc.php");
 +
// Try main.inc.php using relative path
 +
if (! $res && file_exists("../main.inc.php")) $res=@include("../main.inc.php");
 +
if (! $res && file_exists("../../main.inc.php")) $res=@include("../../main.inc.php");
 +
if (! $res && file_exists("../../../main.inc.php")) $res=@include("../../../main.inc.php");
 
if (! $res) die("Include of main fails");
 
if (! $res) die("Include of main fails");
 
</source>
 
</source>

Navigation menu