function process(Vtiger_Request $request) { $username = $request->get('username'); $password = $request->get('password'); $user = CRMEntity::getInstance('Users'); $user->column_fields['user_name'] = $username; if ($user->doLogin($password)) { $userid = $user->retrieve_user_id($username); Vtiger_Session::set('AUTHUSERID', $userid); // For Backward compatability // TODO Remove when switch-to-old look is not needed $_SESSION['authenticated_user_id'] = $userid; $_SESSION['app_unique_key'] = vglobal('application_unique_key'); $_SESSION['authenticated_user_language'] = vglobal('default_language'); //Enabled session variable for KCFINDER $_SESSION['KCFINDER'] = array(); $_SESSION['KCFINDER']['disabled'] = false; $_SESSION['KCFINDER']['uploadURL'] = "test/upload"; $_SESSION['KCFINDER']['uploadDir'] = "test/upload"; $deniedExts = implode(" ", vglobal('upload_badext')); $_SESSION['KCFINDER']['deniedExts'] = $deniedExts; // End //Track the login History $moduleModel = Users_Module_Model::getInstance('Users'); $moduleModel->saveLoginHistory($user->column_fields['user_name']); //End header('Location: index.php?module=Users&parent=Settings&view=SystemSetup'); exit; } else { header('Location: index.php?module=Users&parent=Settings&view=Login&error=1'); exit; } }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $userName = $request->get('user_name'); $viewer = $this->getViewer($request); $userModel = Users_Record_Model::getCurrentUserModel(); $userModuleModel = Users_Module_Model::getInstance($moduleName); $userSetupStatus = $userModel->isFirstTimeLogin($userModel->id); if($userSetupStatus) { $isFirstUser = Users_CRMSetup::isFirstUser($userModel); if($isFirstUser) { $defaultCurrencyKey = 'USA, Dollars'; $currencies = $userModuleModel->getCurrenciesList(); $defaultCurrencyValue = $currencies[$defaultCurrencyKey]; unset($currencies[$defaultCurrencyKey]); $defaultcurrency[$defaultCurrencyKey] = $defaultCurrencyValue; $currenciesList = array_merge($defaultcurrency, $currencies); $viewer->assign('IS_FIRST_USER', $isFirstUser); $viewer->assign('CURRENCIES', $currenciesList); } $viewer->assign('CURRENT_USER_MODEL',$userModel); $viewer->assign('MODULE', $moduleName); $viewer->assign('USER_NAME', $userName); $viewer->assign('TIME_ZONES', $userModuleModel->getTimeZonesList()); $viewer->assign('LANGUAGES', $userModuleModel->getLanguagesList()); $viewer->assign('USER_ID', $request->get('record')); $viewer->view('UserSetup.tpl', $moduleName); } else { header("Location: index.php"); } }
public function process(Vtiger_Request $request) { $viewer = $this->getViewer($request); $ftpSettings = Settings_BackUp_Module_Model::getFTPSettings(); if ($ftpSettings != false) { $viewer->assign('FTP_HOST', $ftpSettings[1]); $viewer->assign('FTP_LOGIN', $ftpSettings[2]); $password = Settings_BackUp_Module_Model::encrypt_decrypt('decrypt', $ftpSettings[3]); $viewer->assign('FTP_PASSWORD', $password); $viewer->assign('FTP_CONNECTION_STATUS', $ftpSettings[4]); $viewer->assign('FTP_PORT', $ftpSettings[5]); $viewer->assign('FTP_ACTIVE', $ftpSettings[6]); $viewer->assign('FTP_PATH', $ftpSettings[7]); } $adminUsers = Users_Module_Model::getAdminUsers(); $backUpInfo = Settings_BackUp_Module_Model::getBackUpInfo(); $moduleName = $request->getModule(); $qualifiedModuleName = $request->getModule(false); $pagination = Settings_BackUp_Pagination_Action::process($request); $pagination = json_decode($pagination, true); $viewer->assign('PREV_PAGE', $pagination['prevPage']); $viewer->assign('NEXT_PAGE', $pagination['nextPage']); $viewer->assign('OFFSET', $pagination['offset']); $viewer->assign('ALL_PAGES', $pagination['allPages']); $viewer->assign('PAGE', $pagination['page']); $viewer->assign('MODULE', $moduleName); $viewer->assign('BACKUP_EXIST', $backUpInfo['status']); $viewer->assign('BACKUPS', $pagination['backups']); $viewer->assign('QUALIFIED_MODULE_NAME', $qualifiedModuleName); $viewer->assign('ADMIN_USERS', $adminUsers); $viewer->view('Index.tpl', $qualifiedModuleName); }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $packages = $request->get(packages); $userModuleModel = Users_Module_Model::getInstance($moduleName); $userModuleModel::savePackagesInfo($packages); header ('Location: index.php?module=Users&parent=Settings&view=UserSetup'); exit(); }
function process(Vtiger_Request $request) { $username = $request->get('username'); $password = $request->get('password'); if ($request->get('mode') == 'install') { error_reporting(0); $dirPath = 'install'; foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dirPath, FilesystemIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST) as $path) { $path->isDir() ? rmdir($path->getPathname()) : unlink($path->getPathname()); } rmdir($dirPath); } $checkBlocked = Settings_BruteForce_Module_Model::checkBlocked(); $bruteForceSettings = Settings_BruteForce_Module_Model::getBruteForceSettings(); if ($checkBlocked && $bruteForceSettings['active']) { Settings_BruteForce_Module_Model::sendNotificationEmail(); header('Location: index.php?module=Users&parent=Settings&view=Login&error=2'); exit; } $user = CRMEntity::getInstance('Users'); $user->column_fields['user_name'] = $username; $moduleModel = Users_Module_Model::getInstance('Users'); if ($user->doLogin($password)) { if (vglobal('session_regenerate_id')) { session_regenerate_id(true); } // to overcome session id reuse. $userid = $user->retrieve_user_id($username); Vtiger_Session::set('AUTHUSERID', $userid); // For Backward compatability // TODO Remove when switch-to-old look is not needed $_SESSION['authenticated_user_id'] = $userid; $_SESSION['app_unique_key'] = vglobal('application_unique_key'); $_SESSION['authenticated_user_language'] = vglobal('default_language'); $_SESSION['user_name'] = $username; $_SESSION['full_user_name'] = Vtiger_Functions::getUserRecordLabel($userid); //Enabled session variable for KCFINDER $_SESSION['KCFINDER'] = array(); $_SESSION['KCFINDER']['disabled'] = false; $_SESSION['KCFINDER']['uploadURL'] = "cache/upload"; $_SESSION['KCFINDER']['uploadDir'] = "../../cache/upload"; $deniedExts = implode(" ", vglobal('upload_badext')); $_SESSION['KCFINDER']['deniedExts'] = $deniedExts; // End //Track the login History $moduleModel->saveLoginHistory($user->column_fields['user_name']); //End header('Location: index.php'); exit; } else { //Track the login History $browser = Settings_BruteForce_Module_Model::browserDetect(); $moduleModel->saveLoginHistory($username, 'Failed login', $browser); header('Location: index.php?module=Users&parent=Settings&view=Login&error=1'); exit; } }
function process(Vtiger_Request $request) { Vtiger_Session::destroy(); //Track the logout History $moduleName = $request->getModule(); $moduleModel = Users_Module_Model::getInstance($moduleName); $moduleModel->saveLogoutHistory(); //End header('Location: index.php'); }
public function userExists(Vtiger_Request $request) { $module = $request->getModule(); $userName = $request->get('user_name'); $userModuleModel = Users_Module_Model::getCleanInstance($module); $status = $userModuleModel->checkDuplicateUser($userName); $response = new Vtiger_Response(); $response->setResult($status); $response->emit(); }
function process(Vtiger_Request $request) { session_regenerate_id(true); // to overcome session id reuse. Vtiger_Session::destroy(); //Track the logout History $moduleName = $request->getModule(); $moduleModel = Users_Module_Model::getInstance($moduleName); $moduleModel->saveLogoutHistory(); //End header('Location: index.php'); }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $packages = $request->get(packages); $userModuleModel = Users_Module_Model::getInstance($moduleName); $userModuleModel::savePackagesInfo($packages); //SalesPlatform.ru begin create_tab_data_file(); create_parenttab_data_file(); //SalesPlatform.ru end header('Location: index.php?module=Users&parent=Settings&view=UserSetup'); exit; }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $userId = vtws_getWebserviceEntityId($moduleName, $request->get('userid')); $transformUserId = vtws_getWebserviceEntityId($moduleName, $request->get('transfer_user_id')); $userModel = Users_Record_Model::getCurrentUserModel(); $userModuleModel = Users_Module_Model::getInstance($moduleName); $result = vtws_deleteUser($userId, $transformUserId, $userModel); $listViewUrl = $userModuleModel->getListViewUrl(); $response = new Vtiger_Response(); $response->setResult(array('message' => vtranslate('LBL_USER_DELETED_SUCCESSFULLY', $moduleName), 'listViewUrl' => $listViewUrl)); $response->emit(); }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $qualifiedModuleName = $request->getModule(false); $settingsModel = Settings_Users_Module_Model::getInstance(); $usersModel = Users_Module_Model::getInstance($moduleName); $notAdminUsers = $usersModel::getNotAdminUsers(); $viewer = $this->getViewer($request); $viewer->assign('NOT_ADMIN_USERS', $notAdminUsers); $viewer->assign('MODULE_MODEL', $settingsModel); $viewer->assign('QUALIFIED_MODULE', $qualifiedModuleName); $viewer->assign('MODULE', $moduleName); $viewer->view('Auth.tpl', $qualifiedModuleName); }
function process(Vtiger_Request $request) { vimport('~include/events/include.inc'); $db = PearDatabase::getInstance(); $em = new VTEventsManager($db); $em->initTriggerCache(); $em->triggerEvent('user.logout.before', []); Vtiger_Session::regenerateId(true); // to overcome session id reuse. Vtiger_Session::destroy(); //Track the logout History $moduleName = $request->getModule(); $moduleModel = Users_Module_Model::getInstance($moduleName); $moduleModel->saveLogoutHistory(); //End header('Location: index.php'); }
public function process(Vtiger_Request $request) { $searchValue = $request->get('search_value'); $searchModule = $request->get('search_module'); $parentRecordId = $request->get('parent_id'); $parentModuleName = $request->get('parent_module'); $searchModuleModel = Users_Module_Model::getInstance($searchModule); $records = $searchModuleModel->searchRecord($searchValue, $parentRecordId, $parentModuleName); $result = array(); foreach ($records as $moduleName => $recordModels) { foreach ($recordModels as $recordModel) { $result[] = array('label' => decode_html($recordModel->getName()), 'value' => decode_html($recordModel->getName()), 'id' => $recordModel->getId()); } } $response = new Vtiger_Response(); $response->setResult($result); $response->emit(); }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $users = Users_Module_Model::getSwitchUsers(); $userId = $request->get('id'); $baseUserId = $userId; if (Vtiger_Session::has('baseUserId') && Vtiger_Session::get('baseUserId') != '') { $baseUserId = Vtiger_Session::get('baseUserId'); } unset($users[$baseUserId]); unset($users[$userId]); $viewer = $this->getViewer($request); $viewer->assign('SWITCH_USERS', $users); $viewer->assign('MODULE_NAME', $moduleName); $viewer->assign('BASE_USER_ID', $baseUserId); $this->preProcess($request); $viewer->view('SwitchUsers.tpl', $moduleName); $this->postProcess($request); }
public function process(Vtiger_Request $request) { $viewer = $this->getViewer($request); $backupModel = Settings_BackUp_Module_Model::getCleanInstance(); $ftpSettings = $backupModel->getFTPSettings(); if ($ftpSettings != false) { $viewer->assign('FTP_HOST', $ftpSettings['host']); $viewer->assign('FTP_LOGIN', $ftpSettings['login']); $password = $backupModel->encrypt_decrypt('decrypt', $ftpSettings['password']); $viewer->assign('FTP_PASSWORD', $password); $viewer->assign('FTP_CONNECTION_STATUS', $ftpSettings['status']); $viewer->assign('FTP_PORT', $ftpSettings['port']); $viewer->assign('FTP_ACTIVE', $ftpSettings['active']); $viewer->assign('FTP_PATH', $ftpSettings['path']); } $dirsFromConfig = $backupModel->getConfig('folder'); $mainConfig = $backupModel->getConfig('main'); $usersForNotifications = $backupModel->getUsersForNotifications(); $adminUsers = Users_Module_Model::getAdminUsers(); $backUpInfo = $backupModel->getBackUpInfo(); $moduleName = $request->getModule(); $qualifiedModuleName = $request->getModule(false); $pagination = Settings_BackUp_Pagination_Action::process($request); $pagination = json_decode($pagination, true); $viewer->assign('BACKUP_MODEL', $backupModel); $viewer->assign('BACKUP_INFO', $backupModel->getBackupInfo()); $viewer->assign('DIRSFROMCONFIG', $dirsFromConfig); $viewer->assign('MAIN_CONFIG', $mainConfig); $viewer->assign('USERFORNOTIFICATIONS', $usersForNotifications); $viewer->assign('PREV_PAGE', $pagination['prevPage']); $viewer->assign('NEXT_PAGE', $pagination['nextPage']); $viewer->assign('OFFSET', $pagination['offset']); $viewer->assign('ALL_PAGES', $pagination['allPages']); $viewer->assign('PAGE', $pagination['page']); $viewer->assign('MODULE', $moduleName); $viewer->assign('BACKUP_EXIST', $backUpInfo['status']); $viewer->assign('BACKUPS', $pagination['backups']); $viewer->assign('QUALIFIED_MODULE_NAME', $qualifiedModuleName); $viewer->assign('ADMIN_USERS', $adminUsers); $viewer->view('Index.tpl', $qualifiedModuleName); }
public function process(Vtiger_Request $request) { $moduleName = $request->getModule(); $userModuleModel = Users_Module_Model::getInstance($moduleName); $userRecordModel = Users_Record_Model::getCurrentUserModel(); //Handling the user preferences $userRecordModel->set('mode', 'edit'); $userRecordModel->set('language', $request->get('lang_name')); $userRecordModel->set('time_zone', $request->get('time_zone')); $userRecordModel->set('date_format', $request->get('date_format')); $userRecordModel->save(); //End //Handling the System Setup $currencyName = $request->get('currency_name'); if (!empty($currencyName)) { $userModuleModel->updateBaseCurrency($currencyName); } $userModuleModel->insertEntryIntoCRMSetup($userRecordModel->getId()); //End header("Location: index.php"); //End }
/** * Function to get the list of Header Links * @return <Array> - List of Vtiger_Link_Model instances */ public function getHeaderLinks(Vtiger_Request $request) { $userModel = Users_Record_Model::getCurrentUserModel(); $headerLinks = []; if ($userModel->isAdminUser()) { if ($request->get('parent') != 'Settings') { $headerLinks[] = ['linktype' => 'HEADERLINK', 'linklabel' => 'LBL_SYSTEM_SETTINGS', 'linkurl' => 'index.php?module=Vtiger&parent=Settings&view=Index', 'glyphicon' => 'glyphicon glyphicon-cog']; } else { $headerLinks[] = ['linktype' => 'HEADERLINK', 'linklabel' => 'LBL_USER_PANEL', 'linkurl' => 'index.php', 'glyphicon' => 'glyphicon glyphicon-user']; } } //TODO To remove in the future if (AppConfig::security('SHOW_MY_PREFERENCES')) { $headerLinks[] = ['linktype' => 'HEADERLINK', 'linklabel' => 'LBL_MY_PREFERENCES', 'linkurl' => $userModel->getPreferenceDetailViewUrl(), 'glyphicon' => 'glyphicon glyphicon-tasks']; } $headerLinks[] = ['linktype' => 'HEADERLINK', 'linklabel' => 'LBL_SIGN_OUT', 'linkurl' => 'index.php?module=Users&parent=Settings&action=Logout', 'glyphicon' => 'glyphicon glyphicon-off']; if (Users_Module_Model::getSwitchUsers()) { $headerLinks[] = ['linktype' => 'HEADERLINK', 'linklabel' => 'SwitchUsers', 'linkurl' => '', 'glyphicon' => 'glyphicon glyphicon-transfer', 'nocaret' => true, 'linkdata' => ['url' => $userModel->getSwitchUsersUrl()], 'linkclass' => 'showModal']; } $headerLinkInstances = []; foreach ($headerLinks as $headerLink) { $headerLinkInstance = Vtiger_Link_Model::getInstanceFromValues($headerLink); if (isset($headerLink['childlinks'])) { foreach ($headerLink['childlinks'] as $childLink) { $headerLinkInstance->addChildLink(Vtiger_Link_Model::getInstanceFromValues($childLink)); } } $headerLinkInstances[] = $headerLinkInstance; } $headerLinks = Vtiger_Link_Model::getAllByType(Vtiger_Link::IGNORE_MODULE, ['HEADERLINK']); foreach ($headerLinks as $headerType => $headerLinks) { foreach ($headerLinks as $headerLink) { $headerLinkInstances[] = Vtiger_Link_Model::getInstanceFromLinkObject($headerLink); } } return $headerLinkInstances; }
function createFiles(Vtiger_Field $entityField) { $targetpath = 'modules/' . $this->name; if (!is_file($targetpath)) { mkdir($targetpath); $templatepath = 'vtlib/ModuleDir/BaseModule'; $moduleFileContents = file_get_contents($templatepath . '/ModuleName.php'); $replacevars = array('ModuleName' => $this->name, '<modulename>' => strtolower($this->name), '<entityfieldlabel>' => $entityField->label, '<entitycolumn>' => $entityField->column, '<entityfieldname>' => $entityField->name); foreach ($replacevars as $key => $value) { $moduleFileContents = str_replace($key, $value, $moduleFileContents); } file_put_contents($targetpath . '/' . $this->name . '.php', $moduleFileContents); $languageFileContents = file_get_contents($templatepath . '/languages/en_us/ModuleName.php'); $replacevars = array('<ModuleName>' => $this->name, '<ModuleLabel>' => $this->label, '<entityfieldlabel>' => $entityField->label, '<entityfieldname>' => $entityField->name); foreach ($replacevars as $key => $value) { $languageFileContents = str_replace($key, $value, $languageFileContents); } file_put_contents('languages/en_us/' . $this->name . '.php', $languageFileContents); $languages = Users_Module_Model::getLanguagesList(); foreach ($languages as $key => $language) { file_put_contents('languages/' . $key . '/' . $this->name . '.php', $languageFileContents); } } }
/** * Function to save user fields in vtiger_profile2field table * We need user field values to generating the Email Templates variable valuues. * @param type $profileId */ public function saveUserAccessbleFieldsIntoProfile2Field() { $profileId = $this->getId(); if (!empty($profileId)) { $db = PearDatabase::getInstance(); $userRecordModel = Users_Record_Model::getCurrentUserModel(); $module = $userRecordModel->getModuleName(); $tabId = getTabid($module); $userModuleModel = Users_Module_Model::getInstance($module); $moduleFields = $userModuleModel->getFields(); $userAccessbleFields = array(); $skipFields = array(98, 115, 116, 31, 32); foreach ($moduleFields as $fieldName => $fieldModel) { if ($fieldModel->getFieldDataType() == 'string' || $fieldModel->getFieldDataType() == 'email' || $fieldModel->getFieldDataType() == 'phone') { if (!in_array($fieldModel->get('uitype'), $skipFields) && $fieldName != 'asterisk_extension') { $userAccessbleFields[$fieldModel->get('id')] .= $fieldName; } } } //Added user fields into vtiger_profile2field and vtiger_def_org_field //We are using this field information in Email Templates. foreach ($userAccessbleFields as $fieldId => $fieldName) { $insertQuery = 'INSERT INTO vtiger_profile2field VALUES(?,?,?,?,?)'; $db->pquery($insertQuery, array($profileId, $tabId, $fieldId, Settings_Profiles_Module_Model::FIELD_ACTIVE, Settings_Profiles_Module_Model::FIELD_READWRITE)); } $sql = 'SELECT fieldid FROM vtiger_def_org_field WHERE tabid = ?'; $result1 = $db->pquery($sql, array($tabId)); $def_org_fields = array(); for ($j = 0; $j < $db->num_rows($result1); $j++) { array_push($def_org_fields, $db->query_result($result1, $j, 'fieldid')); } foreach ($userAccessbleFields as $fieldId => $fieldName) { if (!in_array($fieldId, $def_org_fields)) { $insertQuery = 'INSERT INTO vtiger_def_org_field VALUES(?,?,?,?)'; $db->pquery($insertQuery, array($tabId, $fieldId, 0, 0)); } } } }
public function restoreUser(Vtiger_Request $request) { $moduleName = $request->getModule(); $record = $request->get('userid'); $recordModel = Users_Record_Model::getInstanceById($record, $moduleName); $recordModel->set('status', 'Active'); $recordModel->set('id', $record); $recordModel->set('mode', 'edit'); $recordModel->set('user_hash', $recordModel->getUserHash()); $recordModel->save(); $db = PearDatabase::getInstance(); $db->pquery("UPDATE vtiger_users SET deleted=? WHERE id=?", array(0, $record)); $userModuleModel = Users_Module_Model::getInstance($moduleName); $listViewUrl = $userModuleModel->getListViewUrl(); $response = new Vtiger_Response(); $response->setResult(array('message' => vtranslate('LBL_USER_RESTORED_SUCCESSFULLY', $moduleName), 'listViewUrl' => $listViewUrl)); $response->emit(); }
function createFiles(Vtiger_Field $entityField) { $targetpath = 'modules/' . $this->name; if (!is_file($targetpath)) { $templatepath = 'vtlib/ModuleDir/BaseModule/'; $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::SKIP_DOTS | FilesystemIterator::UNIX_PATHS; $objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($templatepath, $flags), RecursiveIteratorIterator::SELF_FIRST); foreach ($objects as $name => $object) { $targetPath = str_replace($templatepath, '', $name); $targetPath = str_replace('_ModuleName_', $this->name, $targetPath); if (is_dir($name)) { if (!is_dir($targetPath)) { mkdir($targetPath); } } else { $fileContent = file_get_contents($name); $replacevars = ['<ModuleName>' => $this->name, '<ModuleLabel>' => $this->label, '<modulename>' => strtolower($this->name), '<entityfieldlabel>' => $entityField->label, '<entitycolumn>' => $entityField->column, '<entityfieldname>' => $entityField->name, '_ModuleName_' => $this->name]; foreach ($replacevars as $key => $value) { $fileContent = str_replace($key, $value, $fileContent); } file_put_contents($targetPath, $fileContent); } } $languages = Users_Module_Model::getLanguagesList(); $langFile = 'languages/en_us/' . $this->name . '.php'; foreach ($languages as $key => $language) { if ($key != 'en_us') { copy($langFile, 'languages/' . $key . '/' . $this->name . '.php'); } } } }
public function deleteLangFiles() { $languagesList = Users_Module_Model::getLanguagesList(); foreach ($languagesList as $key => $value) { $langPath = "languages/{$key}/Install.php"; if (file_exists($langPath)) { unlink($langPath); } } return true; }
function process(Vtiger_Request $request) { $username = $request->get('username'); $password = $request->get('password'); if ($request->get('mode') == 'install') { $dirPath = 'install'; Users_Module_Model::deleteLangFiles(); $configTemplate = "config/config.template.php"; if (file_exists($configTemplate)) { unlink($configTemplate); } Vtiger_Functions::recurseDelete($dirPath); } $checkBlocked = Settings_BruteForce_Module_Model::checkBlocked(); $bruteForceSettings = Settings_BruteForce_Module_Model::getBruteForceSettings(); if ($checkBlocked && $bruteForceSettings['active']) { Settings_BruteForce_Module_Model::sendNotificationEmail(); header('Location: index.php?module=Users&parent=Settings&view=Login&error=2'); exit; } $user = CRMEntity::getInstance('Users'); $user->column_fields['user_name'] = $username; $moduleModel = Users_Module_Model::getInstance('Users'); if ($user->doLogin($password)) { if (vglobal('session_regenerate_id')) { Vtiger_Session::regenerateId(true); } // to overcome session id reuse. $userid = $user->retrieve_user_id($username); Vtiger_Session::set('AUTHUSERID', $userid); // For Backward compatability // TODO Remove when switch-to-old look is not needed Vtiger_Session::set('authenticated_user_id', $userid); Vtiger_Session::set('app_unique_key', vglobal('application_unique_key')); Vtiger_Session::set('authenticated_user_language', vglobal('default_language')); Vtiger_Session::set('user_name', $username); Vtiger_Session::set('full_user_name', Vtiger_Functions::getUserRecordLabel($userid)); if ($request->has('language') && vglobal('langInLoginView')) { Vtiger_Session::set('language', $request->get('language')); } if ($request->has('layout')) { Vtiger_Session::set('layout', $request->get('layout')); } //Enabled session variable for KCFINDER $_SESSION['KCFINDER'] = array(); $_SESSION['KCFINDER']['disabled'] = false; $_SESSION['KCFINDER']['uploadURL'] = "cache/upload"; $_SESSION['KCFINDER']['uploadDir'] = "../../cache/upload"; $deniedExts = implode(" ", vglobal('upload_badext')); $_SESSION['KCFINDER']['deniedExts'] = $deniedExts; // End //Track the login History $moduleModel->saveLoginHistory($user->column_fields['user_name']); //End if (isset($_SESSION['return_params'])) { $return_params = urldecode($_SESSION['return_params']); header("Location: index.php?{$return_params}"); exit; } else { header('Location: index.php'); exit; } } else { //Track the login History $browser = Settings_BruteForce_Module_Model::browserDetect(); $moduleModel->saveLoginHistory($username, 'Failed login', $browser); header('Location: index.php?module=Users&parent=Settings&view=Login&error=1'); exit; } }