|
Я сделал копию. Каталог - копировать шаблон компонента. Зайдя в каталог - редактировать шаблон компонента открывается фаил element.php с кодом: Код |
---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
/** @var array $arParams */
/** @var array $arResult */
/** @global CMain $APPLICATION */
/** @global CUser $USER */
/** @global CDatabase $DB */
/** @var CBitrixComponentTemplate $this */
/** @var string $templateName */
/** @var string $templateFile */
/** @var string $templateFolder */
/** @var string $componentPath */
/** @var CBitrixComponent $component */
$this->setFrameMode(true);?>
<?$ElementID = $APPLICATION->IncludeComponent(
"bitrix:catalog.element",
"",
array(
"IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"],
"IBLOCK_ID" => $arParams["IBLOCK_ID"],
"PROPERTY_CODE" => $arParams["DETAIL_PROPERTY_CODE"],
"META_KEYWORDS" => $arParams["DETAIL_META_KEYWORDS"],
"META_DESCRIPTION" => $arParams["DETAIL_META_DESCRIPTION"],
"BROWSER_TITLE" => $arParams["DETAIL_BROWSER_TITLE"],
"BASKET_URL" => $arParams["BASKET_URL"],
"ACTION_VARIABLE" => $arParams["ACTION_VARIABLE"],
"PRODUCT_ID_VARIABLE" => $arParams["PRODUCT_ID_VARIABLE"],
"SECTION_ID_VARIABLE" => $arParams["SECTION_ID_VARIABLE"],
"PRODUCT_QUANTITY_VARIABLE" => $arParams["PRODUCT_QUANTITY_VARIABLE"],
"PRODUCT_PROPS_VARIABLE" => $arParams["PRODUCT_PROPS_VARIABLE"],
"CACHE_TYPE" => $arParams["CACHE_TYPE"],
"CACHE_TIME" => $arParams["CACHE_TIME"],
"CACHE_GROUPS" => $arParams["CACHE_GROUPS"],
"SET_TITLE" => $arParams["SET_TITLE"],
"SET_STATUS_404" => $arParams["SET_STATUS_404"],
"PRICE_CODE" => $arParams["PRICE_CODE"],
"USE_PRICE_COUNT" => $arParams["USE_PRICE_COUNT"],
"SHOW_PRICE_COUNT" => $arParams["SHOW_PRICE_COUNT"],
"PRICE_VAT_INCLUDE" => $arParams["PRICE_VAT_INCLUDE"],
"PRICE_VAT_SHOW_VALUE" => $arParams["PRICE_VAT_SHOW_VALUE"],
"USE_PRODUCT_QUANTITY" => $arParams['USE_PRODUCT_QUANTITY'],
"PRODUCT_PROPERTIES" => $arParams["PRODUCT_PROPERTIES"],
"ADD_PROPERTIES_TO_BASKET" => (isset($arParams["ADD_PROPERTIES_TO_BASKET"]) ? $arParams["ADD_PROPERTIES_TO_BASKET"] : ''),
"PARTIAL_PRODUCT_PROPERTIES" => (isset($arParams["PARTIAL_PRODUCT_PROPERTIES"]) ? $arParams["PARTIAL_PRODUCT_PROPERTIES"] : ''),
"LINK_IBLOCK_TYPE" => $arParams["LINK_IBLOCK_TYPE"],
"LINK_IBLOCK_ID" => $arParams["LINK_IBLOCK_ID"],
"LINK_PROPERTY_SID" => $arParams["LINK_PROPERTY_SID"],
"LINK_ELEMENTS_URL" => $arParams["LINK_ELEMENTS_URL"],
"OFFERS_CART_PROPERTIES" => $arParams["OFFERS_CART_PROPERTIES"],
"OFFERS_FIELD_CODE" => $arParams["DETAIL_OFFERS_FIELD_CODE"],
"OFFERS_PROPERTY_CODE" => $arParams["DETAIL_OFFERS_PROPERTY_CODE"],
"OFFERS_SORT_FIELD" => $arParams["OFFERS_SORT_FIELD"],
"OFFERS_SORT_ORDER" => $arParams["OFFERS_SORT_ORDER"],
"OFFERS_SORT_FIELD2" => $arParams["OFFERS_SORT_FIELD2"],
"OFFERS_SORT_ORDER2" => $arParams["OFFERS_SORT_ORDER2"],
"ELEMENT_ID" => $arResult["VARIABLES"]["ELEMENT_ID"],
"ELEMENT_CODE" => $arResult["VARIABLES"]["ELEMENT_CODE"],
"SECTION_ID" => $arResult["VARIABLES"]["SECTION_ID"],
"SECTION_CODE" => $arResult["VARIABLES"]["SECTION_CODE"],
"SECTION_URL" => $arResult["FOLDER"].$arResult["URL_TEMPLATES"]["section"],
"DETAIL_URL" => $arResult["FOLDER"].$arResult["URL_TEMPLATES"]["element"],
'CONVERT_CURRENCY' => $arParams['CONVERT_CURRENCY'],
'CURRENCY_ID' => $arParams['CURRENCY_ID'],
'HIDE_NOT_AVAILABLE' => $arParams["HIDE_NOT_AVAILABLE"],
'USE_ELEMENT_COUNTER' => $arParams['USE_ELEMENT_COUNTER'],
'ADD_PICT_PROP' => $arParams['ADD_PICT_PROP'],
'LABEL_PROP' => $arParams['LABEL_PROP'],
'OFFER_ADD_PICT_PROP' => $arParams['OFFER_ADD_PICT_PROP'],
'OFFER_TREE_PROPS' => $arParams['OFFER_TREE_PROPS'],
'PRODUCT_SUBSCRIPTION' => $arParams['PRODUCT_SUBSCRIPTION'],
'SHOW_DISCOUNT_PERCENT' => $arParams['SHOW_DISCOUNT_PERCENT'],
'SHOW_OLD_PRICE' => $arParams['SHOW_OLD_PRICE'],
'SHOW_MAX_QUANTITY' => $arParams['DETAIL_SHOW_MAX_QUANTITY'],
'MESS_BTN_BUY' => $arParams['MESS_BTN_BUY'],
'MESS_BTN_ADD_TO_BASKET' => $arParams['MESS_BTN_ADD_TO_BASKET'],
'MESS_BTN_SUBSCRIBE' => $arParams['MESS_BTN_SUBSCRIBE'],
'MESS_BTN_COMPARE' => $arParams['MESS_BTN_COMPARE'],
'MESS_NOT_AVAILABLE' => $arParams['MESS_NOT_AVAILABLE'],
'USE_VOTE_RATING' => $arParams['DETAIL_USE_VOTE_RATING'],
'VOTE_DISPLAY_AS_RATING' => (isset($arParams['DETAIL_VOTE_DISPLAY_AS_RATING']) ? $arParams['DETAIL_VOTE_DISPLAY_AS_RATING'] : ''),
'USE_COMMENTS' => $arParams['DETAIL_USE_COMMENTS'],
'BLOG_USE' => (isset($arParams['DETAIL_BLOG_USE']) ? $arParams['DETAIL_BLOG_USE'] : ''),
'BLOG_URL' => (isset($arParams['DETAIL_BLOG_URL']) ? $arParams['DETAIL_BLOG_URL'] : ''),
'VK_USE' => (isset($arParams['DETAIL_VK_USE']) ? $arParams['DETAIL_VK_USE'] : ''),
'VK_API_ID' => (isset($arParams['DETAIL_VK_API_ID']) ? $arParams['DETAIL_VK_API_ID'] : 'API_ID'),
'FB_USE' => (isset($arParams['DETAIL_FB_USE']) ? $arParams['DETAIL_FB_USE'] : ''),
'FB_APP_ID' => (isset($arParams['DETAIL_FB_APP_ID']) ? $arParams['DETAIL_FB_APP_ID'] : ''),
'BRAND_USE' => (isset($arParams['DETAIL_BRAND_USE']) ? $arParams['DETAIL_BRAND_USE'] : 'N'),
'BRAND_PROP_CODE' => (isset($arParams['DETAIL_BRAND_PROP_CODE']) ? $arParams['DETAIL_BRAND_PROP_CODE'] : ''),
'DISPLAY_NAME' => (isset($arParams['DETAIL_DISPLAY_NAME']) ? $arParams['DETAIL_DISPLAY_NAME'] : ''),
'ADD_DETAIL_TO_SLIDER' => (isset($arParams['DETAIL_ADD_DETAIL_TO_SLIDER']) ? $arParams['DETAIL_ADD_DETAIL_TO_SLIDER'] : ''),
'TEMPLATE_THEME' => (isset($arParams['TEMPLATE_THEME']) ? $arParams['TEMPLATE_THEME'] : ''),
"ADD_SECTIONS_CHAIN" => (isset($arParams["ADD_SECTIONS_CHAIN"]) ? $arParams["ADD_SECTIONS_CHAIN"] : ''),
"ADD_ELEMENT_CHAIN" => (isset($arParams["ADD_ELEMENT_CHAIN"]) ? $arParams["ADD_ELEMENT_CHAIN"] : ''),
"DISPLAY_PREVIEW_TEXT_MODE" => (isset($arParams['DETAIL_DISPLAY_PREVIEW_TEXT_MODE']) ? $arParams['DETAIL_DISPLAY_PREVIEW_TEXT_MODE'] : ''),
"DETAIL_PICTURE_MODE" => (isset($arParams['DETAIL_DETAIL_PICTURE_MODE']) ? $arParams['DETAIL_DETAIL_PICTURE_MODE'] : '')
),
$component
);?><?
if (0 < $ElementID)
{
$arRecomData = array();
$recomCacheID = array('IBLOCK_ID' => $arParams['IBLOCK_ID']);
$obCache = new CPHPCache();
if ($obCache->InitCache(36000, serialize($recomCacheID), "/catalog/recommended"))
{
$arRecomData = $obCache->GetVars();
}
elseif ($obCache->StartDataCache())
{
if (\Bitrix\Main\Loader::includeModule("catalog"))
{
$arSKU = CCatalogSKU::GetInfoByProductIBlock($arParams['IBLOCK_ID']);
$arRecomData['OFFER_IBLOCK_ID'] = (!empty($arSKU) ? $arSKU['IBLOCK_ID'] : 0);
$arRecomData['IBLOCK_LINK'] = '';
$arRecomData['ALL_LINK'] = '';
$rsProps = CIBlockProperty::GetList(
array('SORT' => 'ASC', 'ID' => 'ASC'),
array('IBLOCK_ID' => $arParams['IBLOCK_ID'], 'PROPERTY_TYPE' => 'E', 'ACTIVE' => 'Y')
);
$found = false;
while ($arProp = $rsProps->Fetch())
{
if ($found)
{
break;
}
if ($arProp['CODE'] == '')
{
$arProp['CODE'] = $arProp['ID'];
}
$arProp['LINK_IBLOCK_ID'] = intval($arProp['LINK_IBLOCK_ID']);
if ($arProp['LINK_IBLOCK_ID'] != 0 && $arProp['LINK_IBLOCK_ID'] != $arParams['IBLOCK_ID'])
{
continue;
}
if ($arProp['LINK_IBLOCK_ID'] > 0)
{
if ($arRecomData['IBLOCK_LINK'] == '')
{
$arRecomData['IBLOCK_LINK'] = $arProp['CODE'];
$found = true;
}
}
else
{
if ($arRecomData['ALL_LINK'] == '')
{
$arRecomData['ALL_LINK'] = $arProp['CODE'];
}
}
}
if ($found)
{
if(defined("BX_COMP_MANAGED_CACHE"))
{
global $CACHE_MANAGER;
$CACHE_MANAGER->StartTagCache("/catalog/recommended");
$CACHE_MANAGER->RegisterTag("iblock_id_".$arParams["IBLOCK_ID"]);
$CACHE_MANAGER->EndTagCache();
}
}
}
$obCache->EndDataCache($arRecomData);
}
if (!empty($arRecomData) && ($arRecomData['IBLOCK_LINK'] != '' || $arRecomData['ALL_LINK'] != ''))
{
?><?
$APPLICATION->IncludeComponent(
"bitrix:catalog.recommended.products",
"",
array(
"LINE_ELEMENT_COUNT" => $arParams["ALSO_BUY_ELEMENT_COUNT"],
"TEMPLATE_THEME" => (isset($arParams['TEMPLATE_THEME']) ? $arParams['TEMPLATE_THEME'] : ''),
"ID" => $ElementID,
"PROPERTY_LINK" => ($arRecomData['IBLOCK_LINK'] != '' ? $arRecomData['IBLOCK_LINK'] : $arRecomData['ALL_LINK']),
"CACHE_TYPE" => $arParams["CACHE_TYPE"],
"CACHE_TIME" => $arParams["CACHE_TIME"],
"BASKET_URL" => $arParams["BASKET_URL"],
"ACTION_VARIABLE" => $arParams["ACTION_VARIABLE"],
"PRODUCT_ID_VARIABLE" => $arParams["PRODUCT_ID_VARIABLE"],
"PRODUCT_QUANTITY_VARIABLE" => $arParams["PRODUCT_QUANTITY_VARIABLE"],
"ADD_PROPERTIES_TO_BASKET" => (isset($arParams["ADD_PROPERTIES_TO_BASKET"]) ? $arParams["ADD_PROPERTIES_TO_BASKET"] : ''),
"PRODUCT_PROPS_VARIABLE" => $arParams["PRODUCT_PROPS_VARIABLE"],
"PARTIAL_PRODUCT_PROPERTIES" => (isset($arParams["PARTIAL_PRODUCT_PROPERTIES"]) ? $arParams["PARTIAL_PRODUCT_PROPERTIES"] : ''),
"PAGE_ELEMENT_COUNT" => $arParams["ALSO_BUY_ELEMENT_COUNT"],
"SHOW_OLD_PRICE" => $arParams['SHOW_OLD_PRICE'],
"SHOW_DISCOUNT_PERCENT" => $arParams['SHOW_DISCOUNT_PERCENT'],
"PRICE_CODE" => $arParams["PRICE_CODE"],
"SHOW_PRICE_COUNT" => $arParams["SHOW_PRICE_COUNT"],
"PRODUCT_SUBSCRIPTION" => 'N',
"PRICE_VAT_INCLUDE" => $arParams["PRICE_VAT_INCLUDE"],
"USE_PRODUCT_QUANTITY" => $arParams['USE_PRODUCT_QUANTITY'],
"SHOW_NAME" => "Y",
"SHOW_IMAGE" => "Y",
"MESS_BTN_BUY" => $arParams['MESS_BTN_BUY'],
"MESS_BTN_DETAIL" => $arParams["MESS_BTN_DETAIL"],
"MESS_NOT_AVAILABLE" => $arParams['MESS_NOT_AVAILABLE'],
"MESS_BTN_SUBSCRIBE" => $arParams['MESS_BTN_SUBSCRIBE'],
"SHOW_PRODUCTS_".$arParams["IBLOCK_ID"] => "Y",
"HIDE_NOT_AVAILABLE" => $arParams["HIDE_NOT_AVAILABLE"],
"OFFER_TREE_PROPS_".$arRecomData['OFFER_IBLOCK_ID'] => $arParams["OFFER_TREE_PROPS"],
"PROPERTY_CODE_".$arRecomData['OFFER_IBLOCK_ID'] => array(),
"CONVERT_CURRENCY" => $arParams['CONVERT_CURRENCY']
),
$component,
array("HIDE_ICONS" => "Y")
);
?><?
}
if($arParams["USE_ALSO_BUY"] == "Y" && \Bitrix\Main\ModuleManager::isModuleInstalled("sale") && !empty($arRecomData))
{
?><?$APPLICATION->IncludeComponent("bitrix:sale.recommended.products", ".default", array(
"ID" => $ElementID,
"TEMPLATE_THEME" => (isset($arParams['TEMPLATE_THEME']) ? $arParams['TEMPLATE_THEME'] : ''),
"MIN_BUYES" => $arParams["ALSO_BUY_MIN_BUYES"],
"ELEMENT_COUNT" => $arParams["ALSO_BUY_ELEMENT_COUNT"],
"LINE_ELEMENT_COUNT" => $arParams["ALSO_BUY_ELEMENT_COUNT"],
"DETAIL_URL" => $arParams["DETAIL_URL"],
"BASKET_URL" => $arParams["BASKET_URL"],
"ACTION_VARIABLE" => $arParams["ACTION_VARIABLE"],
"PRODUCT_ID_VARIABLE" => $arParams["PRODUCT_ID_VARIABLE"],
"SECTION_ID_VARIABLE" => $arParams["SECTION_ID_VARIABLE"],
"PAGE_ELEMENT_COUNT" => $arParams["ALSO_BUY_ELEMENT_COUNT"],
"CACHE_TYPE" => $arParams["CACHE_TYPE"],
"CACHE_TIME" => $arParams["CACHE_TIME"],
"PRICE_CODE" => $arParams["PRICE_CODE"],
"USE_PRICE_COUNT" => $arParams["USE_PRICE_COUNT"],
"SHOW_PRICE_COUNT" => $arParams["SHOW_PRICE_COUNT"],
"PRICE_VAT_INCLUDE" => $arParams["PRICE_VAT_INCLUDE"],
'CONVERT_CURRENCY' => $arParams['CONVERT_CURRENCY'],
'CURRENCY_ID' => $arParams['CURRENCY_ID'],
'HIDE_NOT_AVAILABLE' => $arParams["HIDE_NOT_AVAILABLE"],
"SHOW_PRODUCTS_".$arParams["IBLOCK_ID"] => "Y",
"PROPERTY_CODE_".$arRecomData['OFFER_IBLOCK_ID'] => array( ),
"OFFER_TREE_PROPS_".$arRecomData['OFFER_IBLOCK_ID'] => $arParams["OFFER_TREE_PROPS"]
),
$component
);
?><?
}
if($arParams["USE_STORE"] == "Y" && \Bitrix\Main\ModuleManager::isModuleInstalled("catalog"))
{
?><?$APPLICATION->IncludeComponent("bitrix:catalog.store.amount", ".default", array(
"PER_PAGE" => "10",
"USE_STORE_PHONE" => $arParams["USE_STORE_PHONE"],
"SCHEDULE" => $arParams["USE_STORE_SCHEDULE"],
"USE_MIN_AMOUNT" => $arParams["USE_MIN_AMOUNT"],
"MIN_AMOUNT" => $arParams["MIN_AMOUNT"],
"ELEMENT_ID" => $ElementID,
"STORE_PATH" => $arParams["STORE_PATH"],
"MAIN_TITLE" => $arParams["MAIN_TITLE"],
),
$component
);?><?
}
}
?> |
А зайдя по пути /bitrix/templates/.default/components/bitrix/catalog/template1/bitrix/catalog.element/.default в файле template.php следующий код. Код |
---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
/** @var array $arParams */
/** @var array $arResult */
/** @global CMain $APPLICATION */
/** @global CUser $USER */
/** @global CDatabase $DB */
/** @var CBitrixComponentTemplate $this */
/** @var string $templateName */
/** @var string $templateFile */
/** @var string $templateFolder */
/** @var string $componentPath */
/** @var CBitrixComponent $component */
$this->setFrameMode(true);
$templateData = array(
'TEMPLATE_THEME' => $this->GetFolder().'/themes/'.$arParams['TEMPLATE_THEME'].'/style.css',
'TEMPLATE_CLASS' => 'bx_'.$arParams['TEMPLATE_THEME']
);
$strMainID = $this->GetEditAreaId($arResult['ID']);
$arItemIDs = array(
'ID' => $strMainID,
'PICT' => $strMainID.'_pict',
'DISCOUNT_PICT_ID' => $strMainID.'_dsc_pict',
'STICKER_ID' => $strMainID.'_sticker',
'BIG_SLIDER_ID' => $strMainID.'_big_slider',
'BIG_IMG_CONT_ID' => $strMainID.'_bigimg_cont',
'SLIDER_CONT_ID' => $strMainID.'_slider_cont',
'SLIDER_LIST' => $strMainID.'_slider_list',
'SLIDER_LEFT' => $strMainID.'_slider_left',
'SLIDER_RIGHT' => $strMainID.'_slider_right',
'OLD_PRICE' => $strMainID.'_old_price',
'PRICE' => $strMainID.'_price',
'DISCOUNT_PRICE' => $strMainID.'_price_discount',
'SLIDER_CONT_OF_ID' => $strMainID.'_slider_cont_',
'SLIDER_LIST_OF_ID' => $strMainID.'_slider_list_',
'SLIDER_LEFT_OF_ID' => $strMainID.'_slider_left_',
'SLIDER_RIGHT_OF_ID' => $strMainID.'_slider_right_',
'QUANTITY' => $strMainID.'_quantity',
'QUANTITY_DOWN' => $strMainID.'_quant_down',
'QUANTITY_UP' => $strMainID.'_quant_up',
'QUANTITY_MEASURE' => $strMainID.'_quant_measure',
'QUANTITY_LIMIT' => $strMainID.'_quant_limit',
'BUY_LINK' => $strMainID.'_buy_link',
'ADD_BASKET_LINK' => $strMainID.'_add_basket_link',
'COMPARE_LINK' => $strMainID.'_compare_link',
'PROP' => $strMainID.'_prop_',
'PROP_DIV' => $strMainID.'_skudiv',
'DISPLAY_PROP_DIV' => $strMainID.'_sku_prop',
'OFFER_GROUP' => $strMainID.'_set_group_',
'BASKET_PROP_DIV' => $strMainID.'_basket_prop',
);
$strObName = 'ob'.preg_replace("/[^a-zA-Z0-9_]/", "x", $strMainID);
$templateData['JS_OBJ'] = $strObName;
$strTitle = (
isset($arResult["IPROPERTY_VALUES"]["ELEMENT_DETAIL_PICTURE_FILE_TITLE"]) && '' != $arResult["IPROPERTY_VALUES"]["ELEMENT_DETAIL_PICTURE_FILE_TITLE"]
? $arResult["IPROPERTY_VALUES"]["ELEMENT_DETAIL_PICTURE_FILE_TITLE"]
: $arResult['NAME']
);
$strAlt = (
isset($arResult["IPROPERTY_VALUES"]["ELEMENT_DETAIL_PICTURE_FILE_ALT"]) && '' != $arResult["IPROPERTY_VALUES"]["ELEMENT_DETAIL_PICTURE_FILE_ALT"]
? $arResult["IPROPERTY_VALUES"]["ELEMENT_DETAIL_PICTURE_FILE_ALT"]
: $arResult['NAME']
);
?><div class="bx_item_detail <? echo $templateData['TEMPLATE_CLASS']; ?>" id="<? echo $arItemIDs['ID']; ?>">
<?
if ('Y' == $arParams['DISPLAY_NAME'])
{
?>
<div class="bx_item_title">
<h1>
<span><? echo (
isset($arResult["IPROPERTY_VALUES"]["ELEMENT_PAGE_TITLE"]) && '' != $arResult["IPROPERTY_VALUES"]["ELEMENT_PAGE_TITLE"]
? $arResult["IPROPERTY_VALUES"]["ELEMENT_PAGE_TITLE"]
: $arResult["NAME"]
); ?></span>
</h1>
</div>
<?
}
reset($arResult['MORE_PHOTO']);
$arFirstPhoto = current($arResult['MORE_PHOTO']);
?>
<div class="bx_item_container">
<div class="bx_lt">
<div class="bx_item_slider" id="<? echo $arItemIDs['BIG_SLIDER_ID']; ?>">
<div class="bx_bigimages" id="<? echo $arItemIDs['BIG_IMG_CONT_ID']; ?>">
<div class="bx_bigimages_imgcontainer">
<span class="bx_bigimages_aligner"><img
id="<? echo $arItemIDs['PICT']; ?>"
src="<? echo $arFirstPhoto['SRC']; ?>"
alt="<? echo $strAlt; ?>"
title="<? echo $strTitle; ?>"
></span>
<?
if ('Y' == $arParams['SHOW_DISCOUNT_PERCENT'])
{
?>
<div class="bx_stick_disc" id="<? echo $arItemIDs['DISCOUNT_PICT_ID'] ?>" style="display: none;"></div>
<?
}
if ($arResult['LABEL'])
{
?>
<div class="bx_stick new" id="<? echo $arItemIDs['STICKER_ID'] ?>"><? echo $arResult['LABEL_VALUE']; ?></div>
<?
}
?>
</div>
</div>
<?
if ($arResult['SHOW_SLIDER'])
{
if (!isset($arResult['OFFERS']) || empty($arResult['OFFERS']))
{
if (5 < $arResult['MORE_PHOTO_COUNT'])
{
$strClass = 'bx_slider_conteiner full';
$strOneWidth = (100/$arResult['MORE_PHOTO_COUNT']).'%';
$strWidth = (20*$arResult['MORE_PHOTO_COUNT']).'%';
$strSlideStyle = '';
}
else
{
$strClass = 'bx_slider_conteiner';
$strOneWidth = '20%';
$strWidth = '100%';
$strSlideStyle = 'display: none;';
}
?>
<div class="<? echo $strClass; ?>" id="<? echo $arItemIDs['SLIDER_CONT_ID']; ?>">
<div class="bx_slider_scroller_container">
<div class="bx_slide">
<ul st yle="width: <? echo $strWidth; ?>;" id="<? echo $arItemIDs['SLIDER_LIST']; ?>">
<?
foreach ($arResult['MORE_PHOTO'] as &$arOnePhoto)
{
?>
<li data-value="<? echo $arOnePhoto['ID']; ?>" st yle="width: <? echo $strOneWidth; ?>; padding-top: <? echo $strOneWidth; ?>;"><span class="cnt"><span class="cnt_item" st yle="background-image:url('<? echo $arOnePhoto['SRC']; ?>');"></span></span></li>
<?
}
unset($arOnePhoto);
?>
</ul>
</div>
<div class="bx_slide_left" id="<? echo $arItemIDs['SLIDER_LEFT']; ?>" st yle="<? echo $strSlideStyle; ?>"></div>
<div class="bx_slide_right" id="<? echo $arItemIDs['SLIDER_RIGHT']; ?>" st yle="<? echo $strSlideStyle; ?>"></div>
</div>
</div>
<?
}
else
{
foreach ($arResult['OFFERS'] as $key => $arOneOffer)
{
if (!isset($arOneOffer['MORE_PHOTO_COUNT']) || 0 >= $arOneOffer['MORE_PHOTO_COUNT'])
continue;
$strVisible = ($key == $arResult['OFFERS_SELECTED'] ? '' : 'none');
if (5 < $arOneOffer['MORE_PHOTO_COUNT'])
{
$strClass = 'bx_slider_conteiner full';
$strOneWidth = (100/$arOneOffer['MORE_PHOTO_COUNT']).'%';
$strWidth = (20*$arOneOffer['MORE_PHOTO_COUNT']).'%';
$strSlideStyle = '';
}
else
{
$strClass = 'bx_slider_conteiner';
$strOneWidth = '20%';
$strWidth = '100%';
$strSlideStyle = 'display: none;';
}
?>
<div class="<? echo $strClass; ?>" id="<? echo $arItemIDs['SLIDER_CONT_OF_ID'].$arOneOffer['ID']; ?>" st yle="display: <? echo $strVisible; ?>;">
<div class="bx_slider_scroller_container">
<div class="bx_slide">
<ul st yle="width: <? echo $strWidth; ?>;" id="<? echo $arItemIDs['SLIDER_LIST_OF_ID'].$arOneOffer['ID']; ?>">
<?
foreach ($arOneOffer['MORE_PHOTO'] as &$arOnePhoto)
{
?>
<li data-value="<? echo $arOneOffer['ID'].'_'.$arOnePhoto['ID']; ?>" st yle="width: <? echo $strOneWidth; ?>; padding-top: <? echo $strOneWidth; ?>"><span class="cnt"><span class="cnt_item" st yle="background-image:url('<? echo $arOnePhoto['SRC']; ?>');"></span></span></li>
<?
}
unset($arOnePhoto);
?>
</ul>
</div>
<div class="bx_slide_left" id="<? echo $arItemIDs['SLIDER_LEFT_OF_ID'].$arOneOffer['ID'] ?>" st yle="<? echo $strSlideStyle; ?>" data-value="<? echo $arOneOffer['ID']; ?>"></div>
<div class="bx_slide_right" id="<? echo $arItemIDs['SLIDER_RIGHT_OF_ID'].$arOneOffer['ID'] ?>" st yle="<? echo $strSlideStyle; ?>" data-value="<? echo $arOneOffer['ID']; ?>"></div>
</div>
</div>
<?
}
}
}
?>
</div>
</div>
<div class="bx_rt">
<?
$useBrands = ('Y' == $arParams['BRAND_USE']);
$useVoteRating = ('Y' == $arParams['USE_VOTE_RATING']);
if ($useBrands || $useVoteRating)
{
?>
<div class="bx_optionblock">
<?
if ($useVoteRating)
{
?><?$APPLICATION->IncludeComponent(
"bitrix:iblock.vote",
"stars",
array(
"IBLOCK_TYPE" => $arParams['IBLOCK_TYPE'],
"IBLOCK_ID" => $arParams['IBLOCK_ID'],
"ELEMENT_ID" => $arResult['ID'],
"ELEMENT_CODE" => "",
"MAX_VOTE" => "5",
"VOTE_NAMES" => array("1", "2", "3", "4", "5"),
"SET_STATUS_404" => "N",
"DISPLAY_AS_RATING" => $arParams['VOTE_DISPLAY_AS_RATING'],
"CACHE_TYPE" => $arParams['CACHE_TYPE'],
"CACHE_TIME" => $arParams['CACHE_TIME']
),
$component,
array("HIDE_ICONS" => "Y")
);?><?
}
if ($useBrands)
{
?><?$APPLICATION->IncludeComponent("bitrix:catalog.brandblock", ".default", array(
"IBLOCK_TYPE" => $arParams['IBLOCK_TYPE'],
"IBLOCK_ID" => $arParams['IBLOCK_ID'],
"ELEMENT_ID" => $arResult['ID'],
"ELEMENT_CODE" => "",
"PROP_CODE" => $arParams['BRAND_PROP_CODE'],
"CACHE_TYPE" => $arParams['CACHE_TYPE'],
"CACHE_TIME" => $arParams['CACHE_TIME'],
"CACHE_GROUPS" => $arParams['CACHE_GROUPS'],
"WIDTH" => "",
"HEIGHT" => ""
),
$component,
array("HIDE_ICONS" => "Y")
);?><?
}
?>
</div>
<?
}
unset($useVoteRating);
unset($useBrands);
?>
<div class="item_price">
<?
$boolDiscountShow = (0 < $arResult['MIN_PRICE']['DISCOUNT_DIFF']);
?>
<div class="item_old_price" id="<? echo $arItemIDs['OLD_PRICE']; ?>" st yle="display: <? echo ($boolDiscountShow ? '' : 'none'); ?>"><? echo ($boolDiscountShow ? $arResult['MIN_PRICE']['PRINT_VALUE'] : ''); ?></div>
<div class="item_current_price" id="<? echo $arItemIDs['PRICE']; ?>"><? echo $arResult['MIN_PRICE']['PRINT_DISCOUNT_VALUE']; ?></div>
<div class="item_economy_price" id="<? echo $arItemIDs['DISCOUNT_PRICE']; ?>" st yle="display: <? echo ($boolDiscountShow ? '' : 'none'); ?>"><? echo ($boolDiscountShow ? GetMessage('ECONOMY_INFO', array('#ECONOMY#' => $arResult['MIN_PRICE']['PRINT_DISCOUNT_DIFF'])) : ''); ?></div>
</div>
<?
if (!empty($arResult['DISPLAY_PROPERTIES']) || $arResult['SHOW_OFFERS_PROPS'])
{
?>
<div class="item_info_section">
<?
if (!empty($arResult['DISPLAY_PROPERTIES']))
{
?>
<dl>
<?
foreach ($arResult['DISPLAY_PROPERTIES'] as &$arOneProp)
{
?>
<dt><? echo $arOneProp['NAME']; ?></dt><?
echo '<dd>', (
is_array($arOneProp['DISPLAY_VALUE'])
? implode(' / ', $arOneProp['DISPLAY_VALUE'])
: $arOneProp['DISPLAY_VALUE']
), '</dd>';
}
unset($arOneProp);
?>
</dl>
<?
}
if ($arResult['SHOW_OFFERS_PROPS'])
{
?>
<dl id="<? echo $arItemIDs['DISPLAY_PROP_DIV'] ?>" style="display: none;"></dl>
<?
}
?>
</div>
<?
}
if ('' != $arResult['PREVIEW_TEXT'])
{
if (
'S' == $arParams['DISPLAY_PREVIEW_TEXT_MODE']
|| ('E' == $arParams['DISPLAY_PREVIEW_TEXT_MODE'] && '' == $arResult['DETAIL_TEXT'])
)
{
?>
<div class="item_info_section">
<?
echo ('html' == $arResult['PREVIEW_TEXT_TYPE'] ? $arResult['PREVIEW_TEXT'] : '<p>'.$arResult['PREVIEW_TEXT'].'</p>');
?>
</div>
<?
}
}
if (isset($arResult['OFFERS']) && !empty($arResult['OFFERS']) && !empty($arResult['OFFERS_PROP']))
{
$arSkuProps = array();
?>
<div class="item_info_section" style="padding-right:150px;" id="<? echo $arItemIDs['PROP_DIV']; ?>">
<?
foreach ($arResult['SKU_PROPS'] as &$arProp)
{
if (!isset($arResult['OFFERS_PROP'][$arProp['CODE']]))
continue;
$arSkuProps[] = array(
'ID' => $arProp['ID'],
'SHOW_MODE' => $arProp['SHOW_MODE'],
'VALUES_COUNT' => $arProp['VALUES_COUNT']
);
if ('TEXT' == $arProp['SHOW_MODE'])
{
if (5 < $arProp['VALUES_COUNT'])
{
$strClass = 'bx_item_detail_size full';
$strOneWidth = (100/$arProp['VALUES_COUNT']).'%';
$strWidth = (20*$arProp['VALUES_COUNT']).'%';
$strSlideStyle = '';
}
else
{
$strClass = 'bx_item_detail_size';
$strOneWidth = '20%';
$strWidth = '100%';
$strSlideStyle = 'display: none;';
}
?>
<div class="<? echo $strClass; ?>" id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_cont">
<span class="bx_item_section_name_gray"><? echo htmlspecialcharsex($arProp['NAME']); ?></span>
<div class="bx_size_scroller_container"><div class="bx_size">
<ul id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_list" st yle="width: <? echo $strWidth; ?>;margin-left:0%;">
<?
foreach ($arProp['VALUES'] as $arOneValue)
{
?>
<li
data-treevalue="<? echo $arProp['ID'].'_'.$arOneValue['ID']; ?>"
data-on evalue="<? echo $arOneValue['ID']; ?>"
st yle="width: <? echo $strOneWidth; ?>; display: none;"
><i></i><span class="cnt"><? echo htmlspecialcharsex($arOneValue['NAME']); ?></span></li>
<?
}
?>
</ul>
</div>
<div class="bx_slide_left" st yle="<? echo $strSlideStyle; ?>" id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_left" data-treevalue="<? echo $arProp['ID']; ?>"></div>
<div class="bx_slide_right" st yle="<? echo $strSlideStyle; ?>" id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_right" data-treevalue="<? echo $arProp['ID']; ?>"></div>
</div>
</div>
<?
}
elseif ('PICT' == $arProp['SHOW_MODE'])
{
if (5 < $arProp['VALUES_COUNT'])
{
$strClass = 'bx_item_detail_scu full';
$strOneWidth = (100/$arProp['VALUES_COUNT']).'%';
$strWidth = (20*$arProp['VALUES_COUNT']).'%';
$strSlideStyle = '';
}
else
{
$strClass = 'bx_item_detail_scu';
$strOneWidth = '20%';
$strWidth = '100%';
$strSlideStyle = 'display: none;';
}
?>
<div class="<? echo $strClass; ?>" id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_cont">
<span class="bx_item_section_name_gray"><? echo htmlspecialcharsex($arProp['NAME']); ?></span>
<div class="bx_scu_scroller_container"><div class="bx_scu">
<ul id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_list" st yle="width: <? echo $strWidth; ?>;margin-left:0%;">
<?
foreach ($arProp['VALUES'] as $arOneValue)
{
?>
<li
data-treevalue="<? echo $arProp['ID'].'_'.$arOneValue['ID'] ?>"
data-on evalue="<? echo $arOneValue['ID']; ?>"
st yle="width: <? echo $strOneWidth; ?>; padding-top: <? echo $strOneWidth; ?>; display: none;"
><i title="<? echo htmlspecialcharsbx($arOneValue['NAME']); ?>"></i>
<span class="cnt"><span class="cnt_item"
st yle="background-image:url('<? echo $arOneValue['PICT']['SRC']; ?>');"
title="<? echo htmlspecialcharsbx($arOneValue['NAME']); ?>"
></span></span></li>
<?
}
?>
</ul>
</div>
<div class="bx_slide_left" st yle="<? echo $strSlideStyle; ?>" id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_left" data-treevalue="<? echo $arProp['ID']; ?>"></div>
<div class="bx_slide_right" st yle="<? echo $strSlideStyle; ?>" id="<? echo $arItemIDs['PROP'].$arProp['ID']; ?>_right" data-treevalue="<? echo $arProp['ID']; ?>"></div>
</div>
</div>
<?
}
}
unset($arProp);
?>
</div>
<?
}
?>
<div class="item_info_section">
<?
if (isset($arResult['OFFERS']) && !empty($arResult['OFFERS']))
{
$canBuy = $arResult['OFFERS'][$arResult['OFFERS_SELECTED']]['CAN_BUY'];
}
else
{
$canBuy = $arResult['CAN_BUY'];
}
if ($canBuy)
{
$buyBtnMessage = ('' != $arParams['MESS_BTN_BUY'] ? $arParams['MESS_BTN_BUY'] : GetMessage('CT_BCE_CATALOG_BUY'));
$buyBtnClass = 'bx_big bx_bt_button bx_cart';
}
else
{
$buyBtnMessage = ('' != $arParams['MESS_NOT_AVAILABLE'] ? $arParams['MESS_NOT_AVAILABLE'] : GetMessageJS('CT_BCE_CATALOG_NOT_AVAILABLE'));
$buyBtnClass = 'bx_big bx_bt_button_type_2 bx_cart';
}
if ('Y' == $arParams['USE_PRODUCT_QUANTITY'])
{
?>
<span class="item_section_name_gray"><? echo GetMessage('CATALOG_QUANTITY'); ?></span>
<div class="item_buttons vam">
<span class="item_buttons_counter_block">
<a href="jav * ascript:void(0)" class="bx_bt_button_type_2 bx_small bx_fwb" id="<? echo $arItemIDs['QUANTITY_DOWN']; ?>">-</a>
<input id="<? echo $arItemIDs['QUANTITY']; ?>" type="text" class="tac transparent_input" value="<? echo (isset($arResult['OFFERS']) && !empty($arResult['OFFERS'])
? 1
: $arResult['CATALOG_MEASURE_RATIO']
); ?>">
<a href="jav * ascript:void(0)" class="bx_bt_button_type_2 bx_small bx_fwb" id="<? echo $arItemIDs['QUANTITY_UP']; ?>">+</a>
<span class="bx_cnt_desc" id="<? echo $arItemIDs['QUANTITY_MEASURE']; ?>"><? echo (isset($arResult['CATALOG_MEASURE_NAME']) ? $arResult['CATALOG_MEASURE_NAME'] : ''); ?></span>
</span>
<span class="item_buttons_counter_block">
<a href="jav * ascript:void(0);" class="<? echo $buyBtnClass; ?>" id="<? echo $arItemIDs['BUY_LINK']; ?>"><span></span><? echo $buyBtnMessage; ?></a>
<?
if ('Y' == $arParams['DISPLAY_COMPARE'])
{
?>
<a href="jav * ascript:void(0)" class="bx_big bx_bt_button_type_2 bx_cart" style="margin-left: 10px"><? echo ('' != $arParams['MESS_BTN_COMPARE']
? $arParams['MESS_BTN_COMPARE']
: GetMessage('CT_BCE_CATALOG_COMPARE')
); ?></a>
<?
}
?>
</span>
</div>
<?
if ('Y' == $arParams['SHOW_MAX_QUANTITY'])
{
if (isset($arResult['OFFERS']) && !empty($arResult['OFFERS']))
{
?>
<p id="<? echo $arItemIDs['QUANTITY_LIMIT']; ?>" style="display: none;"><? echo GetMessage('OSTATOK'); ?>: <span></span></p>
<?
}
else
{
if ('Y' == $arResult['CATALOG_QUANTITY_TRACE'] && 'N' == $arResult['CATALOG_CAN_BUY_ZERO'])
{
?>
<p id="<? echo $arItemIDs['QUANTITY_LIMIT']; ?>"><? echo GetMessage('OSTATOK'); ?>: <span><? echo $arResult['CATALOG_QUANTITY']; ?></span></p>
<?
}
}
}
}
else
{
?>
<div class="item_buttons vam">
<span class="item_buttons_counter_block">
<a href="jav * ascript:void(0);" class="<? echo $buyBtnClass; ?>" id="<? echo $arItemIDs['BUY_LINK']; ?>"><span></span><? echo $buyBtnMessage; ?></a>
<?
if ('Y' == $arParams['DISPLAY_COMPARE'])
{
?>
<a id="<? echo $arItemIDs['COMPARE_LINK']; ?>" href="jav * ascript:void(0)" class="bx_big bx_bt_button_type_2 bx_cart" style="margin-left: 10px"><? echo ('' != $arParams['MESS_BTN_COMPARE']
? $arParams['MESS_BTN_COMPARE']
: GetMessage('CT_BCE_CATALOG_COMPARE')
); ?></a>
<?
}
?>
</span>
</div>
<?
}
?>
</div>
<div class="clb"></div>
</div>
<div class="bx_md">
<div class="item_info_section">
<?
if (isset($arResult['OFFERS']) && !empty($arResult['OFFERS']))
{
if ($arResult['OFFER_GROUP'])
{
foreach ($arResult['OFFERS'] as $arOffer)
{
if (!$arOffer['OFFER_GROUP'])
continue;
?>
<span id="<? echo $arItemIDs['OFFER_GROUP'].$arOffer['ID']; ?>" style="display: none;">
<?$APPLICATION->IncludeComponent("bitrix:catalog.set.constructor",
".default",
array(
"IBLOCK_ID" => $arResult["OFFERS_IBLOCK"],
"ELEMENT_ID" => $arOffer['ID'],
"PRICE_CODE" => $arParams["PRICE_CODE"],
"BASKET_URL" => $arParams["BASKET_URL"],
"OFFERS_CART_PROPERTIES" => $arParams["OFFERS_CART_PROPERTIES"],
"CACHE_TYPE" => $arParams["CACHE_TYPE"],
"CACHE_TIME" => $arParams["CACHE_TIME"],
"CACHE_GROUPS" => $arParams["CACHE_GROUPS"],
),
$component,
array("HIDE_ICONS" => "Y")
);?><?
?>
</span>
<?
}
}
}
else
{
if ($arResult['MODULES']['catalog'])
{
?><?$APPLICATION->IncludeComponent("bitrix:catalog.set.constructor",
".default",
array(
"IBLOCK_ID" => $arParams["IBLOCK_ID"],
"ELEMENT_ID" => $arResult["ID"],
"PRICE_CODE" => $arParams["PRICE_CODE"],
"BASKET_URL" => $arParams["BASKET_URL"],
"CACHE_TYPE" => $arParams["CACHE_TYPE"],
"CACHE_TIME" => $arParams["CACHE_TIME"],
"CACHE_GROUPS" => $arParams["CACHE_GROUPS"],
),
$component,
array("HIDE_ICONS" => "Y")
);?><?
}
}
?>
</div>
</div>
<div class="bx_rb">
<div class="item_info_section">
<?
if ('' != $arResult['DETAIL_TEXT'])
{
?>
<div class="bx_item_description">
<div class="bx_item_section_name_gray" style="border-bottom: 1px solid #f2f2f2;"><? echo GetMessage('FULL_DESCRIPTION'); ?></div>
<?
if ('html' == $arResult['DETAIL_TEXT_TYPE'])
{
echo $arResult['DETAIL_TEXT'];
}
else
{
?><p><? echo $arResult['DETAIL_TEXT']; ?></p><?
}
?>
</div>
<?
}
?>
</div>
</div>
<div class="bx_lb">
<div class="tac ovh">
</div>
<div class="tab-section-container">
<?
if ('Y' == $arParams['USE_COMMENTS'])
{
?>
<?$APPLICATION->IncludeComponent(
"bitrix:catalog.comments",
"",
array(
"ELEMENT_ID" => $arResult['ID'],
"ELEMENT_CODE" => "",
"IBLOCK_ID" => $arParams['IBLOCK_ID'],
"URL_TO_COMMENT" => "",
"WIDTH" => "",
"COMMENTS_COUNT" => "5",
"BLOG_USE" => $arParams['BLOG_USE'],
"FB_USE" => $arParams['FB_USE'],
"FB_APP_ID" => $arParams['FB_APP_ID'],
"VK_USE" => $arParams['VK_USE'],
"VK_API_ID" => $arParams['VK_API_ID'],
"CACHE_TYPE" => $arParams['CACHE_TYPE'],
"CACHE_TIME" => $arParams['CACHE_TIME'],
"BLOG_TITLE" => "",
"BLOG_URL" => $arParams['BLOG_URL'],
"PATH_TO_SMILE" => "",
"EMAIL_NOTIFY" => "N",
"AJAX_POST" => "Y",
"SHOW_SPAM" => "Y",
"SHOW_RATING" => "N",
"FB_TITLE" => "",
"FB_USER_ADMIN_ID" => "",
"FB_COLORSCHEME" => "light",
"FB_ORDER_BY" => "reverse_time",
"VK_TITLE" => "",
"TEMPLATE_THEME" => $arParams['~TEMPLATE_THEME']
),
$component,
array("HIDE_ICONS" => "Y")
);?>
<?
}
?>
</div>
</div>
<div style="clear: both;"></div>
</div>
<div class="clb"></div>
</div><?
if (isset($arResult['OFFERS']) && !empty($arResult['OFFERS']))
{
foreach ($arResult['JS_OFFERS'] as &$arOneJS)
{
if ($arOneJS['PRICE']['DISCOUNT_VALUE'] != $arOneJS['PRICE']['VALUE'])
{
$arOneJS['PRICE']['PRINT_DISCOUNT_DIFF'] = GetMessage('ECONOMY_INFO', array('#ECONOMY#' => $arOneJS['PRICE']['PRINT_DISCOUNT_DIFF']));
$arOneJS['PRICE']['DISCOUNT_DIFF_PERCENT'] = -$arOneJS['PRICE']['DISCOUNT_DIFF_PERCENT'];
}
$strProps = '';
if ($arResult['SHOW_OFFERS_PROPS'])
{
if (!empty($arOneJS['DISPLAY_PROPERTIES']))
{
foreach ($arOneJS['DISPLAY_PROPERTIES'] as $arOneProp)
{
$strProps .= '<dt>'.$arOneProp['NAME'].'</dt><dd>'.(
is_array($arOneProp['VALUE'])
? implode(' / ', $arOneProp['VALUE'])
: $arOneProp['VALUE']
).'</dd>';
}
}
}
$arOneJS['DISPLAY_PROPERTIES'] = $strProps;
}
if (isset($arOneJS))
unset($arOneJS);
$arJSParams = array(
'CONFIG' => array(
'USE_CATALOG' => $arResult['CATALOG'],
'SHOW_QUANTITY' => $arParams['USE_PRODUCT_QUANTITY'],
'SHOW_PRICE' => true,
'SHOW_DISCOUNT_PERCENT' => ('Y' == $arParams['SHOW_DISCOUNT_PERCENT']),
'SHOW_OLD_PRICE' => ('Y' == $arParams['SHOW_OLD_PRICE']),
'DISPLAY_COMPARE' => ('Y' == $arParams['DISPLAY_COMPARE']),
'SHOW_SKU_PROPS' => $arResult['SHOW_OFFERS_PROPS'],
'OFFER_GROUP' => $arResult['OFFER_GROUP'],
'MAIN_PICTURE_MODE' => $arParams['DETAIL_PICTURE_MODE']
),
'PRODUCT_TYPE' => $arResult['CATALOG_TYPE'],
'VISUAL' => array(
'ID' => $arItemIDs['ID'],
),
'DEFAULT_PICTURE' => array(
'PREVIEW_PICTURE' => $arResult['DEFAULT_PICTURE'],
'DETAIL_PICTURE' => $arResult['DEFAULT_PICTURE']
),
'PRODUCT' => array(
'ID' => $arResult['ID'],
'NAME' => $arResult['~NAME']
),
'BASKET' => array(
'QUANTITY' => $arParams['PRODUCT_QUANTITY_VARIABLE'],
'BASKET_URL' => $arParams['BASKET_URL'],
'SKU_PROPS' => $arResult['OFFERS_PROP_CODES']
),
'OFFERS' => $arResult['JS_OFFERS'],
'OFFER_SELECTED' => $arResult['OFFERS_SELECTED'],
'TREE_PROPS' => $arSkuProps
);
}
else
{
$emptyProductProperties = empty($arResult['PRODUCT_PROPERTIES']);
if ('Y' == $arParams['ADD_PROPERTIES_TO_BASKET'] && !$emptyProductProperties)
{
?>
<div id="<? echo $arItemIDs['BASKET_PROP_DIV']; ?>" style="display: none;">
<?
if (!empty($arResult['PRODUCT_PROPERTIES_FILL']))
{
foreach ($arResult['PRODUCT_PROPERTIES_FILL'] as $propID => $propInfo)
{
?>
<input
type="hidden"
name="<? echo $arParams['PRODUCT_PROPS_VARIABLE']; ?>[<? echo $propID; ?>]"
value="<? echo htmlspecialcharsbx($propInfo['ID']); ?>"
>
<?
if (isset($arResult['PRODUCT_PROPERTIES'][$propID]))
unset($arResult['PRODUCT_PROPERTIES'][$propID]);
}
}
$emptyProductProperties = empty($arResult['PRODUCT_PROPERTIES']);
if (!$emptyProductProperties)
{
?>
<table>
<?
foreach ($arResult['PRODUCT_PROPERTIES'] as $propID => $propInfo)
{
?>
<tr><td><? echo $arResult['PROPERTIES'][$propID]['NAME']; ?></td>
<td>
<?
if(
'L' == $arResult['PROPERTIES'][$propID]['PROPERTY_TYPE']
&& 'C' == $arResult['PROPERTIES'][$propID]['LIST_TYPE']
)
{
foreach($propInfo['VALUES'] as $valueID => $value)
{
?><label><input
type="radio"
name="<? echo $arParams['PRODUCT_PROPS_VARIABLE']; ?>[<? echo $propID; ?>]"
value="<? echo $valueID; ?>"
<? echo ($valueID == $propInfo['SELECTED'] ? '"checked"' : ''); ?>
><? echo $value; ?></label><br><?
}
}
else
{
?><select name="<? echo $arParams['PRODUCT_PROPS_VARIABLE']; ?>[<? echo $propID; ?>]"><?
foreach($propInfo['VALUES'] as $valueID => $value)
{
?><option
value="<? echo $valueID; ?>"
<? echo ($valueID == $propInfo['SELECTED'] ? '"selected"' : ''); ?>
><? echo $value; ?></option><?
}
?></select><?
}
?>
</td></tr>
<?
}
?>
</table>
<?
}
?>
</div>
<?
}
$arJSParams = array(
'CONFIG' => array(
'USE_CATALOG' => $arResult['CATALOG'],
'SHOW_QUANTITY' => $arParams['USE_PRODUCT_QUANTITY'],
'SHOW_PRICE' => (isset($arResult['MIN_PRICE']) && !empty($arResult['MIN_PRICE']) && is_array($arResult['MIN_PRICE'])),
'SHOW_DISCOUNT_PERCENT' => ('Y' == $arParams['SHOW_DISCOUNT_PERCENT']),
'SHOW_OLD_PRICE' => ('Y' == $arParams['SHOW_OLD_PRICE']),
'DISPLAY_COMPARE' => ('Y' == $arParams['DISPLAY_COMPARE']),
'MAIN_PICTURE_MODE' => $arParams['DETAIL_PICTURE_MODE']
),
'VISUAL' => array(
'ID' => $arItemIDs['ID'],
),
'PRODUCT_TYPE' => $arResult['CATALOG_TYPE'],
'PRODUCT' => array(
'ID' => $arResult['ID'],
'PICT' => $arFirstPhoto,
'NAME' => $arResult['~NAME'],
'SUBSCRIPTION' => true,
'PRICE' => $arResult['MIN_PRICE'],
'SLIDER_COUNT' => $arResult['MORE_PHOTO_COUNT'],
'SLIDER' => $arResult['MORE_PHOTO'],
'CAN_BUY' => $arResult['CAN_BUY'],
'CHECK_QUANTITY' => $arResult['CHECK_QUANTITY'],
'QUANTITY_FLOAT' => is_double($arResult['CATALOG_MEASURE_RATIO']),
'MAX_QUANTITY' => $arResult['CATALOG_QUANTITY'],
'STEP_QUANTITY' => $arResult['CATALOG_MEASURE_RATIO'],
'BUY_URL' => $arResult['~BUY_URL'],
),
'BASKET' => array(
'ADD_PROPS' => ('Y' == $arParams['ADD_PROPERTIES_TO_BASKET']),
'QUANTITY' => $arParams['PRODUCT_QUANTITY_VARIABLE'],
'PROPS' => $arParams['PRODUCT_PROPS_VARIABLE'],
'EMPTY_PROPS' => $emptyProductProperties,
'BASKET_URL' => $arParams['BASKET_URL']
)
);
unset($emptyProductProperties);
}
?>
<sc ript type="text/javascript">
var <? echo $strObName; ?> = new JCCatalogElement(<? echo CUtil::PhpToJSObject($arJSParams, false, true); ?>);
BX.message({
MESS_BTN_BUY: '<? echo ('' != $arParams['MESS_BTN_BUY'] ? CUtil::JSEscape($arParams['MESS_BTN_BUY']) : GetMessageJS('CT_BCE_CATALOG_BUY')); ?>',
MESS_BTN_ADD_TO_BASKET: '<? echo ('' != $arParams['MESS_BTN_ADD_TO_BASKET'] ? CUtil::JSEscape($arParams['MESS_BTN_ADD_TO_BASKET']) : GetMessageJS('CT_BCE_CATALOG_ADD')); ?>',
MESS_NOT_AVAILABLE: '<? echo ('' != $arParams['MESS_NOT_AVAILABLE'] ? CUtil::JSEscape($arParams['MESS_NOT_AVAILABLE']) : GetMessageJS('CT_BCE_CATALOG_NOT_AVAILABLE')); ?>',
TITLE_ERROR: '<? echo GetMessageJS('CT_BCE_CATALOG_TITLE_ERROR') ?>',
TITLE_BASKET_PROPS: '<? echo GetMessageJS('CT_BCE_CATALOG_TITLE_BASKET_PROPS') ?>',
BASKET_UNKNOWN_ERROR: '<? echo GetMessageJS('CT_BCE_CATALOG_BASKET_UNKNOWN_ERROR') ?>',
BTN_SEND_PROPS: '<? echo GetMessageJS('CT_BCE_CATALOG_BTN_SEND_PROPS'); ?>',
BTN_MESSAGE_CLOSE: '<? echo GetMessageJS('CT_BCE_CATALOG_BTN_MESSAGE_CLOSE') ?>',
SITE_ID: '<? echo SITE_ID; ?>'
});
</sc ript> |
Свойства в детальной информации товара нужно подредактировать.
|