Example #1
0
 /**
  * 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();
 }
Example #2
0
 /**
  * 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();
 }
Example #3
0
foreach ($_SESSION['sugarMergeRunResults'] as $mergeModule => $mergeModuleFileList) {
    if (!empty($mergeModuleFileList)) {
        $skipLayouts = false;
    }
}
$stepNext = $skipLayouts ? $_REQUEST['step'] + 2 : $_REQUEST['step'] + 1;
$stepCancel = -1;
$stepRecheck = $_REQUEST['step'];
$_SESSION['step'][$steps['files'][$_REQUEST['step']]] = $stop ? 'failed' : 'success';
// clear out the theme cache
if (!class_exists('SugarThemeRegistry')) {
    require_once 'include/SugarTheme/SugarTheme.php';
}
$themeObject = SugarThemeRegistry::current();
$styleJSFilePath = $GLOBALS['sugar_config']['cache_dir'] . $themeObject->getJSPath() . DIRECTORY_SEPARATOR . 'style-min.js';
if (file_exists($styleJSFilePath)) {
    logThis("Rebuilding style js file: {$styleJSFilePath}");
    unlink($styleJSFilePath);
    SugarThemeRegistry::current()->clearJSCache();
    SugarThemeRegistry::current()->getJS();
}
SugarThemeRegistry::buildRegistry();
SugarThemeRegistry::clearAllCaches();
//Clean out the language files
logThis("Rebuilding language cache");
sugar_cache_reset_full();
LanguageManager::clearLanguageCache();
// re-minify the JS source files
$_REQUEST['root_directory'] = getcwd();
$_REQUEST['js_rebuild_concat'] = 'rebuild';
require_once 'jssource/minify.php';
 /**
  * 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();
 }
 public function testClearCacheAllThemes()
 {
     SugarThemeRegistry::get($this->_themeName)->getCSSURL('style.css');
     $this->assertTrue(isset(SugarThemeRegistry::get($this->_themeName)->_cssCache['style.css']), 'File style.css should exist in cache');
     SugarThemeRegistry::clearAllCaches();
     SugarThemeRegistry::buildRegistry();
     $this->assertFalse(isset(SugarThemeRegistry::get($this->_themeName)->_cssCache['style.css']), 'File style.css shouldn\'t exist in cache');
 }
 public static function removeAllCreatedAnonymousThemes()
 {
     foreach (self::getCreatedThemeNames() as $name) {
         if (is_dir('themes/' . $name)) {
             rmdir_recursive('themes/' . $name);
         }
         if (is_dir('custom/themes/' . $name)) {
             rmdir_recursive('custom/themes/' . $name);
         }
         if (is_dir(sugar_cached('themes/') . $name)) {
             rmdir_recursive(sugar_cached('themes/') . $name);
         }
     }
     SugarThemeRegistry::buildRegistry();
 }
Example #7
0
 public function testBuildRegistry()
 {
     $this->markTestSkipped('Skip for community edition builds for now as this was to test a ce->pro upgrade');
     SugarThemeRegistry::buildRegistry();
     $themeObject = SugarThemeRegistry::current();
 }