/** * Perform execution of the application. This method is called from index2.php */ function execute() { global $sugar_config; if (!empty($sugar_config['default_module'])) { $this->default_module = $sugar_config['default_module']; } $module = $this->default_module; if (!empty($_REQUEST['module'])) { $module = $_REQUEST['module']; } insert_charset_header(); $this->setupPrint(); $this->controller = ControllerFactory::getController($module); // If the entry point is defined to not need auth, then don't authenticate. if (empty($_REQUEST['entryPoint']) || $this->controller->checkEntryPointRequiresAuth($_REQUEST['entryPoint'])) { $this->loadUser(); $this->ACLFilter(); $this->preProcess(); $this->controller->preProcess(); $this->checkHTTPReferer(); } SugarThemeRegistry::buildRegistry(); $this->loadLanguages(); $this->checkDatabaseVersion(); $this->loadDisplaySettings(); //$this->loadLicense(); $this->loadGlobals(); $this->setupResourceManagement($module); $this->controller->execute(); sugar_cleanup(); }
/** * Perform execution of the application. This method is called from index2.php */ function execute() { global $sugar_config; if (!empty($sugar_config['default_module'])) { $this->default_module = $sugar_config['default_module']; } $module = $this->default_module; if (!empty($_REQUEST['module'])) { $module = $_REQUEST['module']; } insert_charset_header(); $this->setupPrint(); $this->controller = ControllerFactory::getController($module); // if the entry point is defined to not need auth, then don't authenicate if (empty($_REQUEST['entryPoint']) || $this->controller->checkEntryPointRequiresAuth($_REQUEST['entryPoint'])) { $this->loadUser(); $this->ACLFilter(); $this->preProcess(); $this->controller->preProcess(); } if (ini_get('session.auto_start') !== false) { $_SESSION['breadCrumbs'] = new BreadCrumbStack($GLOBALS['current_user']->id); } SugarThemeRegistry::buildRegistry(); $this->loadLanguages(); $this->checkDatabaseVersion(); $this->loadDisplaySettings(); $this->loadLicense(); $this->loadGlobals(); $this->setupResourceManagement($module); $this->controller->execute(); sugar_cleanup(); }
/** * Perform execution of the application. This method is called from index2.php */ function execute() { global $sugar_config; if (!empty($sugar_config['default_module'])) { $this->default_module = $sugar_config['default_module']; } $module = $this->default_module; if (!empty($_REQUEST['module'])) { $module = $_REQUEST['module']; } insert_charset_header(); $this->setupPrint(); $this->controller = ControllerFactory::getController($module); // make sidecar view load faster // TODO the rest of the code will be removed as soon as we migrate all modules to sidecar if ($this->controller->action === 'sidecar' || $this->controller->action === 'index' && $this->controller->module === 'Home' && (empty($_REQUEST['entryPoint']) || isset($_REQUEST['action']) && $_REQUEST['action'] === 'DynamicAction') || empty($_REQUEST)) { // check for not authorised users $this->checkMobileRedirect(); $this->controller->action = 'sidecar'; $this->controller->execute(); return; } elseif ($this->controller->action === 'Login' && $this->controller->module === 'Users') { // TODO remove this when we are "iFrame free" // by default login location is base site URL $location = rtrim($sugar_config['site_url'], '/') . '/'; $loginRedirect = $this->getLoginRedirect(); $loginVars = $this->getLoginVars(); if (isset($loginVars['module'])) { if (isModuleBWC($loginVars['module'])) { // in case if login module is BWC, location is the BWC URL (as if the user was already // logged in), since authentication is managed by Sidecar, not the module itself $location .= '#bwc/' . $loginRedirect; } else { // otherwise compose basic Sidecar route $location .= '#' . rawurlencode($loginVars['module']); if (isset($loginVars['record'])) { $location .= '/' . rawurlencode($loginVars['record']); } } } echo '<script> if (parent.location == window.location) { window.location = ' . json_encode($location) . '; } else { window.top.SUGAR.App.bwc.login(' . json_encode($loginRedirect) . '); } </script>'; return; } // If the entry point is defined to not need auth, then don't authenticate. if (empty($_REQUEST['entryPoint']) || $this->controller->checkEntryPointRequiresAuth($_REQUEST['entryPoint'])) { $this->startSession(); // check for authorised users $this->checkMobileRedirect(); $this->loadUser(); $this->ACLFilter(); $this->preProcess(); $this->controller->preProcess(); $this->checkHTTPReferer(); $this->csrfAuthenticate(); } SugarThemeRegistry::buildRegistry(); $this->loadLanguages(); $this->checkDatabaseVersion(); $this->loadDisplaySettings(); $this->loadLicense(); $this->loadGlobals(); $this->setupResourceManagement($module); $this->controller->execute(); sugar_cleanup(); }
$_SESSION['view'] = $view; } //session_register("view"); } /** Function to set, character set in the header, as given in include/language/*_lang.php */ function insert_charset_header() { global $app_strings, $default_charset; $charset = $default_charset; if (isset($app_strings['LBL_CHARSET'])) { $charset = $app_strings['LBL_CHARSET']; } header('Content-Type: text/html; charset=' . $charset); } insert_charset_header(); // Create or reestablish the current session session_start(); if (!is_file('config.inc.php')) { header("Location: install.php"); exit; } require_once 'config.inc.php'; if (!isset($dbconfig['db_hostname']) || $dbconfig['db_status'] == '_DB_STAT_') { header("Location: install.php"); exit; } // load up the config_override.php file. This is used to provide default user settings if (is_file('config_override.php')) { require_once 'config_override.php'; }