while ($subscription = $subscriptionDb->fetch()) { $arExistedSubscription[] = $subscription['EXISTED_MAILING_ID']; } // send if it have new subscriptions only if (count(array_diff($mailingIdList, $arExistedSubscription)) <= 0) { $sendEmailToSubscriber = false; } } else { // do not send if no selected mailings and subscriber existed $contactDb = \Bitrix\Sender\ContactTable::getList(array('filter' => array('=EMAIL' => strtolower($_POST["SENDER_SUBSCRIBE_EMAIL"])))); if ($contact = $contactDb->fetch()) { $sendEmailToSubscriber = false; } } if ($sendEmailToSubscriber) { \Bitrix\Sender\Subscription::sendEventConfirm($_POST["SENDER_SUBSCRIBE_EMAIL"], $mailingIdList, SITE_ID); $APPLICATION->set_cookie("SENDER_SUBSCR_EMAIL", $_POST["SENDER_SUBSCRIBE_EMAIL"], $cookieLifeTime); $arResult['MESSAGE'] = array('TYPE' => 'NOTE', 'CODE' => 'message_confirm'); $subscr_EMAIL = $_POST["SENDER_SUBSCRIBE_EMAIL"]; } else { $APPLICATION->set_cookie("SENDER_SUBSCR_EMAIL", $_POST["SENDER_SUBSCRIBE_EMAIL"], $cookieLifeTime); $arResult['MESSAGE'] = array('TYPE' => 'NOTE', 'CODE' => 'message_success'); $subscr_EMAIL = $_POST["SENDER_SUBSCRIBE_EMAIL"]; } } else { \Bitrix\Sender\Subscription::add($_POST["SENDER_SUBSCRIBE_EMAIL"], $mailingIdList, SITE_ID); $APPLICATION->set_cookie("SENDER_SUBSCR_EMAIL", $_POST["SENDER_SUBSCRIBE_EMAIL"], $cookieLifeTime); $arResult['MESSAGE'] = array('TYPE' => 'NOTE', 'CODE' => 'message_success'); $subscr_EMAIL = $_POST["SENDER_SUBSCRIBE_EMAIL"]; unset($_SESSION['SENDER_SUBSCRIBE_LIST']); }