예제 #1
0
 /**
  * @param XmlDomNode $_xmlRes
  * @param Account $_account
  * @param int $_lastId
  * @param int $_currId
  */
 function GetAccountList($_dbStorage, &$_xmlRes, $_account, $_lastId, $_currId = '')
 {
     $_currId = $_currId ? $_currId : $_account->Id;
     if ($_dbStorage->Connect()) {
         $_accounts = null;
         if (USE_DB) {
             $_accounts =& $_dbStorage->SelectAccounts($_account->IdUser);
         } else {
             $_accounts = array($_account->Id => array());
         }
         if (null !== $_accounts) {
             $_acctsNode = new XmlDomNode('accounts');
             $_acctsNode->AppendAttribute('last_id', $_lastId);
             $_acctsNode->AppendAttribute('curr_id', $_currId);
             foreach ($_accounts as $_acct_id => $_acctArray) {
                 $_f_account = Account::LoadFromDb($_acct_id, true, false);
                 CXmlProcessing::GetAccount($_acctsNode, $_f_account, $_dbStorage);
                 unset($_f_account);
             }
             $_xmlRes->XmlRoot->AppendChild($_acctsNode);
         } else {
             CXmlProcessing::PrintErrorAndExit(PROC_CANT_GET_ACCT_LIST, $_xmlRes);
         }
     } else {
         CXmlProcessing::PrintErrorAndExit(getGlobalError(), $_xmlRes);
     }
 }
예제 #2
0
 function DoGetAccount()
 {
     $_dbStorage = $_settings = $_xmlObj = $_xmlRes = $_accountId = null;
     $this->_initFuncArgs($_dbStorage, $_settings, $_xmlObj, $_xmlRes, $_accountId);
     $_acct_id = $_xmlObj->GetParamValueByName('id_acct');
     if (CXmlProcessing::CheckAccountAccess($_acct_id, $_xmlRes)) {
         $_account =& CXmlProcessing::AccountCheckAndLoad($_xmlRes, $_acct_id, true, false);
         CXmlProcessing::GetAccount($_xmlRes->XmlRoot, $_account, $_dbStorage);
     }
 }