public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $viewer = $this->getViewer($request); $userModel = Users_Record_Model::getCurrentUserModel(); $isFirstUser = Users_CRMSetup::isFirstUser($userModel); if ($isFirstUser) { $viewer->assign('IS_FIRST_USER', $isFirstUser); $viewer->assign('PACKAGES_LIST', Users_CRMSetup::getPackagesList()); $viewer->view('SystemSetup.tpl', $moduleName); } else { header('Location: index.php?module=Users&parent=Settings&view=UserSetup'); exit; } }
/** * Function to save packages info * @param <type> $packagesList */ public static function savePackagesInfo($packagesList) { $adb = PearDatabase::getInstance(); $packagesListFromDB = Users_CRMSetup::getPackagesList(); $disabledModulesList = array(); foreach ($packagesListFromDB as $packageName => $packageInfo) { if (!$packagesList[$packageName]) { $disabledModulesList = array_merge($disabledModulesList, array_keys($packageInfo['modules'])); } } if ($disabledModulesList) { $updateQuery = 'UPDATE vtiger_tab SET presence = CASE WHEN name IN (' . generateQuestionMarks($disabledModulesList) . ') THEN 1 '; $updateQuery .= 'ELSE 0 END WHERE presence != 2 '; } else { $updateQuery = 'UPDATE vtiger_tab SET presence = 0 WHERE presence != 2'; } $adb->pquery($updateQuery, $disabledModulesList); }