Your IP : 3.143.112.184
<?php
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)
{
die();
}
/** @var array $arCurrentValues */
use Bitrix\Main\Loader;
if (!Loader::includeModule('iblock'))
{
return;
}
$iblockExists = (!empty($arCurrentValues['IBLOCK_ID']) && (int)$arCurrentValues['IBLOCK_ID'] > 0);
$arIBlockType = CIBlockParameters::GetIBlockTypes();
$arIBlock = [];
$iblockFilter = [
'ACTIVE' => 'Y',
];
if (!empty($arCurrentValues['IBLOCK_TYPE']))
{
$iblockFilter['TYPE'] = $arCurrentValues['IBLOCK_TYPE'];
}
$rsIBlock = CIBlock::GetList(["SORT" => "ASC"], $iblockFilter);
while($arr=$rsIBlock->Fetch())
{
$arIBlock[$arr["ID"]] = "[".$arr["ID"]."] ".$arr["NAME"];
}
$arProperty_LNS = [];
$arProperty = [];
if ($iblockExists)
{
$rsProp = CIBlockProperty::GetList(
[
"SORT" => "ASC",
"NAME" => "ASC",
],
[
"ACTIVE" => "Y",
"IBLOCK_ID" => $arCurrentValues["IBLOCK_ID"],
]
);
while ($arr = $rsProp->Fetch())
{
$arProperty[$arr["CODE"]] = "[" . $arr["CODE"] . "] " . $arr["NAME"];
if (in_array($arr["PROPERTY_TYPE"], ["L", "N", "S"]))
{
$arProperty_LNS[$arr["CODE"]] = "[" . $arr["CODE"] . "] " . $arr["NAME"];
}
}
}
$arProperty_UF = array();
$arSProperty_LNS = array();
if ($iblockExists)
{
$arUserFields = $GLOBALS["USER_FIELD_MANAGER"]->GetUserFields("IBLOCK_"
. $arCurrentValues["IBLOCK_ID"]
. "_SECTION");
foreach ($arUserFields as $FIELD_NAME => $arUserField)
{
$arProperty_UF[$FIELD_NAME] = $arUserField["LIST_COLUMN_LABEL"] ?? $FIELD_NAME;
if ($arUserField["USER_TYPE"]["BASE_TYPE"] == "string")
{
$arSProperty_LNS[$FIELD_NAME] = $arProperty_UF[$FIELD_NAME];
}
}
}
$arAscDesc = [
"asc" => GetMessage("IBLOCK_SORT_ASC"),
"desc" => GetMessage("IBLOCK_SORT_DESC"),
];
$arComponentParameters = [
"GROUPS" => [
],
"PARAMETERS" => [
"AJAX_MODE" => [],
"IBLOCK_TYPE" => [
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_TYPE"),
"TYPE" => "LIST",
"VALUES" => $arIBlockType,
"REFRESH" => "Y",
],
"IBLOCK_ID" => [
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_IBLOCK"),
"TYPE" => "LIST",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arIBlock,
"REFRESH" => "Y",
],
"SECTION_ID" => [
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_SECTION_ID"),
"TYPE" => "STRING",
"DEFAULT" => '={$_REQUEST["SECTION_ID"]}',
],
"SECTION_CODE" => [
"PARENT" => "BASE",
"NAME" => GetMessage("IBLOCK_SECTION_CODE"),
"TYPE" => "STRING",
"DEFAULT" => '',
],
"SECTION_USER_FIELDS" => [
"PARENT" => "DATA_SOURCE",
"NAME" => GetMessage("CP_BPS_SECTION_USER_FIELDS"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arProperty_UF,
],
"ELEMENT_SORT_FIELD" => [
"PARENT" => "DATA_SOURCE",
"NAME" => GetMessage("IBLOCK_ELEMENT_SORT_FIELD"),
"TYPE" => "LIST",
"VALUES" => [
"shows" => GetMessage("IBLOCK_SORT_SHOWS"),
"sort" => GetMessage("IBLOCK_SORT_SORT"),
"timestamp_x" => GetMessage("IBLOCK_SORT_TIMESTAMP"),
"name" => GetMessage("IBLOCK_SORT_NAME"),
"id" => GetMessage("IBLOCK_SORT_ID"),
"active_from" => GetMessage("IBLOCK_SORT_ACTIVE_FROM"),
"active_to" => GetMessage("IBLOCK_SORT_ACTIVE_TO"),
],
"ADDITIONAL_VALUES" => "Y",
"DEFAULT" => "sort",
],
"ELEMENT_SORT_ORDER" => [
"PARENT" => "DATA_SOURCE",
"NAME" => GetMessage("IBLOCK_ELEMENT_SORT_ORDER"),
"TYPE" => "LIST",
"VALUES" => $arAscDesc,
"DEFAULT" => "asc",
"ADDITIONAL_VALUES" => "Y",
],
"FILTER_NAME" => [
"PARENT" => "DATA_SOURCE",
"NAME" => GetMessage("IBLOCK_FILTER_NAME_IN"),
"TYPE" => "STRING",
"DEFAULT" => "arrFilter",
],
"FIELD_CODE" => CIBlockParameters::GetFieldCode(GetMessage("IBLOCK_FIELD"), "DATA_SOURCE"),
"PROPERTY_CODE" => [
"PARENT" => "DATA_SOURCE",
"NAME" => GetMessage("IBLOCK_PROPERTY"),
"TYPE" => "LIST",
"MULTIPLE" => "Y",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => $arProperty_LNS,
],
"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"
),
"PAGE_ELEMENT_COUNT" => [
"PARENT" => "VISUAL",
"NAME" => GetMessage("IBLOCK_PAGE_ELEMENT_COUNT"),
"TYPE" => "STRING",
"DEFAULT" => "20",
],
"LINE_ELEMENT_COUNT" => [
"PARENT" => "VISUAL",
"NAME" => GetMessage("IBLOCK_LINE_ELEMENT_COUNT"),
"TYPE" => "STRING",
"DEFAULT" => "3",
],
"META_KEYWORDS" => [
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("T_IBLOCK_DESC_KEYWORDS"),
"TYPE" => "LIST",
"DEFAULT" => "-",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => array_merge(["-"=>" "], $arSProperty_LNS),
],
"META_DESCRIPTION" => [
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("T_IBLOCK_DESC_DESCRIPTION"),
"TYPE" => "LIST",
"DEFAULT" => "-",
"ADDITIONAL_VALUES" => "Y",
"VALUES" => array_merge(["-"=>" "], $arSProperty_LNS),
],
"BROWSER_TITLE" => [
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BPS_BROWSER_TITLE"),
"TYPE" => "LIST",
"MULTIPLE" => "N",
"DEFAULT" => "-",
"VALUES" => array_merge(["-"=>" ", "NAME" => GetMessage("IBLOCK_FIELD_NAME")], $arSProperty_LNS),
],
"SET_TITLE" => [],
"SET_LAST_MODIFIED" => [
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("CP_BPS_SET_LAST_MODIFIED"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
],
"ADD_SECTIONS_CHAIN" => [
"PARENT" => "ADDITIONAL_SETTINGS",
"NAME" => GetMessage("T_IBLOCK_DESC_ADD_SECTIONS_CHAIN"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
],
"CACHE_TIME" => ["DEFAULT"=>36000000],
"CACHE_FILTER" => [
"PARENT" => "CACHE_SETTINGS",
"NAME" => GetMessage("IBLOCK_CACHE_FILTER"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "N",
],
"CACHE_GROUPS" => [
"PARENT" => "CACHE_SETTINGS",
"NAME" => GetMessage("CP_BPS_CACHE_GROUPS"),
"TYPE" => "CHECKBOX",
"DEFAULT" => "Y",
],
],
];
CIBlockParameters::AddPagerSettings(
$arComponentParameters,
GetMessage("T_IBLOCK_DESC_PAGER_PHOTO"), //$pager_title
true, //$bDescNumbering
true, //$bShowAllParam
true, //$bBaseLink
($arCurrentValues["PAGER_BASE_LINK_ENABLE"] ?? '') === "Y" //$bBaseLinkEnabled
);
CIBlockParameters::Add404Settings($arComponentParameters, $arCurrentValues);