public function testlogPage() { error_reporting(E_ERROR | E_PARSE); //test without setting headerDisplayed Tracker::logPage(); $this->assertEquals(null, $_SESSION['lpage']); //test with headerDisplayed set $GLOBALS['app']->headerDisplayed = 1; Tracker::logPage(); $this->assertEquals(time(), $_SESSION['lpage']); }
function sugar_cleanup($exit = false) { static $called = false; if ($called) { return; } $called = true; set_include_path(realpath(dirname(__FILE__) . '/..') . PATH_SEPARATOR . get_include_path()); chdir(realpath(dirname(__FILE__) . '/..')); global $sugar_config; require_once 'include/utils/LogicHook.php'; LogicHook::initialize(); $GLOBALS['logic_hook']->call_custom_logic('', 'server_round_trip'); //added this check to avoid errors during install. if (empty($sugar_config['dbconfig'])) { if ($exit) { exit; } else { return; } } if (!class_exists('Tracker', true)) { require_once 'modules/Trackers/Tracker.php'; } Tracker::logPage(); // Now write the cached tracker_queries if (!empty($GLOBALS['savePreferencesToDB']) && $GLOBALS['savePreferencesToDB']) { if (isset($GLOBALS['current_user']) && $GLOBALS['current_user'] instanceof User) { $GLOBALS['current_user']->savePreferencesToDB(); } } //check to see if this is not an `ajax call AND the user preference error flag is set if (isset($_SESSION['USER_PREFRENCE_ERRORS']) && $_SESSION['USER_PREFRENCE_ERRORS'] && ($_REQUEST['action'] != 'modulelistmenu' && $_REQUEST['action'] != 'DynamicAction') && (empty($_REQUEST['to_pdf']) || !$_REQUEST['to_pdf']) && (empty($_REQUEST['sugar_body_only']) || !$_REQUEST['sugar_body_only'])) { global $app_strings; //this is not an ajax call and the user preference error flag is set, so reset the flag and print js to flash message $err_mess = $app_strings['ERROR_USER_PREFS']; $_SESSION['USER_PREFRENCE_ERRORS'] = false; echo "\n\t\t<script>\n\t\t\tajaxStatus.flashStatus('{$err_mess}',7000);\n\t\t</script>"; } pre_login_check(); if (class_exists('DBManagerFactory')) { $db = DBManagerFactory::getInstance(); $db->disconnect(); if ($exit) { exit; } } }
function sugar_cleanup($exit = false) { static $called = false; if ($called) { return; } $called = true; set_include_path(realpath(dirname(__FILE__) . '/..') . PATH_SEPARATOR . get_include_path()); chdir(realpath(dirname(__FILE__) . '/..')); global $sugar_config; LogicHook::initialize(); $GLOBALS['logic_hook']->call_custom_logic('', 'server_round_trip'); //added this check to avoid errors during install. if (empty($sugar_config['dbconfig'])) { if ($exit) { exit; } else { return; } } if (!class_exists('Tracker', true)) { require_once 'modules/Trackers/Tracker.php'; } Tracker::logPage(); // Now write the cached tracker_queries if (!empty($GLOBALS['savePreferencesToDB']) && $GLOBALS['savePreferencesToDB']) { if (!class_exists('UserPreference', true)) { } UserPreference::savePreferencesToDB(); } pre_login_check(); if (class_exists('DBManagerFactory')) { $db = DBManagerFactory::getInstance(); $db->disconnect(); if ($exit) { exit; } } }
/** * Clean up Sugar environment * @param bool $exit Should we exit() after we're done? */ function sugar_cleanup($exit = false) { static $called = false; if ($called) { return; } $called = true; $root_path = sugar_root_dir(); $paths = explode(PATH_SEPARATOR, get_include_path()); if (in_array($root_path, $paths) == false) { set_include_path($root_path . PATH_SEPARATOR . get_include_path()); } chdir($root_path); // if cleanup runs before autoloader was loaded then init autoloader. if (!class_exists('SugarAutoLoader')) { require_once 'include/utils/autoloader.php'; SugarAutoLoader::init(); } global $sugar_config; require_once 'include/utils/LogicHook.php'; LogicHook::initialize(); $GLOBALS['logic_hook']->call_custom_logic('', 'server_round_trip'); //added this check to avoid errors during install. if (empty($sugar_config['dbconfig'])) { if ($exit) { exit; } else { return; } } if (!class_exists('Tracker', true)) { require_once 'modules/Trackers/Tracker.php'; } Tracker::logPage(); // Now write the cached tracker_queries if (class_exists("TrackerManager")) { $trackerManager = TrackerManager::getInstance(); if ($monitor = $trackerManager->getMonitor('tracker_queries')) { $trackerManager->saveMonitor($monitor, true); } } if (!empty($GLOBALS['savePreferencesToDB']) && $GLOBALS['savePreferencesToDB']) { if (isset($GLOBALS['current_user']) && $GLOBALS['current_user'] instanceof User) { $GLOBALS['current_user']->savePreferencesToDB(); } } //check to see if this is not an `ajax call AND the user preference error flag is set if (isset($_SESSION['USER_PREFRENCE_ERRORS']) && $_SESSION['USER_PREFRENCE_ERRORS'] && ($_REQUEST['action'] != 'modulelistmenu' && $_REQUEST['action'] != 'DynamicAction') && ($_REQUEST['action'] != 'favorites' && $_REQUEST['action'] != 'DynamicAction') && (empty($_REQUEST['to_pdf']) || !$_REQUEST['to_pdf']) && (empty($_REQUEST['sugar_body_only']) || !$_REQUEST['sugar_body_only'])) { global $app_strings; //this is not an ajax call and the user preference error flag is set, so reset the flag and print js to flash message $err_mess = $app_strings['ERROR_USER_PREFS']; $_SESSION['USER_PREFRENCE_ERRORS'] = false; echo "\n <script>\n ajaxStatus.flashStatus('{$err_mess}',7000);\n </script>"; } SugarAutoLoader::saveClassMap(); if (class_exists('DBManagerFactory', false)) { DBManagerFactory::disconnectAll(); } if ($exit) { exit; } }