コード例 #1
0
ファイル: component.php プロジェクト: Satariall/izurit
         }
     }
 }
 //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 {
         $ID = $obSubscription->Add(array("USER_ID" => $USER_ID, "ACTIVE" => "Y", "EMAIL" => $USER->GetEmail(), "FORMAT" => $_POST["FORMAT"] !== "html" ? "text" : "html", "CONFIRMED" => "Y", "SEND_CONFIRM" => "N", "RUB_ID" => $arNewRubrics));
         if (!$ID) {
             $arResult["ERRORS"][] = $obSubscription->LAST_ERROR;
         } else {
             $_SESSION["subscribe.simple.message"] = GetMessage("CC_BSS_UPDATE_SUCCESS");
         }
     }
 }
 if (count($arResult["ERRORS"]) <= 0) {
コード例 #2
0
ファイル: component.php プロジェクト: Satariall/izurit
         if ($ar["VISIBLE"] == "N") {
             $arNewRubrics[] = $ar["ID"];
         }
     }
 } else {
     $arNewRubrics = $_REQUEST["RUB_ID"];
 }
 $arFields = array("USER_ID" => $USER->IsAuthorized() ? $USER->GetID() : false, "FORMAT" => $_REQUEST["FORMAT"] != "html" ? "text" : "html", "EMAIL" => $_REQUEST["EMAIL"], "RUB_ID" => $arNewRubrics);
 if ($_REQUEST["CONFIRM_CODE"] != "" && $ID > 0) {
     $arFields["CONFIRM_CODE"] = $_REQUEST["CONFIRM_CODE"];
 }
 $res = false;
 if ($ID > 0) {
     //allow edit only after authorization
     if (CSubscription::IsAuthorized($ID)) {
         $res = $obSubscription->Update($ID, $arFields);
         if ($res) {
             $iMsg = $obSubscription->LAST_MESSAGE != "" ? $obSubscription->LAST_MESSAGE : "UPD";
         }
     }
 } else {
     //can add without authorization
     $arFields["ACTIVE"] = "Y";
     $ID = $obSubscription->Add($arFields);
     $res = $ID > 0;
     if ($res) {
         $iMsg = "SENT";
         CSubscription::Authorize($ID);
     }
 }
 if ($res) {
コード例 #3
0
ファイル: subscr_admin.php プロジェクト: DarneoStudio/bitrix
                    $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();
                $arFields = array("CONFIRMED" => "Y");
                if (!$ob->Update($ID, $arFields)) {
                    $lAdmin->AddGroupError(GetMessage("subscr_save_error") . $ob->LAST_ERROR, $ID);
                }
                break;
        }
    }
}
$cData = new CSubscription();
$rsData = $cData->GetList(array($by => $order), $arFilter, array("nPageSize" => CAdminResult::GetNavSize($sTableID)));
$rsData = new CAdminResult($rsData, $sTableID);
$rsData->NavStart();
$lAdmin->NavText($rsData->GetNavPrint(GetMessage("subscr_nav")));
$lAdmin->AddHeaders(array(array("id" => "ID", "content" => "ID", "sort" => "id", "align" => "right", "default" => true), array("id" => "DATE_INSERT", "content" => GetMessage("POST_DATE_INSERT"), "sort" => "date_insert", "default" => true), array("id" => "EMAIL", "content" => GetMessage("subscr_addr"), "sort" => "email", "default" => true), array("id" => "USER_ID", "content" => GetMessage("subscr_user"), "sort" => "user", "default" => true), array("id" => "CONFIRMED", "content" => GetMessage("subscr_conf"), "sort" => "conf", "default" => true), array("id" => "ACTIVE", "content" => GetMessage("subscr_act"), "sort" => "act", "default" => true), array("id" => "FORMAT", "content" => GetMessage("subscr_fmt"), "sort" => "fmt", "default" => true), array("id" => "DATE_UPDATE", "content" => GetMessage("subscr_updated"), "sort" => "date_update", "default" => false), array("id" => "DATE_CONFIRM", "content" => GetMessage("subscr_conf_time"), "sort" => "date_confirm", "default" => false), array("id" => "CONFIRM_CODE", "content" => GetMessage("subscr_conf_code"), "sort" => "confirm_code", "default" => false)));
while ($arRes = $rsData->NavNext(true, "f_")) {
    $row =& $lAdmin->AddRow($f_ID, $arRes);
    if ($f_USER_ID > 0) {
コード例 #4
0
        $rubSelect = array("SORT" => "ASC", "NAME" => "ASC");
        $rubFilter = array("ACTIVE" => "Y", "VISIBLE" => "Y", 'NAME' => 'Акции');
        $dbRub = CRubric::GetList($rubSelect, $rubFilter);
        while ($arRubric = $dbRub->GetNext()) {
            echo $rbkIDs[] = $arRubric["ID"];
        }
        $RUB_ID = $rbkIDs;
    }
    $email = $_REQUEST["EMAIL"];
    $ID = $USER->IsAuthorized() ? $USER->GetID() : false;
    //echo "DATACHECK ID=$ID, EMAIL=$email<br/>";
    if ($ID || !empty($email)) {
        //echo "DATA_VALID<br/>";
        if (empty($email)) {
            $email = $USER->GetEmail();
        }
        $subscr = new CSubscription();
        //echo "SEARCH SUBSCRIPTION<br/>";
        $arSFields = array("USER_ID" => $ID, "FORMAT" => "html", "ACTIVE" => "Y", "EMAIL" => $email, "SEND_CONFIRM" => "N", "CONFIRMED" => "Y", "DATE_CONFIRM" => ConvertTimeStamp(time(), "SHORT", "ru"), "RUB_ID" => $RUB_ID, "SEND_CONFIRM" => "N");
        $dbSubscr = CSubscription::GetByEmail($email);
        if ($arSubscr = $dbSubscr->GetNext()) {
            //    echo "FOUND.UPDATE<br/>";
            $result = $subscr->Update($arSubscr["ID"], $arSFields, "#SITE_ID#");
        } else {
            //    echo "NOT FOUND.ADD<br/>";
            $result = $subscr->Add($arSFields, "#SITE_ID#");
            //    echo $subscr->LAST_ERROR;
        }
    }
}
//  LocalRedirect($backUrl);
コード例 #5
0
        $rubSelect = array("SORT" => "ASC", "NAME" => "ASC");
        $rubFilter = array("ACTIVE" => "Y", "VISIBLE" => "Y", 'NAME' => 'Акции');
        $dbRub = CRubric::GetList($rubSelect, $rubFilter);
        while ($arRubric = $dbRub->GetNext()) {
            echo $rbkIDs[] = $arRubric["ID"];
        }
        $RUB_ID = $rbkIDs;
    }
    $email = $_REQUEST["EMAIL"];
    $ID = $USER->IsAuthorized() ? $USER->GetID() : false;
    //echo "DATACHECK ID=$ID, EMAIL=$email<br/>";
    if ($ID || !empty($email)) {
        //echo "DATA_VALID<br/>";
        if (empty($email)) {
            $email = $USER->GetEmail();
        }
        $subscr = new CSubscription();
        //echo "SEARCH SUBSCRIPTION<br/>";
        $arSFields = array("USER_ID" => $ID, "FORMAT" => "html", "ACTIVE" => "Y", "EMAIL" => $email, "SEND_CONFIRM" => "N", "CONFIRMED" => "Y", "DATE_CONFIRM" => ConvertTimeStamp(time(), "SHORT", "ru"), "RUB_ID" => $RUB_ID, "SEND_CONFIRM" => "N");
        $dbSubscr = CSubscription::GetByEmail($email);
        if ($arSubscr = $dbSubscr->GetNext()) {
            //    echo "FOUND.UPDATE<br/>";
            $result = $subscr->Update($arSubscr["ID"], $arSFields, "s1");
        } else {
            //    echo "NOT FOUND.ADD<br/>";
            $result = $subscr->Add($arSFields, "s1");
            //    echo $subscr->LAST_ERROR;
        }
    }
}
//  LocalRedirect($backUrl);
コード例 #6
0
ファイル: subscr_edit.php プロジェクト: DarneoStudio/bitrix
define("HELP_FILE", "add_subscriber.php");
$POST_RIGHT = $APPLICATION->GetGroupRight("subscribe");
if ($POST_RIGHT == "D") {
    $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED"));
}
$aTabs = array(array("DIV" => "edit1", "TAB" => GetMessage("subscr_tab_subscriber"), "ICON" => "main_user_edit", "TITLE" => GetMessage("subscr_tab_subscriber_title")), array("DIV" => "edit2", "TAB" => GetMessage("subscr_tab_subscription"), "ICON" => "main_user_edit", "TITLE" => GetMessage("subscr_tab_subscription_title")));
$tabControl = new CAdminTabControl("tabControl", $aTabs);
$ID = intval($ID);
// Id of the edited record
$strError = "";
$bVarsFromForm = false;
if ($REQUEST_METHOD == "POST" && ($save != "" || $apply != "") && $POST_RIGHT >= "W" && check_bitrix_sessid()) {
    $subscr = new CSubscription();
    $arFields = array("USER_ID" => $ANONYMOUS == "Y" ? false : $USER_ID, "ACTIVE" => $ACTIVE != "Y" ? "N" : "Y", "FORMAT" => $FORMAT != "html" ? "text" : "html", "EMAIL" => $EMAIL, "CONFIRMED" => $CONFIRMED != "Y" ? "N" : "Y", "SEND_CONFIRM" => $SEND_CONFIRM != "Y" ? "N" : "Y", "RUB_ID" => $RUB_ID, "ALL_SITES" => "Y");
    if ($ID > 0) {
        $res = $subscr->Update($ID, $arFields, $SITE_ID);
    } else {
        $ID = $subscr->Add($arFields, $SITE_ID);
        $res = $ID > 0;
    }
    if ($res) {
        if ($apply != "") {
            LocalRedirect("/bitrix/admin/subscr_edit.php?ID=" . $ID . "&mess=ok&lang=" . LANG . "&" . $tabControl->ActiveTabParam());
        } else {
            LocalRedirect("/bitrix/admin/subscr_admin.php?lang=" . LANG);
        }
    } else {
        if ($e = $APPLICATION->GetException()) {
            $message = new CAdminMessage(GetMessage("subs_save_error"), $e);
        }
        $bVarsFromForm = true;
コード例 #7
0
ファイル: subscribe.php プロジェクト: akniyev/arteva.ru
        } else {
            /* определим рубрики активные рубрики подписок */
            $RUB_ID = array();
            $rub = CRubric::GetList(array(), array("ACTIVE" => "Y"));
            while ($rub->ExtractFields("r_")) {
                $RUB_ID = array($r_ID);
            }
            $RUB_ID = array('0' => '2');
            /* создадим массив на подписку */
            $subscr = new CSubscription();
            $arFields = array("USER_ID" => $USER, "FORMAT" => "html/text", "EMAIL" => $EMAIL, "ACTIVE" => "Y", "RUB_ID" => $RUB_ID, "SEND_CONFIRM" => "Y", "CONFIRMED" => "Y");
            if ($idsubrscr = $subscr->Add($arFields)) {
                $result = json_encode(array("result" => true, "value" => "Спасибо, вы подписались на рассылку", "action" => "subscribe"));
            } else {
                $result = json_encode(array("result" => false, "value" => "Данный адрес уже был подписан на рассылку", "action" => "subscribe"));
            }
        }
    } elseif ($_POST["email"] && $_POST["action"] == "remove") {
        $subscription = CSubscription::GetByEmail($_POST["email"]);
        if ($subscription->ExtractFields("str_")) {
            $ID = (int) $str_ID;
        }
        $subscr = new CSubscription();
        if ($subscr->Update($ID, array("ACTIVE" => "N"))) {
            $result = json_encode(array("result" => true, "value" => "Вы отписались на рассылки", "action" => "unsubscribe"));
        } else {
            $result = json_encode(array("result" => false, "value" => "Произошла ошибка. ПОпробуйте позже", "action" => "unsubscribe"));
        }
    }
    echo $result;
}
コード例 #8
0
ファイル: posting_bcc.php プロジェクト: DarneoStudio/bitrix
    }
    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_")) {
    $row =& $lAdmin->AddRow($f_EMAIL, $arRes);
    if ($f_SUBSCRIPTION_ID > 0) {
        $rs = CSubscription::GetByID($f_SUBSCRIPTION_ID);
        $ar = $rs->Fetch();