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]);
 }