function Delete($ID) { global $DB; $ID = IntVal($ID); if ($ID <= 0) { return False; } $db_events = GetModuleEvents("sale", "OnBeforeUserAccountDelete"); while ($arEvent = $db_events->Fetch()) { if (ExecuteModuleEventEx($arEvent, array($ID)) === false) { return false; } } $arOldUserAccount = CSaleUserAccount::GetByID($ID); $dbTrans = CSaleUserTransact::GetList(array(), array("USER_ID" => $arOldUserAccount["USER_ID"], "CURRENCY" => $arOldUserAccount["CURRENCY"]), false, false, array("ID", "USER_ID")); while ($arTrans = $dbTrans->Fetch()) { CSaleUserTransact::Delete($arTrans["ID"]); } unset($GLOBALS["SALE_USER_ACCOUNT"]["SALE_USER_ACCOUNT_CACHE_" . $ID]); unset($GLOBALS["SALE_USER_ACCOUNT"]["SALE_USER_ACCOUNT_CACHE1_" . $arOldUserAccount["USER_ID"] . "_" . $arOldUserAccount["CURRENCY"]]); $res = $DB->Query("DELETE FROM b_sale_user_account WHERE ID = " . $ID . " ", true); $dbEvents = GetModuleEvents("sale", "OnAfterUserAccountDelete"); while ($arEvent = $dbEvents->Fetch()) { ExecuteModuleEventEx($arEvent, array($ID)); } return $res; }
function Delete($ID) { global $DB; $ID = IntVal($ID); if ($ID <= 0) { return False; } $arOldUserAccount = CSaleUserAccount::GetByID($ID); $dbTrans = CSaleUserTransact::GetList(array(), array("USER_ID" => $arOldUserAccount["USER_ID"], "CURRENCY" => $arOldUserAccount["CURRENCY"]), false, false, array("ID", "USER_ID")); while ($arTrans = $dbTrans->Fetch()) { CSaleUserTransact::Delete($arTrans["ID"]); } unset($GLOBALS["SALE_USER_ACCOUNT"]["SALE_USER_ACCOUNT_CACHE_" . $ID]); unset($GLOBALS["SALE_USER_ACCOUNT"]["SALE_USER_ACCOUNT_CACHE1_" . $arOldUserAccount["USER_ID"] . "_" . $arOldUserAccount["CURRENCY"]]); return $DB->Query("DELETE FROM b_sale_user_account WHERE ID = " . $ID . " ", true); }