public function DeleteByLogin($login) { if (!$login) { throw new \Exception("Unexpected login", 1); } else { $user = \CUser::GetByLogin($login)->Fetch(); $subscriber = \CSubscription::GetByEmail($user["EMAIL"])->Fetch(); \CSubscription::Delete($subscriber["ID"]); return True; } }
/** * [unsubscribeUser description] * @param array $arParams * @return bool */ function unsubscribeUser($arParams){ CModule::IncludeModule("subscribe"); $subscr = CSubscription::GetList( array("ID"=>"ASC"), array("CONFIRMED"=>"Y", "ACTIVE"=>"Y", "ID" => $arParams["ID"]) ); if ($arSubUser = $subscr->Fetch()): if ($arParams["CONFIRM_CODE"] == $arSubUser["CONFIRM_CODE"]): if (CSubscription::Delete($arSubUser["ID"])): return true; endif; endif; endif; return false; }
if (is_array($arSubscription)) { $rsRubrics = CSubscription::GetRubricList($arSubscription["ID"]); while ($arRubric = $rsRubrics->Fetch()) { if ($arRubric["LID"] != SITE_ID) { $arNewRubrics[$arRubric["ID"]] = $arRubric["ID"]; } else { if ($arParams["SHOW_HIDDEN"] == "N" && $arRubric["VISIBLE"] == "N") { $arNewRubrics[$arRubric["ID"]] = $arRubric["ID"]; } } } } //No rubrics was checked so delete subscription if (count($arNewRubrics) <= 0) { if (is_array($arSubscription)) { $rs = $obSubscription->Delete($arSubscription["ID"]); if (!$rs) { $arResult["ERRORS"][] = GetMessage("CC_BSS_DELETE_ERROR"); } else { $_SESSION["subscribe.simple.message"] = GetMessage("CC_BSS_UPDATE_SUCCESS"); } } } else { if (is_array($arSubscription)) { $rs = $obSubscription->Update($arSubscription["ID"], array("FORMAT" => $_POST["FORMAT"] !== "html" ? "text" : "html", "RUB_ID" => $arNewRubrics), false); if (!$rs) { $arResult["ERRORS"][] = $obSubscription->LAST_ERROR; } else { $_SESSION["subscribe.simple.message"] = GetMessage("CC_BSS_UPDATE_SUCCESS"); } } else {
$cData = new CSubscription(); $rsData = $cData->GetList(array($by => $order), $arFilter); while ($arRes = $rsData->Fetch()) { $arID[] = $arRes['ID']; } } foreach ($arID as $ID) { if (strlen($ID) <= 0) { continue; } $ID = IntVal($ID); switch ($_REQUEST['action']) { case "delete": @set_time_limit(0); $DB->StartTransaction(); if (!CSubscription::Delete($ID)) { $DB->Rollback(); $lAdmin->AddGroupError(GetMessage("subscr_del_err"), $ID); } $DB->Commit(); break; case "activate": case "deactivate": $ob = new CSubscription(); $arFields = array("ACTIVE" => $_REQUEST['action'] == "activate" ? "Y" : "N"); if (!$ob->Update($ID, $arFields)) { $lAdmin->AddGroupError(GetMessage("subscr_save_error") . $ob->LAST_ERROR, $ID); } break; case "confirm": $ob = new CSubscription();
$arSubscr = array(); $rsData = CPosting::GetEmailsByStatus($ID, $find_status_id); while ($arRes = $rsData->Fetch()) { $arSubscr[$arRes['EMAIL']] = $arRes["SUBSCRIPTION_ID"]; } if ($_REQUEST['action_target'] == 'selected') { $arEMAIL = array_keys($arSubscr); } foreach ($arEMAIL as $EMAIL) { $SUBSCR_ID = IntVal($arSubscr[$EMAIL]); if ($SUBSCR_ID <= 0) { continue; } switch ($_REQUEST['action']) { case "sudelete": CSubscription::Delete($SUBSCR_ID); break; case "inactive": $oSubscription = new CSubscription(); $oSubscription->Update($SUBSCR_ID, array("ACTIVE" => "N")); break; } } } $lAdmin->AddHeaders(array(array("id" => "EMAIL", "content" => GetMessage("POST_EMAIL"), "default" => true), array("id" => "SUBSCRIPTION_ID", "content" => GetMessage("POST_SUBSCRIPTION_ID"), "default" => true, "align" => "right"), array("id" => "USER_ID", "content" => GetMessage("POST_USER_ID"), "default" => true, "align" => "right"))); $cData = new CPosting(); $rsData = $cData->GetEmailsByStatus($ID, $find_status_id); $rsData = new CAdminResult($rsData, $sTableID); $rsData->NavStart(); $lAdmin->NavText($rsData->GetNavPrint("")); while ($arRes = $rsData->NavNext(true, "f_")) {