/** * Initialization of main variables of SugarCRM in global scope * * @static */ public static function init() { if (self::$isInited == true) { return true; } // initialization & backup of sugar_config self::$initVars['GLOBALS']['sugar_config'] = null; if ($GLOBALS['sugar_config']) { self::$initVars['GLOBALS']['sugar_config'] = $GLOBALS['sugar_config']; } if (self::$initVars['GLOBALS']['sugar_config'] == false) { global $sugar_config; if (is_file('config.php')) { require_once 'config.php'; } if (is_file('config_override.php')) { require_once 'config_override.php'; } self::$initVars['GLOBALS']['sugar_config'] = $GLOBALS['sugar_config']; } // backup of current_language self::$initVars['GLOBALS']['current_language'] = 'en_us'; if (isset($sugar_config['current_language'])) { self::$initVars['GLOBALS']['current_language'] = $sugar_config['current_language']; } if (isset($GLOBALS['current_language'])) { self::$initVars['GLOBALS']['current_language'] = $GLOBALS['current_language']; } $GLOBALS['current_language'] = self::$initVars['GLOBALS']['current_language']; // backup of reload_vardefs self::$initVars['GLOBALS']['reload_vardefs'] = null; if (isset($GLOBALS['reload_vardefs'])) { self::$initVars['GLOBALS']['reload_vardefs'] = $GLOBALS['reload_vardefs']; } // backup of locale self::$initVars['GLOBALS']['locale'] = null; if (isset($GLOBALS['locale'])) { self::$initVars['GLOBALS']['locale'] = $GLOBALS['locale']; } if (self::$initVars['GLOBALS']['locale'] == false) { self::$initVars['GLOBALS']['locale'] = new Localization(); } // backup of service_object self::$initVars['GLOBALS']['service_object'] = null; if (isset($GLOBALS['service_object'])) { self::$initVars['GLOBALS']['service_object'] = $GLOBALS['service_object']; } // backup of SugarThemeRegistry self::$systemVars['SugarThemeRegistry'] = SugarThemeRegistry::current(); self::$isInited = true; }