示例#1
0
 /**
  * Elimina los datos de una cuenta en la BBDD.
  *
  * @return bool
  */
 public function deleteAccount()
 {
     // Guardamos una copia de la cuenta en el histórico
     AccountHistory::addHistory($this->getAccountId(), true) || die(_('ERROR: Error en la operación.'));
     $accountInfo = array('account_name,customer_name');
     $this->getAccountInfoById($accountInfo);
     $Log = new Log(_('Eliminar Cuenta'));
     $Log->addDescription(Html::strongText(_('Cliente') . ': ') . $this->_cacheParams['customer_name']);
     $Log->addDescription(Html::strongText(_('Cuenta') . ': ') . $this->_cacheParams['account_name'] . " (" . $this->getAccountId() . ")");
     $query = 'DELETE FROM accounts WHERE account_id = :id LIMIT 1';
     $data['id'] = $this->getAccountId();
     if (DB::getQuery($query, __FUNCTION__, $data) === false) {
         return false;
     }
     if (!Groups::deleteGroupsForAccount($this->getAccountId())) {
         $Log->addDescription(_('Error al eliminar grupos asociados a la cuenta'));
     }
     if (!UserAccounts::deleteUsersForAccount($this->getAccountId())) {
         $Log->addDescription(_('Error al eliminar usuarios asociados a la cuenta'));
     }
     if (!Files::deleteAccountFiles($this->getAccountId())) {
         $Log->addDescription(_('Error al eliminar archivos asociados a la cuenta'));
     }
     $Log->writeLog();
     Email::sendEmail($Log);
     return true;
 }