main_load.inc.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. // Load Dolibarr environment
  3. $res = 0;
  4. // Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined)
  5. if (!$res && !empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) {
  6. $res = @include $_SERVER["CONTEXT_DOCUMENT_ROOT"]."/main.inc.php";
  7. }
  8. // Try main.inc.php into web root detected using web root calculated from SCRIPT_FILENAME
  9. $tmp = empty($_SERVER['SCRIPT_FILENAME']) ? '' : $_SERVER['SCRIPT_FILENAME']; $tmp2 = realpath(__FILE__); $i = strlen($tmp) - 1; $j = strlen($tmp2) - 1;
  10. while ($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i] == $tmp2[$j]) {
  11. $i--; $j--;
  12. }
  13. if (!$res && $i > 0 && file_exists(substr($tmp, 0, ($i + 1))."/main.inc.php")) {
  14. $res = @include substr($tmp, 0, ($i + 1))."/main.inc.php";
  15. }
  16. if (!$res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php")) {
  17. $res = @include dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php";
  18. }
  19. // Try main.inc.php using relative path
  20. if (!$res && file_exists("../main.inc.php")) {
  21. $res = @include "../main.inc.php";
  22. }
  23. if (!$res && file_exists("../../main.inc.php")) {
  24. $res = @include "../../main.inc.php";
  25. }
  26. if (!$res && file_exists("../../../main.inc.php")) {
  27. $res = @include "../../../main.inc.php";
  28. }
  29. if (!$res) {
  30. die("Include of main fails");
  31. }
  32. // Useful things
  33. $moduleclassname = 'mod'.$modulename;
  34. $moduledir = strtolower($modulename);
  35. $modulecontext = $moduledir."@".$moduledir;
  36. $moduleprefix = strtoupper($modulename);