В битрикс 1с каталоге- пропадает компонент детального просмотра товара
В битрикс 1с каталоге- пропадает компонент детального просмотра товара. В административной части все работает. Что может быть? В настройках прав инфоблока уже смотрел, что может быть еще? Буду признателен любой помощи!
//шаблон компонента catalog.element
<?php
if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) die();
use Bitrix\Main\Localization\Loc;
/**
* @global CMain $APPLICATION
* @var array $arParams
* @var array $arResult
* @var CatalogSectionComponent $component
* @var CBitrixComponentTemplate $this
* @var string $templateName
* @var string $componentPath
* @var string $templateFolder
*/
$this->setFrameMode(true);
$templateLibrary = array('popup', 'fx');
$currencyList = '';
if (!empty($arResult['CURRENCIES']))
{
$templateLibrary[] = 'currency';
$currencyList = CUtil::PhpToJSObject($arResult['CURRENCIES'], false, true, true);
}
$templateData = array(
'TEMPLATE_THEME' => $arParams['TEMPLATE_THEME'],
'TEMPLATE_LIBRARY' => $templateLibrary,
'CURRENCIES' => $currencyList,
'ITEM' => array(
'ID' => $arResult['ID'],
'IBLOCK_ID' => $arResult['IBLOCK_ID'],
'OFFERS_SELECTED' => $arResult['OFFERS_SELECTED'],
'JS_OFFERS' => $arResult['JS_OFFERS']
)
);
unset($currencyList, $templateLibrary);
$mainId = $this->GetEditAreaId($arResult['ID']);
$itemIds = array(
'ID' => $mainId,
'DISCOUNT_PERCENT_ID' => $mainId.'_dsc_pict',
'STICKER_ID' => $mainId.'_sticker',
'BIG_SLIDER_ID' => $mainId.'_big_slider',
'BIG_IMG_CONT_ID' => $mainId.'_bigimg_cont',
'SLIDER_CONT_ID' => $mainId.'_slider_cont',
'BLOCK_PRICE_OLD' => $mainId.'_block_price',
'OLD_PRICE_ID' => $mainId.'_old_price',
'PRICE_ID' => $mainId.'_price',
'DISCOUNT_PRICE_ID' => $mainId.'_price_discount',
'PRICE_TOTAL' => $mainId.'_price_total',
'SLIDER_CONT_OF_ID' => $mainId.'_slider_cont_',
'SLIDER_PAGER_OF_ID' => $mainId.'_slider_pager_',
'QUANTITY_COUNTER_ID' => $mainId.'_counter',
'QUANTITY_ID' => $mainId.'_quantity',
'QUANTITY_DOWN_ID' => $mainId.'_quant_down',
'QUANTITY_UP_ID' => $mainId.'_quant_up',
'QUANTITY_MEASURE' => $mainId.'_quant_measure',
'QUANTITY_MEASURE_CONTAINER' => $mainId.'_quant_measure_container',
'QUANTITY_LIMIT' => $mainId.'_quant_limit',
'BUY_LINK' => $mainId.'_buy_link',
'ADD_BASKET_LINK' => $mainId.'_add_basket_link',
'BASKET_ACTIONS_ID' => $mainId.'_basket_actions',
'NOT_AVAILABLE_MESS' => $mainId.'_not_avail',
'COMPARE_LINK' => $mainId.'_compare_link',
'TREE_ID' => $mainId.'_skudiv',
'DISPLAY_PROP_DIV' => $mainId.'_sku_prop',
'DESCRIPTION_ID' => $mainId.'_description',
'DISPLAY_MAIN_PROP_DIV' => $mainId.'_main_sku_prop',
'OFFER_GROUP' => $mainId.'_set_group_',
'BASKET_PROP_DIV' => $mainId.'_basket_prop',
'SUBSCRIBE_LINK' => $mainId.'_subscribe',
'TABS_ID' => $mainId.'_tabs',
'TAB_CONTAINERS_ID' => $mainId.'_tab_containers',
'SMALL_CARD_PANEL_ID' => $mainId.'_small_card_panel',
'TABS_PANEL_ID' => $mainId.'_tabs_panel'
);
$obName = $templateData['JS_OBJ'] = 'ob'.preg_replace('/[^a-zA-Z0-9_]/', 'x', $mainId);
$name = !empty($arResult['IPROPERTY_VALUES']['ELEMENT_PAGE_TITLE'])
? $arResult['IPROPERTY_VALUES']['ELEMENT_PAGE_TITLE']
: $arResult['NAME'];
$title = !empty($arResult['IPROPERTY_VALUES']['ELEMENT_DETAIL_PICTURE_FILE_TITLE'])
? $arResult['IPROPERTY_VALUES']['ELEMENT_DETAIL_PICTURE_FILE_TITLE']
: $arResult['NAME'];
$alt = !empty($arResult['IPROPERTY_VALUES']['ELEMENT_DETAIL_PICTURE_FILE_ALT'])
? $arResult['IPROPERTY_VALUES']['ELEMENT_DETAIL_PICTURE_FILE_ALT']
: $arResult['NAME'];
$haveOffers = !empty($arResult['OFFERS']);
if ($haveOffers)
{
$actualItem = $arResult['OFFERS'][$arResult['OFFERS_SELECTED']] ?? reset($arResult['OFFERS']);
$showSliderControls = false;
foreach ($arResult['OFFERS'] as $offer)
{
if ($offer['MORE_PHOTO_COUNT'] > 1)
{
$showSliderControls = true;
break;
}
}
}
else
{
$actualItem = $arResult;
$showSliderControls = $arResult['MORE_PHOTO_COUNT'] > 1;
}
$percent = '';
if (!empty($actualItem['MORE_PHOTO']))
{
$firstPhoto = reset($actualItem['MORE_PHOTO']);
$percent = ($firstPhoto['HEIGHT']/$firstPhoto['WIDTH'])*100;
$percent = ($percent > 160) ? 160 : $percent;
$percent = 'padding-top: '.$percent.'%;';
unset($firstPhoto);
}
$skuProps = array();
$price = $actualItem['ITEM_PRICES'][$actualItem['ITEM_PRICE_SELECTED']];
$measureRatio = $actualItem['ITEM_MEASURE_RATIOS'][$actualItem['ITEM_MEASURE_RATIO_SELECTED']]['RATIO'];
$showDiscount = $price['PERCENT'] > 0;
if ($arParams['SHOW_SKU_DESCRIPTION'] === 'Y')
{
$skuDescription = false;
foreach ($arResult['OFFERS'] as $offer)
{
if ($offer['DETAIL_TEXT'] != '' || $offer['PREVIEW_TEXT'] != '')
{
$skuDescription = true;
break;
}
}
$showDescription = $skuDescription || !empty($arResult['PREVIEW_TEXT']) || !empty($arResult['DETAIL_TEXT']);
}
else
{
$showDescription = !empty($arResult['PREVIEW_TEXT']) || !empty($arResult['DETAIL_TEXT']);
}
$showBuyBtn = in_array('BUY', $arParams['ADD_TO_BASKET_ACTION']);
$buyButtonClassName = in_array('BUY', $arParams['ADD_TO_BASKET_ACTION_PRIMARY']) ? 'btn-primary' : 'btn-link';
$showAddBtn = in_array('ADD', $arParams['ADD_TO_BASKET_ACTION']);
$showButtonClassName = in_array('ADD', $arParams['ADD_TO_BASKET_ACTION_PRIMARY']) ? 'btn-primary' : 'btn-link';
$showSubscribe = $arParams['PRODUCT_SUBSCRIPTION'] === 'Y' && ($arResult['PRODUCT']['SUBSCRIBE'] === 'Y' || $haveOffers);
$arParams['MESS_BTN_BUY'] = $arParams['MESS_BTN_BUY'] ?: Loc::getMessage('CT_BCE_CATALOG_BUY');
$arParams['MESS_BTN_ADD_TO_BASKET'] = $arParams['MESS_BTN_ADD_TO_BASKET'] ?: Loc::getMessage('CT_BCE_CATALOG_ADD');
$arParams['MESS_NOT_AVAILABLE'] = $arParams['MESS_NOT_AVAILABLE'] ?: Loc::getMessage('CT_BCE_CATALOG_NOT_AVAILABLE');
$arParams['MESS_BTN_COMPARE'] = $arParams['MESS_BTN_COMPARE'] ?: Loc::getMessage('CT_BCE_CATALOG_COMPARE');
$arParams['MESS_PRICE_RANGES_TITLE'] = $arParams['MESS_PRICE_RANGES_TITLE'] ?: Loc::getMessage('CT_BCE_CATALOG_PRICE_RANGES_TITLE');
$arParams['MESS_DESCRIPTION_TAB'] = $arParams['MESS_DESCRIPTION_TAB'] ?: Loc::getMessage('CT_BCE_CATALOG_DESCRIPTION_TAB');
$arParams['MESS_PROPERTIES_TAB'] = $arParams['MESS_PROPERTIES_TAB'] ?: Loc::getMessage('CT_BCE_CATALOG_PROPERTIES_TAB');
$arParams['MESS_COMMENTS_TAB'] = $arParams['MESS_COMMENTS_TAB'] ?: Loc::getMessage('CT_BCE_CATALOG_COMMENTS_TAB');
$arParams['MESS_SHOW_MAX_QUANTITY'] = $arParams['MESS_SHOW_MAX_QUANTITY'] ?: Loc::getMessage('CT_BCE_CATALOG_SHOW_MAX_QUANTITY');
$arParams['MESS_RELATIVE_QUANTITY_MANY'] = $arParams['MESS_RELATIVE_QUANTITY_MANY'] ?: Loc::getMessage('CT_BCE_CATALOG_RELATIVE_QUANTITY_MANY');
$arParams['MESS_RELATIVE_QUANTITY_FEW'] = $arParams['MESS_RELATIVE_QUANTITY_FEW'] ?: Loc::getMessage('CT_BCE_CATALOG_RELATIVE_QUANTITY_FEW');
$themeClass = isset($arParams['TEMPLATE_THEME']) ? ' bx-'.$arParams['TEMPLATE_THEME'] : '';
?>
<div style="display:block;" class="product-detail row <?=$themeClass?>" id="<?=$itemIds['ID']?>">
<section class="item_intro_section">
<div class="container">
<div class="row">
<div class="col-md-12">
<?$APPLICATION->IncludeComponent(
"bitrix:breadcrumb",
"mainbread",
Array(
"PATH" => "",
"SITE_ID" => "s1",
"START_FROM" => "0"
)
);?>
</div>
</div>
<div class="row flex box item_intro_flex">
<div class="col-md-5 col-sm-6 col-xs-12">
<div class="item_text1">серия VENTURA <?=$arResult['PROPERTIES']['SERIES_LABEL']['VALUE']?></div>
<div class="item_text2">
<h1><?=$arResult['NAME']?></h1>
</div>
<div class="item_text3">
<?=$arResult['PREVIEW_TEXT']?>
</div>
<a class="button"
id="<?=$itemIds['ADD_BASKET_LINK']?>"
href="javascript:void(0);">
добавить в корзину →
</a>
</div>
<div class="col-md-7 col-sm-6 col-xs-12">
<div class="item_main_img">
<img src="<? echo($arResult["DETAIL_PICTURE"]["SRC"]) ?>" alt="<? echo($arResult["DETAIL_PICTURE"]["ALT"]) ?>">
<div class="scroll_img"><img src="<?=SITE_TEMPLATE_PATH?>/img/scroll.png" alt=""></div>
</div>
</div>
</div>
</div>
</section>
<section class="item_specification_section" id="<?=$itemIds['BIG_SLIDER_ID']?>">
<div class="container">
<div class="row">
<div class="col-md-12">
<h2 class="itemh2">Сферы применения и особенности</h2>
</div>
</div>
<div class="row flex box">
<div class="col-md-6 col-sm-6 col-xs-12">
<ul class="item_hover_icons">
<?foreach($arResult["DISPLAY_PROPERTIES"]["SPHERES"]["VALUE"] as $SpheresSnap):?>
<?$res = CIBlockElement::GetByID($SpheresSnap)?>
<?if($ar_res = $res->GetNext())?>
<li data-text="<?=$ar_res["NAME"];?>" data-link="<? echo $ar_res['DETAIL_TEXT']?>">
<span><?php echo CFile::ShowImage($ar_res['DETAIL_PICTURE'], 32, 34, "border=0", "", true); ?></span>
</li>
<?endforeach;?>
</ul>
</div>
<div class="col-md-6 col-sm-6 col-xs-12">
<div class="item_icons">
<?foreach($arResult["PROPERTIES"]["ICON"]["VALUE"] as $val):?>
<div class="item_icon">
<? $src = CFile::GetPath($val); ?>
<img src="<?=$src; ?>" alt="">
</div>
<?php endforeach; ?>
</div>
</div>
</div>
<div class="row tech_part">
<div class="col-md-12">
<h2 class="itemh2">Технические характеристики</h2>
</div>
</div>
<div class="row flex box">
<div class="col-md-6 col-sm-12 col-xs-12">
<h3 class="itemh3">Габаритные размеры</h3>
<a href="<?=CFile::GetPath($arResult['PROPERTIES']['DIMENSIONS_SCHEMA']['VALUE'])?>" data-fancybox><img src="<?=CFile::GetPath($arResult['PROPERTIES']['DIMENSIONS_SCHEMA']['VALUE'])?>" alt="" class="schema_item"></a>
</div>
<div class="col-md-6 col-sm-12 col-xs-12">
<h3 class="itemh3">Технические данные</h3>
<?php
if (
$arResult['PREVIEW_TEXT'] != ''
&& (
$arParams['DISPLAY_PREVIEW_TEXT_MODE'] === 'S'
|| ($arParams['DISPLAY_PREVIEW_TEXT_MODE'] === 'E' && $arResult['DETAIL_TEXT'] == '')
)
)
{
echo $arResult['PREVIEW_TEXT_TYPE'] === 'html' ? $arResult['PREVIEW_TEXT'] : '<p>'.$arResult['PREVIEW_TEXT'].'</p>';
}
if ($arResult['DETAIL_TEXT'] != '')
{
echo $arResult['DETAIL_TEXT_TYPE'] === 'html' ? $arResult['DETAIL_TEXT'] : '<p>'.$arResult['DETAIL_TEXT'].'</p>';
}
?>
</div>
</div>
<div class="row documentation_wrp">
<div class="col-md-12">
<h3 class="itemh3">Документация</h3>
</div>
</div>
<div class="row flex box">
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="<?=CFile::GetPath($arResult['PROPERTIES']['DOCUMENTATION_1']['VALUE'])?>" class="file_item_link"><?=$arResult['PROPERTIES']['NAME_DOCUMENTATION_1']['VALUE']?></a>
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="<?=CFile::GetPath($arResult['PROPERTIES']['DOCUMENTATION_2']['VALUE'])?>" class="file_item_link"><?=$arResult['PROPERTIES']['NAME_DOCUMENTATION_2']['VALUE']?></a>
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="<?=CFile::GetPath($arResult['PROPERTIES']['DOCUMENTATION_3']['VALUE'])?>" class="file_item_link"><?=$arResult['PROPERTIES']['NAME_DOCUMENTATION_3']['VALUE']?></a>
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="<?=CFile::GetPath($arResult['PROPERTIES']['DOCUMENTATION_4']['VALUE'])?>" class="file_item_link"><?=$arResult['PROPERTIES']['NAME_DOCUMENTATION_4']['VALUE']?></a>
</div>
</div>
<div class="row similar_list">
<div class="col-md-12">
<h2 class="itemh2">Вам может подойти</h2>
</div>
</div>
<?$APPLICATION->IncludeComponent(
"bitrix:catalog.section",
"ventura_bootstrap_v4",
Array(
"ACTION_VARIABLE" => "action",
"ADD_PICT_PROP" => "-",
"ADD_PROPERTIES_TO_BASKET" => "Y",
"ADD_SECTIONS_CHAIN" => "N",
"ADD_TO_BASKET_ACTION" => "ADD",
"AJAX_MODE" => "N",
"AJAX_OPTION_ADDITIONAL" => "",
"AJAX_OPTION_HISTORY" => "N",
"AJAX_OPTION_JUMP" => "N",
"AJAX_OPTION_STYLE" => "Y",
"BACKGROUND_IMAGE" => "-",
"BASKET_URL" => "/personal/basket.php",
"BROWSER_TITLE" => "-",
"CACHE_FILTER" => "N",
"CACHE_GROUPS" => "Y",
"CACHE_TIME" => "36000000",
"CACHE_TYPE" => "A",
"COMPATIBLE_MODE" => "Y",
"CONVERT_CURRENCY" => "N",
"CUSTOM_FILTER" => "{\"CLASS_ID\":\"CondGroup\",\"DATA\":{\"All\":\"AND\",\"True\":\"True\"},\"CHILDREN\":[]}",
"DISABLE_INIT_JS_IN_COMPONENT" => "N",
"DISPLAY_BOTTOM_PAGER" => "Y",
"DISPLAY_COMPARE" => "N",
"DISPLAY_TOP_PAGER" => "N",
"ELEMENT_SORT_FIELD" => "RAND",
"ELEMENT_SORT_FIELD2" => "RAND",
"ELEMENT_SORT_ORDER" => "RAND",
"ELEMENT_SORT_ORDER2" => "RAND",
"ENLARGE_PRODUCT" => "STRICT",
"FILTER_NAME" => "arrFilter",
"HIDE_NOT_AVAILABLE" => "N",
"HIDE_NOT_AVAILABLE_OFFERS" => "N",
"IBLOCK_ID" => "4",
"IBLOCK_TYPE" => "catalog",
"INCLUDE_SUBSECTIONS" => "Y",
"LABEL_PROP" => array(),
"LAZY_LOAD" => "N",
"LINE_ELEMENT_COUNT" => "3",
"LOAD_ON_SCROLL" => "N",
"MESSAGE_404" => "",
"MESS_BTN_ADD_TO_BASKET" => "В корзину",
"MESS_BTN_BUY" => "Купить",
"MESS_BTN_DETAIL" => "Подробнее",
"MESS_BTN_LAZY_LOAD" => "Показать ещё",
"MESS_BTN_SUBSCRIBE" => "Подписаться",
"MESS_NOT_AVAILABLE" => "Нет в наличии",
"META_DESCRIPTION" => "-",
"META_KEYWORDS" => "-",
"OFFERS_LIMIT" => "5",
"PAGER_BASE_LINK_ENABLE" => "N",
"PAGER_DESC_NUMBERING" => "N",
"PAGER_DESC_NUMBERING_CACHE_TIME" => "36000",
"PAGER_SHOW_ALL" => "N",
"PAGER_SHOW_ALWAYS" => "N",
"PAGER_TEMPLATE" => ".default",
"PAGER_TITLE" => "Товары",
"PAGE_ELEMENT_COUNT" => "4",
"PARTIAL_PRODUCT_PROPERTIES" => "N",
"PRICE_CODE" => array(),
"PRICE_VAT_INCLUDE" => "Y",
"PRODUCT_BLOCKS_ORDER" => "price,props,sku,quantityLimit,quantity,buttons",
"PRODUCT_ID_VARIABLE" => "id",
"PRODUCT_PROPS_VARIABLE" => "prop",
"PRODUCT_QUANTITY_VARIABLE" => "quantity",
"PRODUCT_ROW_VARIANTS" => "[{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':false}]",
"PRODUCT_SUBSCRIPTION" => "N",
"PROPERTY_CODE_MOBILE" => array("SERIES_LABEL", "TEHN", "APPLICATIONS", "VOLTAGE", "CAPACITY", "LONG", "WIDTH", "HEIGHT", "WEIGHT", "OUTPUT_TYPE", "LIFE_TIME", "DIMENSIONS_SCHEMA", "NAME_DOCUMENTATION_1", "DOCUMENTATION_1", "NAME_DOCUMENTATION_2", "DOCUMENTATION_2", "NAME_DOCUMENTATION_3", "DOCUMENTATION_3", "NAME_DOCUMENTATION_4", "DOCUMENTATION_4", "RECOMMEND", "BLOG_COMMENTS_CNT", "SPHERES"),
"RCM_PROD_ID" => $_REQUEST["PRODUCT_ID"],
"RCM_TYPE" => "personal",
"DETAIL_URL" => "/catalog/#SECTION_CODE#/#ELEMENT_CODE#/",
"SECTION_CODE_PATH" => $_REQUEST["SECTION_CODE_PATH"],
"SECTION_ID" => "",
"SECTION_ID_VARIABLE" => "SECTION_ID",
"SECTION_URL" => "/catalog/#SECTION_CODE#/",
"SECTION_USER_FIELDS" => array("", ""),
"SEF_MODE" => "Y",
"SEF_RULE" => "#SECTION_CODE#",
"SET_BROWSER_TITLE" => "Y",
"SET_LAST_MODIFIED" => "N",
"SET_META_DESCRIPTION" => "Y",
"SET_META_KEYWORDS" => "Y",
"SET_STATUS_404" => "N",
"SET_TITLE" => "Y",
"SHOW_404" => "N",
"SHOW_ALL_WO_SECTION" => "Y",
"SHOW_CLOSE_POPUP" => "N",
"SHOW_DISCOUNT_PERCENT" => "N",
"SHOW_FROM_SECTION" => "N",
"SHOW_MAX_QUANTITY" => "N",
"SHOW_OLD_PRICE" => "N",
"SHOW_PRICE_COUNT" => "1",
"SHOW_SLIDER" => "N",
"SLIDER_INTERVAL" => "3000",
"SLIDER_PROGRESS" => "N",
"TEMPLATE_THEME" => "blue",
"USE_ENHANCED_ECOMMERCE" => "N",
"USE_MAIN_ELEMENT_SECTION" => "N",
"USE_PRICE_COUNT" => "N",
"USE_PRODUCT_QUANTITY" => "N",
"SECTION_CODE" => $arResult["VARIABLES"]["SECTION_CODE"],
)
);?>
<div class="row">
<div class="col-md-12 text-center"><a href="/catalog/" class="button full_list">ПОКАЗАТЬ ПОЛНЫЙ СПИСОК →</a></div>
</div>
</div>
</section>
<section class="usage_section item_usage_section">
<div class="container">
<div class="row">
<div class="col-md-12">
<div class="h2_flex">
<h2 class="itemh2">Сферы применения</h2>
<div class="swiper_basic_controls">
<div class="control_prev"><img src="img/prev1.png" alt=""></div>
<div class="control_next"><img src="img/next1.png" alt=""></div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="fullw">
<div class="swiper swiper_usage">
<div class="swiper-wrapper">
<?foreach($arResult["DISPLAY_PROPERTIES"]["SPHERES"]["VALUE"] as $SpheresSnap):?>
<?$res = CIBlockElement::GetByID($SpheresSnap)?>
<?if($ar_res = $res->GetNext())?>
<div class="swiper-slide col3_wid">
<a href="<? echo $ar_res['DETAIL_TEXT']?>" class="usage_elem">
<div class="usage_img">
<?php echo CFile::ShowImage($ar_res['PREVIEW_PICTURE'], 325, 215, "border=0", "", false); ?>
</div>
<p class="usage_ttle"><?=$ar_res["NAME"];?></p>
<p class="usage_text">
<? echo $ar_res['PREVIEW_TEXT']?>
</p>
</a>
</div>
<?endforeach;?>
</div>
<div class="swiper-pagination"></div>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="inner_contact_section">
<div class="container">
<div class="row">
<div class="col-md-12">
<h2>Консультант <span>свяжется</span> с вами и <span>расскажет</span> <br>
о преимуществах нашего оборудования</h2>
<?$APPLICATION->IncludeComponent(
"kontactcomp:main.feedback",
"callForm",
Array(
"AJAX_MODE" => "Y",
"EMAIL_TO" => "evgeniy.mudrov@akku-vertrieb.ru, info@ventura-battery.com",
"EVENT_MESSAGE_ID" => array("7"),
"OK_TEXT" => "Спасибо, ваше сообщение принято.",
"USE_CAPTCHA" => "N"
)
);?>
</div>
</div>
</div>
</section>
</div>
Источник: Stack Overflow на русском