FIX, removing duplicated function an adding its reference for backward compatibility
This commit is contained in:
@@ -68,87 +68,12 @@ class Bootstrap
|
|||||||
|
|
||||||
public static function getSystemConfiguration($globalIniFile = '', $wsIniFile = '', $wsName = '')
|
public static function getSystemConfiguration($globalIniFile = '', $wsIniFile = '', $wsName = '')
|
||||||
{
|
{
|
||||||
$readGlobalIniFile = false;
|
// (!) Backward compatibility, the original function is in System class
|
||||||
$readWsIniFile = false;
|
if (! class_exists("System")) {
|
||||||
|
require_once PATH_CORE . "classes" . PATH_SEP . "class.system.php";
|
||||||
if (empty($globalIniFile)) {
|
|
||||||
$globalIniFile = PATH_CORE . 'config' . PATH_SEP . 'env.ini';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (empty($wsIniFile)) {
|
return System::getSystemConfiguration($globalIniFile, $wsIniFile, $wsName);
|
||||||
if (defined('PATH_DB')) {
|
|
||||||
// if we're on a valid workspace env.
|
|
||||||
if (empty($wsName)) {
|
|
||||||
$uriParts = explode('/', getenv("REQUEST_URI"));
|
|
||||||
if (isset($uriParts[1])) {
|
|
||||||
if (substr($uriParts[1], 0, 3) == 'sys') {
|
|
||||||
$wsName = substr($uriParts[1], 3);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$wsIniFile = PATH_DB . $wsName . PATH_SEP . 'env.ini';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$readGlobalIniFile = file_exists($globalIniFile) ? true : false;
|
|
||||||
$readWsIniFile = file_exists($wsIniFile) ? true : false;
|
|
||||||
|
|
||||||
if (isset($_SESSION['PROCESSMAKER_ENV'])) {
|
|
||||||
$md5 = array();
|
|
||||||
|
|
||||||
if ($readGlobalIniFile) {
|
|
||||||
$md5[] = md5_file($globalIniFile);
|
|
||||||
}
|
|
||||||
if ($readWsIniFile) {
|
|
||||||
$md5[] = md5_file($wsIniFile);
|
|
||||||
}
|
|
||||||
$hash = implode('-', $md5);
|
|
||||||
|
|
||||||
if ($_SESSION['PROCESSMAKER_ENV_HASH'] === $hash) {
|
|
||||||
$_SESSION['PROCESSMAKER_ENV']['from_cache'] = 1;
|
|
||||||
return $_SESSION['PROCESSMAKER_ENV'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// default configuration
|
|
||||||
$error_reporting_default = defined('E_DEPRECATED') ? E_ALL & ~E_DEPRECATED : E_ALL;
|
|
||||||
$error_reporting_default = defined('E_STRICT') ? $error_reporting_default & ~E_STRICT : $error_reporting_default;
|
|
||||||
|
|
||||||
$config = array('debug' => 0, 'debug_sql' => 0, 'debug_time' => 0, 'debug_calendar' => 0, 'wsdl_cache' => 1, 'memory_limit' => "256M",
|
|
||||||
'time_zone' => 'America/New_York', 'memcached' => 0, 'memcached_server' => '', 'default_skin' => 'neoclassic', 'default_lang' => 'en',
|
|
||||||
'proxy_host' => '', 'proxy_port' => '', 'proxy_user' => '', 'proxy_pass' => '' , 'size_log_file' => 5000000 , 'number_log_file' => 5,
|
|
||||||
'ie_cookie_lifetime' => 1, 'error_reporting' => $error_reporting_default, 'display_errors' => 'On');
|
|
||||||
|
|
||||||
// read the global env.ini configuration file
|
|
||||||
if ($readGlobalIniFile && ($globalConf = @parse_ini_file($globalIniFile)) !== false) {
|
|
||||||
$config = array_merge($config, $globalConf);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Workspace environment configuration
|
|
||||||
if ($readWsIniFile && ($wsConf = @parse_ini_file($wsIniFile)) !== false) {
|
|
||||||
$config = array_merge($config, $wsConf);
|
|
||||||
}
|
|
||||||
|
|
||||||
// validation debug config, only binary value is valid; debug = 1, to enable
|
|
||||||
$config['debug'] = $config['debug'] == 1 ? 1 : 0;
|
|
||||||
|
|
||||||
if ($config['proxy_pass'] != '') {
|
|
||||||
$config['proxy_pass'] = G::decrypt($config['proxy_pass'], 'proxy_pass');
|
|
||||||
}
|
|
||||||
|
|
||||||
$md5 = array();
|
|
||||||
if ($readGlobalIniFile) {
|
|
||||||
$md5[] = md5_file($globalIniFile);
|
|
||||||
}
|
|
||||||
if ($readWsIniFile) {
|
|
||||||
$md5[] = md5_file($wsIniFile);
|
|
||||||
}
|
|
||||||
$hash = implode('-', $md5);
|
|
||||||
|
|
||||||
$_SESSION['PROCESSMAKER_ENV'] = $config;
|
|
||||||
$_SESSION['PROCESSMAKER_ENV_HASH'] = $hash;
|
|
||||||
|
|
||||||
return $config;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function registerSystemClasses()
|
public static function registerSystemClasses()
|
||||||
|
|||||||
@@ -66,7 +66,10 @@ class System
|
|||||||
'proxy_user' => '',
|
'proxy_user' => '',
|
||||||
'proxy_pass' => '',
|
'proxy_pass' => '',
|
||||||
'size_log_file' => 5000000,
|
'size_log_file' => 5000000,
|
||||||
'number_log_file' => 5
|
'number_log_file' => 5,
|
||||||
|
'ie_cookie_lifetime' => 1,
|
||||||
|
'error_reporting' => "",
|
||||||
|
'display_errors' => 'On'
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1088,7 +1091,13 @@ class System
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// default configuration
|
// default configuration for "error_reporting" conf
|
||||||
|
if (empty(self::$defaultConfig["error_reporting"])) {
|
||||||
|
$errorReportingDefault = defined('E_DEPRECATED') ? E_ALL & ~E_DEPRECATED : E_ALL;
|
||||||
|
$errorReportingDefault = defined('E_STRICT') ? $errorReportingDefault & ~E_STRICT : $errorReportingDefault;
|
||||||
|
self::$defaultConfig["error_reporting"] = $errorReportingDefault;
|
||||||
|
}
|
||||||
|
|
||||||
$config = self::$defaultConfig;
|
$config = self::$defaultConfig;
|
||||||
|
|
||||||
// read the global env.ini configuration file
|
// read the global env.ini configuration file
|
||||||
|
|||||||
Reference in New Issue
Block a user