/** * Login to the depot * * @return true if successful, false otherwise */ function login($terms_checked = true) { if (empty($_SESSION['SugarDepotSessionID'])) { global $license; $GLOBALS['log']->debug("Begin SugarDepot Login"); PackageManagerComm::initialize(false); require 'sugar_version.php'; require 'config.php'; $credentials = PackageManager::getCredentials(); if (empty($license)) { loadLicense(); } $info = sugarEncode('2813', serialize(getSystemInfo(true))); $pm = new PackageManager(); $installed = $pm->buildInstalledReleases(); $installed = base64_encode(serialize($installed)); $params = array('installed_modules' => $installed, 'terms_checked' => $terms_checked, 'system_name' => $credentials['system_name']); $terms_version = !empty($_SESSION['SugarDepot_TermsVersion']) ? $_SESSION['SugarDepot_TermsVersion'] : ''; if (!empty($terms_version)) { $params['terms_version'] = $terms_version; } $result = $GLOBALS['SugarDepot']->call('depotLogin', array(array('user_name' => $credentials['username'], 'password' => $credentials['password']), 'info' => $info, 'params' => $params)); PackageManagerComm::errorCheck(); if (!is_array($result)) { $_SESSION['SugarDepotSessionID'] = $result; } $GLOBALS['log']->debug("End SugarDepot Login"); return $result; } else { return $_SESSION['SugarDepotSessionID']; } }