function DoDeleteAccount() { $_dbStorage = $_settings = $_xmlObj = $_xmlRes = $_accountId = null; $this->_initFuncArgs($_dbStorage, $_settings, $_xmlObj, $_xmlRes, $_accountId); $_idAcct = (int) $_xmlObj->GetParamValueByName('id_acct'); CXmlProcessing::CheckAccountAccess($_idAcct, $_xmlRes); $_account =& CXmlProcessing::AccountCheckAndLoad($_xmlRes, $_accountId, false, false); $_accountToDelete =& CXmlProcessing::AccountCheckAndLoad($_xmlRes, $_idAcct, false, false); if (!$_accountToDelete->AllowChangeSettings) { CXmlProcessing::PrintErrorAndExit(PROC_CANT_DEL_ACCT_BY_ID, $_xmlRes); } if ($_account->IsDemo || $_accountToDelete->IsDemo || $_accountToDelete->IsInternal) { CXmlProcessing::PrintErrorAndExit(PROC_CANT_DEL_ACCT_BY_ID, $_xmlRes); } $_resp = User::ProcessDeleteAccount($_idAcct, $_null); if ($_resp === false) { CXmlProcessing::PrintErrorAndExit(getGlobalError(), $_xmlRes); } if (isset($_SESSION[ACCOUNT_IDS])) { unset($_SESSION[ACCOUNT_IDS]); } $_dbStorage =& DbStorageCreator::CreateDatabaseStorage($_account); CXmlProcessing::GetAccountList($_dbStorage, $_xmlRes, $_account, -1, $_resp === 7 ? -1 : $_SESSION[ACCOUNT_ID]); }