Your IP : 3.139.108.124
<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
/** @var array $arCurrentValues */
use Bitrix\Main\Loader,
Bitrix\Iblock,
Bitrix\Catalog,
Bitrix\Currency;
if (!Loader::includeModule('iblock'))
return;
$catalogIncluded = Loader::includeModule('catalog');
$usePropertyFeatures = Iblock\Model\PropertyFeature::isEnabledFeatures();
$iblockExists = (!empty($arCurrentValues['IBLOCK_ID']) && (int)$arCurrentValues['IBLOCK_ID'] > 0);
$arIBlockType = CIBlockParameters::GetIBlockTypes();
$offersIblock = array();
if ($catalogIncluded)
{
$iterator = Catalog\CatalogIblockTable::getList(array(
'select' => array('IBLOCK_ID'),
'filter' => array('!=PRODUCT_IBLOCK_ID' => 0)
));
while ($row = $iterator->fetch())
$offersIblock[$row['IBLOCK_ID']] = true;
unset($row, $iterator);
}
$arIBlock = array();
$iblockFilter = (
!empty($arCurrentValues['IBLOCK_TYPE'])
? array('TYPE' => $arCurrentValues['IBLOCK_TYPE'], 'ACTIVE' => 'Y')
: array('ACTIVE' => 'Y')
);
$rsIBlock = CIBlock::GetList(array('SORT' => 'ASC'), $iblockFilter);
while ($arr = $rsIBlock->Fetch())
{
$id = (int)$arr['ID'];
if (isset($offersIblock[$id]))
continue;
$arIBlock[$id] = '['.$id.'] '.$arr['NAME'];
}
unset($id, $arr, $rsIBlock, $iblockFilter);
unset($offersIblock);
$arProperty = array();
$arProperty_LS = array();
$arProperty_N = array();
$arProperty_X = array();
$arProperty_F = array();
if ($iblockExists)
{
$propertyIterator = Iblock\PropertyTable::getList(array(
'select' => array('ID', 'IBLOCK_ID', 'NAME', 'CODE', 'PROPERTY_TYPE', 'MULTIPLE', 'LINK_IBLOCK_ID', 'USER_TYPE', 'SORT'),
'filter' => array('=IBLOCK_ID' => $arCurrentValues['IBLOCK_ID'], '=ACTIVE' => 'Y'),
'order' => array('SORT' => 'ASC', 'NAME' => 'ASC')
));
while ($property = $propertyIterator->fetch())
{
$propertyCode = (string)$property['CODE'];
if ($propertyCode == '')
$propertyCode = $property['ID'];
$propertyName = '['.$propertyCode.'] '.$property['NAME'];
if ($property['PROPERTY_TYPE'] != Iblock\PropertyTable::TYPE_FILE)
{
$arProperty[$propertyCode] = $propertyName;
if ($property['MULTIPLE'] == 'Y')
$arProperty_X[$propertyCode] = $propertyName;
elseif ($property['PROPERTY_TYPE'] == Iblock\PropertyTable::TYPE_LIST)
$arProperty_X[$propertyCode] = $propertyName;
elseif ($property['PROPERTY_TYPE'] == Iblock\PropertyTable::TYPE_ELEMENT && (int)$property['LINK_IBLOCK_ID'] > 0)
$arProperty_X[$propertyCode] = $propertyName;
}
else
{
if ($property['MULTIPLE'] == 'N')
$arProperty_F[$propertyCode] = $propertyName;
}
if ($property['PROPERTY_TYPE'] == Iblock\PropertyTable::TYPE_LIST || $property['PROPERTY_TYPE'] == Iblock\PropertyTable::TYPE_STRING)
$arProperty_LS[$propertyCode] = $propertyName;
if ($property['PROPERTY_TYPE'] == Iblock\PropertyTable::TYPE_NUMBER)
$arProperty_N[$propertyCode] = $propertyName;
}
unset($propertyCode, $propertyName, $property, $propertyIterator);
}
$offers = false;
$arProperty_Offers = array();
$arProperty_OffersWithoutFile = array();
if ($catalogIncluded && $iblockExists)
{
$offers = CCatalogSku::GetInfoByProductIBlock($arCurrentValues['IBLOCK_ID']);
if (!empty($offers))
{
$propertyIterator = Iblock\PropertyTable::getList(array(
'select' => array('ID', 'IBLOCK_ID', 'NAME', 'CODE', 'PROPERTY_TYPE', 'MULTIPLE', 'LINK_IBLOCK_ID', 'USER_TYPE', 'SORT'),
'filter' => array('=IBLOCK_ID' => $offers['IBLOCK_ID'], '=ACTIVE' => 'Y', '!=ID' => $offers['SKU_PROPERTY_ID']),
'order' => array('SORT' => 'ASC', 'NAME' => 'ASC')
));
while ($property = $propertyIterator->fetch())
{
$propertyCode = (string)$property['CODE'];
if ($propertyCode == '')
$propertyCode = $property['ID'];
$propertyName = '['.$propertyCode.'] '.$property['NAME'];
$arProperty_Offers[$propertyCode] = $propertyName;
if ($property['PROPERTY_TYPE'] != Iblock\PropertyTable::TYPE_FILE)
$arProperty_OffersWithoutFile[$propertyCode] = $propertyName;
}
unset($propertyCode, $propertyName, $property, $propertyIterator);
}
}
$arSort = CIBlockParameters::GetElementSortFields(
array('SHOWS', 'SORT', 'TIMESTAMP_X', 'NAME', 'ID', 'ACTIVE_FROM', 'ACTIVE_TO'),
array('KEY_LOWERCASE' => 'Y')
);
$arPrice = array();
if ($catalogIncluded)
{
$arSort = array_merge($arSort, CCatalogIBlockParameters::GetCatalogSortFields());
if (isset($arSort['CATALOG_AVAILABLE']))
unset($arSort['CATALOG_AVAILABLE']);
$arPrice = CCatalogIBlockParameters::getPriceTypesList();
}
else
{
$arPrice = $arProperty_N;
}
$arIBlock_LINK = array();
$iblockFilter = (
!empty($arCurrentValues['LINK_IBLOCK_TYPE'])
? array('TYPE' => $arCurrentValues['LINK_IBLOCK_TYPE'], 'ACTIVE' => 'Y')
: array('ACTIVE' => 'Y')
);
$rsIblock = CIBlock::GetList(array('SORT' => 'ASC'), $iblockFilter);
while ($arr = $rsIblock->Fetch())
$arIBlock_LINK[$arr['ID']] = '['.$arr['ID'].'] '.$arr['NAME'];
unset($iblockFilter);
$arProperty_LINK = array();
if (!empty($arCurrentValues['LINK_IBLOCK_ID']) && (int)$arCurrentValues['LINK_IBLOCK_ID'] > 0)
{
$propertyIterator = Iblock\PropertyTable::getList(array(
'select' => array('ID', 'IBLOCK_ID', 'NAME', 'CODE', 'PROPERTY_TYPE', 'MULTIPLE', 'LINK_IBLOCK_ID', 'USER_TYPE', 'SORT'),
'filter' => array('=IBLOCK_ID' => $arCurrentValues['LINK_IBLOCK_ID'], '=PROPERTY_TYPE' => Iblock\PropertyTable::TYPE_ELEMENT, '=ACTIVE' => 'Y'),
'order' => array('SORT' => 'ASC', 'NAME' => 'ASC')
));
while ($property = $propertyIterator->fetch())
{
$propertyCode = (string)$property['CODE'];
if ($propertyCode == '')
$propertyCode = $property['ID'];
$arProperty_LINK[$propertyCode] = '['.$propertyCode.'] '.$property['NAME'];
}
unset($propertyCode, $property, $propertyIterator);
}
$arAscDesc = array(
"asc" => GetMessage("IBLOCK_SORT_ASC"),
"desc" => GetMessage("IBLOCK_SORT_DESC"),
);
$arComponentParameters = array(
"GROUPS" => array(
"ACTION_SETTINGS" => array(
"NAME" => GetMessage('IBLOCK_ACTIONS')
),
"COMPARE" => array(
"NAME" => GetMessage("IBLOCK_COMPARE")
),
"PRICES" => array(
"NAME" => GetMessage("IBLOCK_PRICES"),
),
"BASKET" => array(
"NAME" => GetMessage("IBLOCK_BASKET"),
),
"LINK" => array(
"NAME" => GetMessage("IBLOCK_LINK"),
),
"GIFTS_SETTINGS" => array(
"NAME" => GetMessage("SALE_T_DESC_GIFTS_SETTINGS"),
),
"ANALYTICS_SETTINGS" => array(
"NAME" => GetMessage("ANALYTICS_SETTINGS")
),
"EXTENDED_SETTINGS" => array(
"NAME" => GetMessage("IBLOCK_EXTENDED_SETTINGS"),
"SORT" => 10000
)
),
"PARAMETERS" => array(
"SEF_MODE" => array(),
"SEF_RULE" => array(
"VALUES" => array(
"SECTION_ID" => array(
"TEXT" => GetMessage("IBLOCK_SECTION_ID"),
"TEMPLATE" => "#SECTION_ID#",
"PARAMETER_LINK" => "SECTION_ID",
"PARAMETER_VALUE" => '={$_REQUEST["SECTION_ID"]}',
),
"SECTION_CODE" => array(
"TEXT" => GetMessage("IBLOCK_SECTION_CODE"),
"TEMPLATE" => "#SECTION_CODE#",
"PARAMETER_LINK" => "SECTION_CODE",
"PARAMETER_VALUE" => '={$_REQUEST["SECTION_CODE"]}',
),
"SECTION_CODE_PATH" => array(
"TEXT" => GetMessage("CP_BCE_SECTION_CODE_PATH"),
"TEMPLATE" => "#SECTION_CODE_PATH#",
"PARAMETER_LINK" => "SECTION_CODE_PATH",
"PARAMETER_VALUE" => '={$_REQUEST["SECTION_CODE_PATH"]}',
),
"ELEMENT_ID" => array(
"TEXT" => GetMessage("IBLOCK_ELEMENT_ID"),
"TEMPLATE" => "#ELEMENT_ID#",
"PARAMETER_LINK" => "ELEMENT_ID",
"PARAMETER_VALUE" => '={$_REQUEST["ELEMENT_ID"]}',
),
"ELEMENT_CODE" => array(
"TEXT" => GetMessage("IBLOCK_ELEMENT_CODE"),
"TEMPLATE" => "#ELEMENT_CODE#",
"PARAMETER_LINK" => "ELEMENT_CODE",
"PARAMETER_VALUE" => '={$_REQUEST["ELEMENT_CODE"]}',
)
),
),
"IBLOCK_TYPE" => array(
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_TYPE"),
"TYPE" => "LIST",
"VALUES" => $arIBlockType,
"REFRESH" => "Y",
),
"IBLOCK_ID" => array(
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_IBLOCK"),
"TYPE" => "LIST",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arIBlock,
"REFRESH" => "Y",
),
"ELEMENT_ID" => array(
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_ELEMENT_ID"),
"TYPE" => "STRING",
"DEFAULT" => '={$_REQUEST["ELEMENT_ID"]}',
),
"ELEMENT_CODE" => array(
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_ELEMENT_CODE"),
"TYPE" => "STRING",
"DEFAULT" => '',
),
"SECTION_ID" => array(
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_SECTION_ID"),
"TYPE" => "STRING",
"DEFAULT" => '={$_REQUEST["SECTION_ID"]}',
),
"SECTION_CODE" => array(
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_SECTION_CODE"),
"TYPE" => "STRING",
"DEFAULT" => '',
),
"SECTION_URL" => CIBlockParameters::GetPathTemplateParam(
"SECTION",
"SECTION_URL",
GetMessage("IBLOCK_SECTION_URL"),
"",
"URL_TEMPLATES"
),
"DETAIL_URL" => CIBlockParameters::GetPathTemplateParam(
"DETAIL",
"DETAIL_URL",
GetMessage("IBLOCK_DETAIL_URL"),
"",
"URL_TEMPLATES"
),
"SECTION_ID_VARIABLE" => array(
"PARENT" => "URL_TEMPLATES",
"NAME" => GetMessage("IBLOCK_SECTION_ID_VARIABLE"),
"TYPE" => "STRING",
"DEFAULT" => "SECTION_ID",
),
"CHECK_SECTION_ID_VARIABLE" => array(
"PARENT" => "URL_TEMPLATES",
"NAME" => GetMessage("CP_BCE_CHECK_SECTION_ID_VARIABLE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N"
),
"SET_TITLE" => array(),
"SET_CANONICAL_URL" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_SET_CANONICAL_URL"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
),
"SET_BROWSER_TITLE" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_SET_BROWSER_TITLE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"REFRESH" => "Y"
),
"BROWSER_TITLE" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_BROWSER_TITLE"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"DEFAULT" => "-",
"VALUES" => array_merge(array("-"=>" ", "NAME" => GetMessage("IBLOCK_FIELD_NAME")), $arProperty_LS),
"HIDDEN" => (isset($arCurrentValues['SET_BROWSER_TITLE']) && $arCurrentValues['SET_BROWSER_TITLE'] == 'N' ? 'Y' : 'N')
),
"SET_META_KEYWORDS" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_SET_META_KEYWORDS"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"REFRESH" => "Y",
),
"META_KEYWORDS" =>array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("T_IBLOCK_DESC_KEYWORDS"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"DEFAULT" => "-",
"VALUES" => array_merge(array("-"=>" "),$arProperty_LS),
"HIDDEN" => (isset($arCurrentValues['SET_META_KEYWORDS']) && $arCurrentValues['SET_META_KEYWORDS'] == 'N' ? 'Y' : 'N')
),
"SET_META_DESCRIPTION" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_SET_META_DESCRIPTION"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"REFRESH" => "Y"
),
"META_DESCRIPTION" =>array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("T_IBLOCK_DESC_DESCRIPTION"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"DEFAULT" => "-",
"VALUES" => array_merge(array("-"=>" "),$arProperty_LS),
"HIDDEN" => (isset($arCurrentValues['SET_META_DESCRIPTION']) && $arCurrentValues['SET_META_DESCRIPTION'] == 'N' ? 'Y' : 'N')
),
"SET_LAST_MODIFIED" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_SET_LAST_MODIFIED"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
),
"USE_MAIN_ELEMENT_SECTION" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_USE_MAIN_ELEMENT_SECTION"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N"
),
"STRICT_SECTION_CHECK" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_STRICT_SECTION_CHECK"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
),
"ADD_SECTIONS_CHAIN" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_ADD_SECTIONS_CHAIN"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
),
"ADD_ELEMENT_CHAIN" => array(
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BCE_ADD_ELEMENT_CHAIN"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N"
),
"PROPERTY_CODE" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("IBLOCK_PROPERTY"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arProperty,
"SIZE" => (count($arProperty) > 5 ? 8 : 3),
"REFRESH" => isset($templateProperties['MAIN_BLOCK_PROPERTY_CODE']) ? "Y" : "N",
"ADDITIONAL_VALUES" => "Y",
),
"OFFERS_FIELD_CODE" => CIBlockParameters::GetFieldCode(GetMessage("CP_BCE_OFFERS_FIELD_CODE"), "VISUAL"),
"OFFERS_PROPERTY_CODE" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("CP_BCE_OFFERS_PROPERTY_CODE"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arProperty_Offers,
"SIZE" => (count($arProperty_Offers) > 5 ? 8 : 3),
"REFRESH" => isset($templateProperties['MAIN_BLOCK_OFFERS_PROPERTY_CODE']) ? "Y" : "N",
"ADDITIONAL_VALUES" => "Y",
),
"OFFERS_SORT_FIELD" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("CP_BCE_OFFERS_SORT_FIELD"),
"TYPE" => "LIST",
"VALUES" => $arSort,
"ADDITIONAL_VALUES" => "Y",
"DEFAULT" => "sort",
),
"OFFERS_SORT_ORDER" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("CP_BCE_OFFERS_SORT_ORDER"),
"TYPE" => "LIST",
"VALUES" => $arAscDesc,
"DEFAULT" => "asc",
"ADDITIONAL_VALUES" => "Y",
),
"OFFERS_SORT_FIELD2" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("CP_BCE_OFFERS_SORT_FIELD2"),
"TYPE" => "LIST",
"VALUES" => $arSort,
"ADDITIONAL_VALUES" => "Y",
"DEFAULT" => "id",
),
"OFFERS_SORT_ORDER2" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("CP_BCE_OFFERS_SORT_ORDER2"),
"TYPE" => "LIST",
"VALUES" => $arAscDesc,
"DEFAULT" => "desc",
"ADDITIONAL_VALUES" => "Y",
),
"OFFERS_LIMIT" => array(
"PARENT" => "VISUAL",
"NAME" => GetMessage('CP_BCE_OFFERS_LIMIT'),
"TYPE" => "STRING",
"DEFAULT" => 0,
),
"PRICE_CODE" => array(
"PARENT" => "PRICES",
"NAME" => GetMessage("IBLOCK_PRICE_CODE"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"SIZE" => (count($arPrice) > 5 ? 8 : 3),
"VALUES" => $arPrice,
),
"USE_PRICE_COUNT" => array(
"PARENT" => "PRICES",
"NAME" => GetMessage("IBLOCK_USE_PRICE_COUNT"),
"TYPE" => "CHECKBOX",
"REFRESH" => isset($templateProperties['USE_RATIO_IN_RANGES']) ? "Y" : "N",
"DEFAULT" => "N",
),
"SHOW_PRICE_COUNT" => array(
"PARENT" => "PRICES",
"NAME" => GetMessage("IBLOCK_SHOW_PRICE_COUNT"),
"TYPE" => "STRING",
"DEFAULT" => "1",
),
"PRICE_VAT_INCLUDE" => array(
"PARENT" => "PRICES",
"NAME" => GetMessage("IBLOCK_VAT_INCLUDE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
),
"PRICE_VAT_SHOW_VALUE" => array(
"PARENT" => "PRICES",
"NAME" => GetMessage("IBLOCK_VAT_SHOW_VALUE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
),
"BASKET_URL" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("IBLOCK_BASKET_URL"),
"TYPE" => "STRING",
"DEFAULT" => "/personal/basket.php",
),
"ACTION_VARIABLE" => array(
"PARENT" => "ACTION_SETTINGS",
"NAME" => GetMessage("IBLOCK_ACTION_VARIABLE"),
"TYPE" => "STRING",
"DEFAULT" => "action",
),
"PRODUCT_ID_VARIABLE" => array(
"PARENT" => "ACTION_SETTINGS",
"NAME" => GetMessage("IBLOCK_PRODUCT_ID_VARIABLE"),
"TYPE" => "STRING",
"DEFAULT" => "id",
),
"USE_PRODUCT_QUANTITY" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_USE_PRODUCT_QUANTITY"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"REFRESH" => "Y",
),
"PRODUCT_QUANTITY_VARIABLE" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_PRODUCT_QUANTITY_VARIABLE"),
"TYPE" => "STRING",
"DEFAULT" => "quantity",
"HIDDEN" => (isset($arCurrentValues['USE_PRODUCT_QUANTITY']) && $arCurrentValues['USE_PRODUCT_QUANTITY'] == 'Y' ? 'N' : 'Y')
),
"ADD_PROPERTIES_TO_BASKET" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_ADD_PROPERTIES_TO_BASKET"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"REFRESH" => "Y"
),
"PRODUCT_PROPS_VARIABLE" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_PRODUCT_PROPS_VARIABLE"),
"TYPE" => "STRING",
"DEFAULT" => "prop",
"HIDDEN" => (isset($arCurrentValues['ADD_PROPERTIES_TO_BASKET']) && $arCurrentValues['ADD_PROPERTIES_TO_BASKET'] == 'N' ? 'Y' : 'N')
),
"PARTIAL_PRODUCT_PROPERTIES" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_PARTIAL_PRODUCT_PROPERTIES"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"HIDDEN" => (isset($arCurrentValues['ADD_PROPERTIES_TO_BASKET']) && $arCurrentValues['ADD_PROPERTIES_TO_BASKET'] == 'N' ? 'Y' : 'N')
),
"PRODUCT_PROPERTIES" => array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_PRODUCT_PROPERTIES"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arProperty_X,
"SIZE" => (count($arProperty_X) > 5 ? 8 : 3),
"HIDDEN" => (isset($arCurrentValues['ADD_PROPERTIES_TO_BASKET']) && $arCurrentValues['ADD_PROPERTIES_TO_BASKET'] == 'N' ? 'Y' : 'N')
),
"DISPLAY_COMPARE" => array(
"PARENT" => "COMPARE",
"NAME" => GetMessage('CP_BCE_DISPLAY_COMPARE'),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"REFRESH" => "Y"
),
"LINK_IBLOCK_TYPE" => array(
"PARENT" => "LINK",
"NAME" => GetMessage("IBLOCK_LINK_IBLOCK_TYPE"),
"TYPE" => "LIST",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arIBlockType,
"REFRESH" => "Y",
),
"LINK_IBLOCK_ID" => array(
"PARENT" => "LINK",
"NAME" => GetMessage("IBLOCK_LINK_IBLOCK_ID"),
"TYPE" => "LIST",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arIBlock_LINK,
"REFRESH" => "Y",
),
"LINK_PROPERTY_SID" => array(
"PARENT" => "LINK",
"NAME" => GetMessage("IBLOCK_LINK_PROPERTY_SID"),
"TYPE" => "LIST",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arProperty_LINK,
),
"LINK_ELEMENTS_URL" => array(
"PARENT" => "LINK",
"NAME" => GetMessage("IBLOCK_LINK_ELEMENTS_URL"),
"TYPE" => "STRING",
"DEFAULT" => "link.php?PARENT_ELEMENT_ID=#ELEMENT_ID#",
),
"BACKGROUND_IMAGE" =>array(
"PARENT" => "VISUAL",
"NAME" => GetMessage("T_IBLOCK_BACKGROUND_IMAGE"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"DEFAULT" => "-",
"VALUES" => array_merge(array("-"=>" "),$arProperty_F)
),
"CACHE_TIME" => array("DEFAULT"=>36000000),
"CACHE_GROUPS" => array(
"PARENT" => "CACHE_SETTINGS",
"NAME" => GetMessage("CP_BCE_CACHE_GROUPS"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
),
"USE_GIFTS_DETAIL" => array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SALE_T_DESC_USE_GIFTS_DETAIL"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"REFRESH" => "Y",
),
"USE_GIFTS_MAIN_PR_SECTION_LIST" => array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SALE_T_DESC_USE_GIFTS_MAIN_PR_DETAIL"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
"REFRESH" => "Y",
),
'COMPATIBLE_MODE' => array(
'PARENT' => 'EXTENDED_SETTINGS',
'NAME' => GetMessage('CP_BCE_COMPATIBLE_MODE'),
'TYPE' => 'CHECKBOX',
'DEFAULT' => 'Y',
'REFRESH' => 'Y'
),
"USE_ELEMENT_COUNTER" => array(
"PARENT" => "EXTENDED_SETTINGS",
"NAME" => GetMessage('CP_BCE_USE_ELEMENT_COUNTER'),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y"
),
"SHOW_DEACTIVATED" => array(
"PARENT" => "DATA_SOURCE",
"NAME" => GetMessage('CP_BCE_SHOW_DEACTIVATED'),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N"
),
"DISABLE_INIT_JS_IN_COMPONENT" => array(
"PARENT" => "EXTENDED_SETTINGS",
"NAME" => GetMessage('CP_BCE_DISABLE_INIT_JS_IN_COMPONENT'),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"HIDDEN" => (isset($arCurrentValues['COMPATIBLE_MODE']) && $arCurrentValues['COMPATIBLE_MODE'] === 'N' ? 'Y' : 'N')
)
),
);
if ($usePropertyFeatures)
{
unset($arComponentParameters["PARAMETERS"]["PROPERTY_CODE"]);
unset($arComponentParameters["PARAMETERS"]["OFFERS_PROPERTY_CODE"]);
if (isset($arComponentParameters["PARAMETERS"]["PRODUCT_PROPERTIES"]))
unset($arComponentParameters["PARAMETERS"]["PRODUCT_PROPERTIES"]);
}
if ($arCurrentValues["SEF_MODE"] == "Y")
{
$arComponentParameters["PARAMETERS"]["SECTION_CODE_PATH"] = array(
"NAME" => GetMessage("CP_BCE_SECTION_CODE_PATH"),
"TYPE" => "STRING",
"DEFAULT" => "",
);
}
if ($catalogIncluded)
{
$arComponentParameters['PARAMETERS']['HIDE_NOT_AVAILABLE_OFFERS'] = array(
'PARENT' => 'DATA_SOURCE',
'NAME' => GetMessage('CP_BCE_HIDE_NOT_AVAILABLE_OFFERS'),
'TYPE' => 'LIST',
'DEFAULT' => 'N',
'VALUES' => array(
'Y' => GetMessage('CP_BCE_HIDE_NOT_AVAILABLE_OFFERS_HIDE'),
'L' => GetMessage('CP_BCE_HIDE_NOT_AVAILABLE_OFFERS_SUBSCRIBE'),
'N' => GetMessage('CP_BCE_HIDE_NOT_AVAILABLE_OFFERS_SHOW')
)
);
$arComponentParameters["PARAMETERS"]['CONVERT_CURRENCY'] = array(
'PARENT' => 'PRICES',
'NAME' => GetMessage('CP_BCE_CONVERT_CURRENCY'),
'TYPE' => 'CHECKBOX',
'DEFAULT' => 'N',
'REFRESH' => 'Y',
);
if (isset($arCurrentValues['CONVERT_CURRENCY']) && $arCurrentValues['CONVERT_CURRENCY'] == 'Y')
{
$arComponentParameters['PARAMETERS']['CURRENCY_ID'] = array(
'PARENT' => 'PRICES',
'NAME' => GetMessage('CP_BCE_CURRENCY_ID'),
'TYPE' => 'LIST',
'VALUES' => Currency\CurrencyManager::getCurrencyList(),
'DEFAULT' => Currency\CurrencyManager::getBaseCurrency(),
"ADDITIONAL_VALUES" => "Y",
);
}
$arComponentParameters['PARAMETERS']['SET_VIEWED_IN_COMPONENT'] = array(
"PARENT" => "EXTENDED_SETTINGS",
"NAME" => GetMessage('CP_BCE_SET_VIEWED_IN_COMPONENT'),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
"HIDDEN" => (isset($arCurrentValues['COMPATIBLE_MODE']) && $arCurrentValues['COMPATIBLE_MODE'] === 'N' ? 'Y' : 'N')
);
}
if (isset($arCurrentValues['COMPATIBLE_MODE']) && $arCurrentValues['COMPATIBLE_MODE'] === 'N')
{
unset($arComponentParameters['PARAMETERS']['OFFERS_LIMIT']);
}
if (empty($offers))
{
unset($arComponentParameters["PARAMETERS"]["OFFERS_FIELD_CODE"]);
if (isset($arComponentParameters["PARAMETERS"]["OFFERS_PROPERTY_CODE"]))
unset($arComponentParameters["PARAMETERS"]["OFFERS_PROPERTY_CODE"]);
unset($arComponentParameters["PARAMETERS"]["OFFERS_SORT_FIELD"]);
unset($arComponentParameters["PARAMETERS"]["OFFERS_SORT_ORDER"]);
unset($arComponentParameters["PARAMETERS"]["OFFERS_SORT_FIELD2"]);
unset($arComponentParameters["PARAMETERS"]["OFFERS_SORT_ORDER2"]);
}
else
{
if (!$usePropertyFeatures)
{
$arComponentParameters["PARAMETERS"]["OFFERS_CART_PROPERTIES"] = array(
"PARENT" => "BASKET",
"NAME" => GetMessage("CP_BCE_OFFERS_CART_PROPERTIES"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"VALUES" => $arProperty_OffersWithoutFile,
"SIZE" => (count($arProperty_OffersWithoutFile) > 5 ? 8 : 3),
"HIDDEN" => (isset($arCurrentValues['ADD_PROPERTIES_TO_BASKET']) && $arCurrentValues['ADD_PROPERTIES_TO_BASKET'] == 'N' ? 'Y' : 'N')
);
}
}
if (isset($arCurrentValues['DISPLAY_COMPARE']) && $arCurrentValues['DISPLAY_COMPARE'] == 'Y')
{
$arComponentParameters['PARAMETERS']['COMPARE_PATH'] = array(
'PARENT' => 'COMPARE',
'NAME' => GetMessage('CP_BCE_COMPARE_PATH'),
'TYPE' => 'STRING',
'DEFAULT' => ''
);
}
if(!\Bitrix\Main\ModuleManager::isModuleInstalled("sale"))
{
unset($arComponentParameters["PARAMETERS"]["USE_GIFTS_DETAIL"]);
unset($arComponentParameters["PARAMETERS"]["USE_GIFTS_MAIN_PR_SECTION_LIST"]);
unset($arComponentParameters["GROUPS"]["GIFTS_SETTINGS"]);
}
else
{
$useGiftsDetail = $arCurrentValues["USE_GIFTS_DETAIL"] === null && $arComponentParameters['PARAMETERS']['USE_GIFTS_DETAIL']['DEFAULT'] == 'Y' || $arCurrentValues["USE_GIFTS_DETAIL"] == "Y";
$useGiftsMainPrSectionList = $arCurrentValues["USE_GIFTS_MAIN_PR_SECTION_LIST"] === null && $arComponentParameters['PARAMETERS']['USE_GIFTS_MAIN_PR_SECTION_LIST']['DEFAULT'] == 'Y' || $arCurrentValues["USE_GIFTS_MAIN_PR_SECTION_LIST"] == "Y";
if($useGiftsDetail || $useGiftsMainPrSectionList)
{
if($useGiftsDetail)
{
$arComponentParameters["PARAMETERS"]["GIFTS_DETAIL_PAGE_ELEMENT_COUNT"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_PAGE_ELEMENT_COUNT_DETAIL"),
"TYPE" => "STRING",
"DEFAULT" => "4",
);
$arComponentParameters["PARAMETERS"]["GIFTS_DETAIL_HIDE_BLOCK_TITLE"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_PARAMS_HIDE_BLOCK_TITLE_DETAIL"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "",
);
$arComponentParameters["PARAMETERS"]["GIFTS_DETAIL_BLOCK_TITLE"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_PARAMS_BLOCK_TITLE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage('SGB_PARAMS_BLOCK_TITLE_DEFAULT'),
);
$arComponentParameters["PARAMETERS"]["GIFTS_DETAIL_TEXT_LABEL_GIFT"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_PARAMS_TEXT_LABEL_GIFT_DETAIL"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage("SGP_PARAMS_TEXT_LABEL_GIFT_DEFAULT"),
);
$arComponentParameters["PARAMETERS"]["GIFTS_SHOW_DISCOUNT_PERCENT"] = array(
'PARENT' => 'GIFTS_SETTINGS',
'NAME' => GetMessage('CVP_SHOW_DISCOUNT_PERCENT'),
'TYPE' => 'CHECKBOX',
'DEFAULT' => 'Y'
);
$arComponentParameters["PARAMETERS"]["GIFTS_SHOW_OLD_PRICE"] = array(
'PARENT' => 'GIFTS_SETTINGS',
'NAME' => GetMessage('CVP_SHOW_OLD_PRICE'),
'TYPE' => 'CHECKBOX',
'DEFAULT' => 'Y'
);
$arComponentParameters["PARAMETERS"]["GIFTS_SHOW_NAME"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("CVP_SHOW_NAME"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
);
$arComponentParameters["PARAMETERS"]["GIFTS_SHOW_IMAGE"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("CVP_SHOW_IMAGE"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
);
$arComponentParameters["PARAMETERS"]['GIFTS_MESS_BTN_BUY'] = array(
'PARENT' => 'GIFTS_SETTINGS',
'NAME' => GetMessage('CVP_MESS_BTN_BUY_GIFT'),
'TYPE' => 'STRING',
'DEFAULT' => GetMessage('CVP_MESS_BTN_BUY_GIFT_DEFAULT')
);
}
if($useGiftsMainPrSectionList)
{
$arComponentParameters["PARAMETERS"]["GIFTS_MAIN_PRODUCT_DETAIL_PAGE_ELEMENT_COUNT"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_PAGE_ELEMENT_COUNT_MAIN_PR_DETAIL"),
"TYPE" => "STRING",
"DEFAULT" => "4",
);
$arComponentParameters["PARAMETERS"]["GIFTS_MAIN_PRODUCT_DETAIL_HIDE_BLOCK_TITLE"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_PARAMS_HIDE_BLOCK_TITLE_MAIN_PR_DETAIL"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "",
);
$arComponentParameters["PARAMETERS"]["GIFTS_MAIN_PRODUCT_DETAIL_BLOCK_TITLE"] = array(
"PARENT" => "GIFTS_SETTINGS",
"NAME" => GetMessage("SGP_MAIN_PRODUCT_PARAMS_BLOCK_TITLE"),
"TYPE" => "STRING",
"DEFAULT" => GetMessage('SGB_MAIN_PRODUCT_PARAMS_BLOCK_TITLE_DEFAULT'),
);
}
}
}
CIBlockParameters::Add404Settings($arComponentParameters, $arCurrentValues);