Loc::loadMessages(__FILE__);
require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/iblock/classes/general/subelement.php';
$adminListTableID = 'tbl_sale_sub_coupons_' . md5($discountID);
$hideFields = array('DISCOUNT_ID');
$adminSort = new CAdminSubSorting($adminListTableID, 'ID', 'ASC', 'by', 'order', $couponsAjaxPath);
$adminList = new CAdminSubList($adminListTableID, $adminSort, $couponsAjaxPath, $hideFields);
unset($hideFields);
if (!isset($by)) {
    $by = 'ID';
}
if (!isset($order)) {
    $order = 'ASC';
}
$filter = array('=DISCOUNT_ID' => $discountID);
$filterFields = array('find_discount_id');
$adminList->InitFilter($filterFields);
if (!$couponsReadOnly && $adminList->EditAction()) {
    if (isset($FIELDS) && is_array($FIELDS)) {
        $conn = Application::getConnection();
        Internals\DiscountCouponTable::disableCheckCouponsUse();
        foreach ($FIELDS as $couponID => $fields) {
            $couponID = (int) $couponID;
            if ($couponID <= 0 || !$adminList->IsUpdated($couponID)) {
                continue;
            }
            unset($fields['DISCOUNT_ID']);
            $conn->startTransaction();
            $result = Internals\DiscountCouponTable::prepareCouponData($fields);
            if ($result->isSuccess()) {
                $result = Internals\DiscountCouponTable::update($couponID, $fields);
            }
Beispiel #2
0
require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/iblock/classes/general/subelement.php';
$dbrFProps = CIBlockProperty::GetList(array("SORT" => "ASC", "NAME" => "ASC"), array("IBLOCK_ID" => $intSubIBlockID, "ACTIVE" => "Y", "CHECK_PERMISSIONS" => "N"));
$arProps = array();
while ($arProp = $dbrFProps->GetNext()) {
    $arProp["PROPERTY_USER_TYPE"] = 0 < strlen($arProp["USER_TYPE"]) ? CIBlockProperty::GetUserType($arProp["USER_TYPE"]) : array();
    $arProps[] = $arProp;
}
$sTableID = "tbl_iblock_sub_element_" . md5($strSubIBlockType . "." . $intSubIBlockID);
$arHideFields = array('PROPERTY_' . $arCatalog['SKU_PROPERTY_ID']);
$lAdmin = new CAdminSubList($sTableID, false, $strSubElementAjaxPath, $arHideFields);
// only sku property filter
$arFilterFields = array("find_el_property_" . $arCatalog['SKU_PROPERTY_ID']);
$find_section_section = -1;
//We have to handle current section in a special way
$section_id = intval($find_section_section);
$lAdmin->InitFilter($arFilterFields);
$find_section_section = $section_id;
//This is all parameters needed for proper navigation
//$sThisSectionUrl = '&type='.urlencode($strSubIBlockType).'&lang='.LANG.'&IBLOCK_ID='.$intSubIBlockID.'&find_section_section='.intval($find_section_section);
$sThisSectionUrl = '';
// simple filter
$arFilter = array("IBLOCK_ID" => $intSubIBlockID);
if (0 < $intSubPropValue) {
    $arFilter["=PROPERTY_" . $arSubCatalog['SKU_PROPERTY_ID']] = $intSubPropValue;
} else {
    $arFilter["=PROPERTY_" . $arSubCatalog['SKU_PROPERTY_ID']] = $intSubPropValue;
}
$arFilter["CHECK_PERMISSIONS"] = "Y";
$arFilter["MIN_PERMISSION"] = "R";
if (true == defined('B_ADMIN_SUBELEMENTS_LIST') && true == B_ADMIN_SUBELEMENTS_LIST) {
    if ($lAdmin->EditAction()) {