|
Выводятся на главной табы с товарами через catalog.section вызов в шаблоне: Скрытый текст |
---|
Код |
---|
$APPLICATION->IncludeComponent(
"bitrix:catalog.section",
"catalog_all",
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/cart/",
"BROWSER_TITLE" => "-",
"CACHE_FILTER" => "N",
"CACHE_GROUPS" => "N",
"CACHE_TIME" => "36000000",
"CACHE_TYPE" => "N",
"COMPONENT_TEMPLATE" => "catalog_all",
"CONVERT_CURRENCY" => "N",
"DETAIL_URL" => "",
"DISABLE_INIT_JS_IN_COMPONENT" => "N",
"DISPLAY_BOTTOM_PAGER" => "Y",
"DISPLAY_TOP_PAGER" => "N",
"ELEMENT_SORT_FIELD" => "sort",
"ELEMENT_SORT_FIELD2" => "id",
"ELEMENT_SORT_ORDER" => "asc",
"ELEMENT_SORT_ORDER2" => "desc",
"FILTER_NAME" => $type_filter,
"HIDE_NOT_AVAILABLE" => "N",
"IBLOCK_ID" => "1",
"IBLOCK_TYPE" => "shop_samovar_catalog",
"INCLUDE_SUBSECTIONS" => "Y",
"LABEL_PROP" => "-",
"LINE_ELEMENT_COUNT" => "3",
"MESSAGE_404" => "",
"MESS_BTN_ADD_TO_BASKET" => "",
"MESS_BTN_BUY" => "Купить",
"MESS_BTN_DETAIL" => "",
"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" => "Y",
"PAGER_TEMPLATE" => ".default",
"PAGER_TITLE" => "Товары",
"PAGE_ELEMENT_COUNT" => $kol_tovar,
"PARTIAL_PRODUCT_PROPERTIES" => "Y",
"PRICE_CODE" => array(
0 => "BASE",
),
"PRICE_VAT_INCLUDE" => "Y",
"PRODUCT_ID_VARIABLE" => "id",
"PRODUCT_PROPERTIES" => "",
"PRODUCT_PROPS_VARIABLE" => "prop",
"PRODUCT_QUANTITY_VARIABLE" => "quantity",
"PRODUCT_SUBSCRIPTION" => "N",
"PROPERTY_CODE" => array(
0 => "PR_NEW",
1 => "PR_RASPROD",
2 => "PR_RECOM",
3 => "",
),
"SECTION_CODE" => "",
"SECTION_CODE_PATH" => "",
"SECTION_ID" => $_REQUEST["SECTION_ID"],
"SECTION_ID_VARIABLE" => "SECTION_ID",
"SECTION_URL" => "",
"SECTION_USER_FIELDS" => array(
0 => "",
1 => "SECTION_CODE",
2 => "",
),
"SEF_MODE" => "Y",
"SEF_RULE" => "",
"SET_BROWSER_TITLE" => "N",
"SET_LAST_MODIFIED" => "N",
"SET_META_DESCRIPTION" => "N",
"SET_META_KEYWORDS" => "N",
"SET_STATUS_404" => "N",
"SET_TITLE" => "N",
"SHOW_404" => "N",
"SHOW_ALL_WO_SECTION" => "Y",
"SHOW_CLOSE_POPUP" => "N",
"SHOW_DISCOUNT_PERCENT" => "N",
"SHOW_OLD_PRICE" => "Y",
"SHOW_PRICE_COUNT" => "1",
"TEMPLATE_THEME" => "blue",
"USE_MAIN_ELEMENT_SECTION" => "N",
"USE_PRICE_COUNT" => "N",
"USE_PRODUCT_QUANTITY" => "Y",
"CUSTOM_FILTER" => "{\"CLASS_ID\":\"CondGroup\",\"DATA\":{\"All\":\"AND\",\"True\":\"True\"},\"CHILDREN\":[]}",
"HIDE_NOT_AVAILABLE_OFFERS" => "N",
"MESS_BTN_COMPARE" => "Сравнить",
"DISPLAY_COMPARE" => "N",
"COMPATIBLE_MODE" => "N",
"COMPOSITE_FRAME_MODE" => "A",
"COMPOSITE_FRAME_TYPE" => "AUTO",
"CURRENCY_ID" => "RUB"
),
false
);
}
?>
|
|
result_modifier.php Скрытый текст |
---|
Код |
---|
<?
use Bitrix\Main\Type\Collection;
use Bitrix\Currency\CurrencyTable;
if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED!==true) die();
/** @var CBitrixComponentTemplate $this */
/** @var array $arParams */
/** @var array $arResult */
$arDefaultParams = array(
'TEMPLATE_THEME' => 'blue',
'PRODUCT_DISPLAY_MODE' => 'N',
'ADD_PICT_PROP' => '-',
'LABEL_PROP' => '-',
'OFFER_ADD_PICT_PROP' => '-',
'OFFER_TREE_PROPS' => array('-'),
'PRODUCT_SUBSCRIPTION' => 'N',
'SHOW_DISCOUNT_PERCENT' => 'N',
'SHOW_OLD_PRICE' => 'N',
'ADD_TO_BASKET_ACTION' => 'ADD',
'SHOW_CLOSE_POPUP' => 'N',
'MESS_BTN_BUY' => '',
'MESS_BTN_ADD_TO_BASKET' => '',
'MESS_BTN_SUBSCRIBE' => '',
'MESS_BTN_DETAIL' => '',
'MESS_NOT_AVAILABLE' => '',
'MESS_BTN_COMPARE' => ''
);
$arParams = array_merge($arDefaultParams, $arParams);
if (!isset($arParams['LINE_ELEMENT_COUNT']))
$arParams['LINE_ELEMENT_COUNT'] = 3;
$arParams['LINE_ELEMENT_COUNT'] = intval($arParams['LINE_ELEMENT_COUNT']);
if (2 > $arParams['LINE_ELEMENT_COUNT'] || 5 < $arParams['LINE_ELEMENT_COUNT'])
$arParams['LINE_ELEMENT_COUNT'] = 3;
$arParams['TEMPLATE_THEME'] = (string)($arParams['TEMPLATE_THEME']);
if ('' != $arParams['TEMPLATE_THEME'])
{
$arParams['TEMPLATE_THEME'] = preg_replace('/[^a-zA-Z0-9_\-\(\)\!]/', '', $arParams['TEMPLATE_THEME']);
if ('site' == $arParams['TEMPLATE_THEME'])
{
$arParams['TEMPLATE_THEME'] = COption::GetOptionString('main', 'wizard_eshop_adapt_theme_id', 'blue', SITE_ID);
}
if ('' != $arParams['TEMPLATE_THEME'])
{
if (!is_file($_SERVER['DOCUMENT_ROOT'].$this->GetFolder().'/themes/'.$arParams['TEMPLATE_THEME'].'/style.css'))
$arParams['TEMPLATE_THEME'] = '';
}
}
if ('' == $arParams['TEMPLATE_THEME'])
$arParams['TEMPLATE_THEME'] = 'blue';
if ('Y' != $arParams['PRODUCT_DISPLAY_MODE'])
$arParams['PRODUCT_DISPLAY_MODE'] = 'N';
$arParams['ADD_PICT_PROP'] = trim($arParams['ADD_PICT_PROP']);
if ('-' == $arParams['ADD_PICT_PROP'])
$arParams['ADD_PICT_PROP'] = '';
$arParams['LABEL_PROP'] = trim($arParams['LABEL_PROP']);
if ('-' == $arParams['LABEL_PROP'])
$arParams['LABEL_PROP'] = '';
$arParams['OFFER_ADD_PICT_PROP'] = trim($arParams['OFFER_ADD_PICT_PROP']);
if ('-' == $arParams['OFFER_ADD_PICT_PROP'])
$arParams['OFFER_ADD_PICT_PROP'] = '';
if ('Y' == $arParams['PRODUCT_DISPLAY_MODE'])
{
if (!is_array($arParams['OFFER_TREE_PROPS']))
$arParams['OFFER_TREE_PROPS'] = array($arParams['OFFER_TREE_PROPS']);
foreach ($arParams['OFFER_TREE_PROPS'] as $key => $value)
{
$value = (string)$value;
if ('' == $value || '-' == $value)
unset($arParams['OFFER_TREE_PROPS'][$key]);
}
if (empty($arParams['OFFER_TREE_PROPS']) && isset($arParams['OFFERS_CART_PROPERTIES']) && is_array($arParams['OFFERS_CART_PROPERTIES']))
{
$arParams['OFFER_TREE_PROPS'] = $arParams['OFFERS_CART_PROPERTIES'];
foreach ($arParams['OFFER_TREE_PROPS'] as $key => $value)
{
$value = (string)$value;
if ('' == $value || '-' == $value)
unset($arParams['OFFER_TREE_PROPS'][$key]);
}
}
}
else
{
$arParams['OFFER_TREE_PROPS'] = array();
}
if ('Y' != $arParams['PRODUCT_SUBSCRIPTION'])
$arParams['PRODUCT_SUBSCRIPTION'] = 'N';
if ('Y' != $arParams['SHOW_DISCOUNT_PERCENT'])
$arParams['SHOW_DISCOUNT_PERCENT'] = 'N';
if ('Y' != $arParams['SHOW_OLD_PRICE'])
$arParams['SHOW_OLD_PRICE'] = 'N';
if ($arParams['ADD_TO_BASKET_ACTION'] != 'BUY')
$arParams['ADD_TO_BASKET_ACTION'] = 'ADD';
if ($arParams['SHOW_CLOSE_POPUP'] != 'Y')
$arParams['SHOW_CLOSE_POPUP'] = 'N';
$arParams['MESS_BTN_BUY'] = trim($arParams['MESS_BTN_BUY']);
$arParams['MESS_BTN_ADD_TO_BASKET'] = trim($arParams['MESS_BTN_ADD_TO_BASKET']);
$arParams['MESS_BTN_SUBSCRIBE'] = trim($arParams['MESS_BTN_SUBSCRIBE']);
$arParams['MESS_BTN_DETAIL'] = trim($arParams['MESS_BTN_DETAIL']);
$arParams['MESS_NOT_AVAILABLE'] = trim($arParams['MESS_NOT_AVAILABLE']);
$arParams['MESS_BTN_COMPARE'] = trim($arParams['MESS_BTN_COMPARE']);
if (!empty($arResult['ITEMS']))
{
$arEmptyPreview = false;
$strEmptyPreview = $this->GetFolder().'/images/no_photo.png';
if (file_exists($_SERVER['DOCUMENT_ROOT'].$strEmptyPreview))
{
$arSizes = getimagesize($_SERVER['DOCUMENT_ROOT'].$strEmptyPreview);
if (!empty($arSizes))
{
$arEmptyPreview = array(
'SRC' => $strEmptyPreview,
'WIDTH' => intval($arSizes[0]),
'HEIGHT' => intval($arSizes[1])
);
}
unset($arSizes);
}
unset($strEmptyPreview);
$arSKUPropList = array();
$arSKUPropIDs = array();
$arSKUPropKeys = array();
$boolSKU = false;
$strBaseCurrency = '';
$boolConvert = isset($arResult['CONVERT_CURRENCY']['CURRENCY_ID']);
if ($arResult['MODULES']['catalog'])
{
if (!$boolConvert)
$strBaseCurrency = CCurrency::GetBaseCurrency();
$arSKU = CCatalogSKU::GetInfoByProductIBlock($arParams['IBLOCK_ID']);
$boolSKU = !empty($arSKU) && is_array($arSKU);
if ($boolSKU && !empty($arParams['OFFER_TREE_PROPS']) && 'Y' == $arParams['PRODUCT_DISPLAY_MODE'])
{
$arSKUPropList = CIBlockPriceTools::getTreeProperties(
$arSKU,
$arParams['OFFER_TREE_PROPS'],
array(
'PICT' => $arEmptyPreview,
'NAME' => '-'
)
);
$arNeedValues = array();
CIBlockPriceTools::getTreePropertyValues($arSKUPropList, $arNeedValues);
$arSKUPropIDs = array_keys($arSKUPropList);
if (empty($arSKUPropIDs))
$arParams['PRODUCT_DISPLAY_MODE'] = 'N';
else
$arSKUPropKeys = array_fill_keys($arSKUPropIDs, false);
}
}
$arNewItemsList = array();
foreach ($arResult['ITEMS'] as $key => $arItem)
{
$arItem['CHECK_QUANTITY'] = false;
if (!isset($arItem['CATALOG_MEASURE_RATIO']))
$arItem['CATALOG_MEASURE_RATIO'] = 1;
if (!isset($arItem['CATALOG_QUANTITY']))
$arItem['CATALOG_QUANTITY'] = 0;
$arItem['CATALOG_QUANTITY'] = (
0 < $arItem['CATALOG_QUANTITY'] && is_float($arItem['CATALOG_MEASURE_RATIO'])
? floatval($arItem['CATALOG_QUANTITY'])
: intval($arItem['CATALOG_QUANTITY'])
);
$arItem['CATALOG'] = false;
if (!isset($arItem['CATALOG_SUBSCRIPTION']) || 'Y' != $arItem['CATALOG_SUBSCRIPTION'])
$arItem['CATALOG_SUBSCRIPTION'] = 'N';
CIBlockPriceTools::getLabel($arItem, $arParams['LABEL_PROP']);
$productPictures = CIBlockPriceTools::getDoublePicturesForItem($arItem, $arParams['ADD_PICT_PROP']);
if (empty($productPictures['PICT']))
$productPictures['PICT'] = $arEmptyPreview;
if (empty($productPictures['SECOND_PICT']))
$productPictures['SECOND_PICT'] = $productPictures['PICT'];
$arItem['PREVIEW_PICTURE'] = $productPictures['PICT'];
$arItem['PREVIEW_PICTURE_SECOND'] = $productPictures['SECOND_PICT'];
$arItem['SECOND_PICT'] = true;
$arItem['PRODUCT_PREVIEW'] = $productPictures['PICT'];
$arItem['PRODUCT_PREVIEW_SECOND'] = $productPictures['SECOND_PICT'];
if ($arResult['MODULES']['catalog'])
{
$arItem['CATALOG'] = true;
if (!isset($arItem['CATALOG_TYPE']))
$arItem['CATALOG_TYPE'] = CCatalogProduct::TYPE_PRODUCT;
if (
(CCatalogProduct::TYPE_PRODUCT == $arItem['CATALOG_TYPE'] || CCatalogProduct::TYPE_SKU == $arItem['CATALOG_TYPE'])
&& !empty($arItem['OFFERS'])
)
{
$arItem['CATALOG_TYPE'] = CCatalogProduct::TYPE_SKU;
}
switch ($arItem['CATALOG_TYPE'])
{
case CCatalogProduct::TYPE_SET:
$arItem['OFFERS'] = array();
$arItem['CHECK_QUANTITY'] = ('Y' == $arItem['CATALOG_QUANTITY_TRACE'] && 'N' == $arItem['CATALOG_CAN_BUY_ZERO']);
break;
case CCatalogProduct::TYPE_SKU:
break;
case CCatalogProduct::TYPE_PRODUCT:
default:
$arItem['CHECK_QUANTITY'] = ('Y' == $arItem['CATALOG_QUANTITY_TRACE'] && 'N' == $arItem['CATALOG_CAN_BUY_ZERO']);
break;
}
}
else
{
$arItem['CATALOG_TYPE'] = 0;
$arItem['OFFERS'] = array();
}
if ($arItem['CATALOG'] && isset($arItem['OFFERS']) && !empty($arItem['OFFERS']))
{
if ('Y' == $arParams['PRODUCT_DISPLAY_MODE'])
{
$arMatrixFields = $arSKUPropKeys;
$arMatrix = array();
$arNewOffers = array();
$boolSKUDisplayProperties = false;
$arItem['OFFERS_PROP'] = false;
$arDouble = array();
foreach ($arItem['OFFERS'] as $keyOffer => $arOffer)
{
$arOffer['ID'] = intval($arOffer['ID']);
if (isset($arDouble[$arOffer['ID']]))
continue;
$arRow = array();
foreach ($arSKUPropIDs as $propkey => $strOneCode)
{
$arCell = array(
'VALUE' => 0,
'SORT' => PHP_INT_MAX,
'NA' => true
);
if (isset($arOffer['DISPLAY_PROPERTIES'][$strOneCode]))
{
$arMatrixFields[$strOneCode] = true;
$arCell['NA'] = false;
if ('directory' == $arSKUPropList[$strOneCode]['USER_TYPE'])
{
$intValue = $arSKUPropList[$strOneCode]['XML_MAP'][$arOffer['DISPLAY_PROPERTIES'][$strOneCode]['VALUE']];
$arCell['VALUE'] = $intValue;
}
elseif ('L' == $arSKUPropList[$strOneCode]['PROPERTY_TYPE'])
{
$arCell['VALUE'] = intval($arOffer['DISPLAY_PROPERTIES'][$strOneCode]['VALUE_ENUM_ID']);
}
elseif ('E' == $arSKUPropList[$strOneCode]['PROPERTY_TYPE'])
{
$arCell['VALUE'] = intval($arOffer['DISPLAY_PROPERTIES'][$strOneCode]['VALUE']);
}
$arCell['SORT'] = $arSKUPropList[$strOneCode]['VALUES'][$arCell['VALUE']]['SORT'];
}
$arRow[$strOneCode] = $arCell;
}
$arMatrix[$keyOffer] = $arRow;
CIBlockPriceTools::clearProperties($arOffer['DISPLAY_PROPERTIES'], $arParams['OFFER_TREE_PROPS']);
CIBlockPriceTools::setRatioMinPrice($arOffer, false);
$offerPictures = CIBlockPriceTools::getDoublePicturesForItem($arOffer, $arParams['OFFER_ADD_PICT_PROP']);
$arOffer['OWNER_PICT'] = empty($offerPictures['PICT']);
$arOffer['PREVIEW_PICTURE'] = false;
$arOffer['PREVIEW_PICTURE_SECOND'] = false;
$arOffer['SECOND_PICT'] = true;
if (!$arOffer['OWNER_PICT'])
{
if (empty($offerPictures['SECOND_PICT']))
$offerPictures['SECOND_PICT'] = $offerPictures['PICT'];
$arOffer['PREVIEW_PICTURE'] = $offerPictures['PICT'];
$arOffer['PREVIEW_PICTURE_SECOND'] = $offerPictures['SECOND_PICT'];
}
if ('' != $arParams['OFFER_ADD_PICT_PROP'] && isset($arOffer['DISPLAY_PROPERTIES'][$arParams['OFFER_ADD_PICT_PROP']]))
unset($arOffer['DISPLAY_PROPERTIES'][$arParams['OFFER_ADD_PICT_PROP']]);
$arDouble[$arOffer['ID']] = true;
$arNewOffers[$keyOffer] = $arOffer;
}
$arItem['OFFERS'] = $arNewOffers;
$arUsedFields = array();
$arSortFields = array();
foreach ($arSKUPropIDs as $propkey => $strOneCode)
{
$boolExist = $arMatrixFields[$strOneCode];
foreach ($arMatrix as $keyOffer => $arRow)
{
if ($boolExist)
{
if (!isset($arItem['OFFERS'][$keyOffer]['TREE']))
$arItem['OFFERS'][$keyOffer]['TREE'] = array();
$arItem['OFFERS'][$keyOffer]['TREE']['PROP_'.$arSKUPropList[$strOneCode]['ID']] = $arMatrix[$keyOffer][$strOneCode]['VALUE'];
$arItem['OFFERS'][$keyOffer]['SKU_SORT_'.$strOneCode] = $arMatrix[$keyOffer][$strOneCode]['SORT'];
$arUsedFields[$strOneCode] = true;
$arSortFields['SKU_SORT_'.$strOneCode] = SORT_NUMERIC;
}
else
{
unset($arMatrix[$keyOffer][$strOneCode]);
}
}
}
$arItem['OFFERS_PROP'] = $arUsedFields;
$arItem['OFFERS_PROP_CODES'] = (!empty($arUsedFields) ? base64_encode(serialize(array_keys($arUsedFields))) : '');
Collection::sortByColumn($arItem['OFFERS'], $arSortFields);
$arMatrix = array();
$intSelected = -1;
$arItem['MIN_PRICE'] = false;
$arItem['MIN_BASIS_PRICE'] = false;
foreach ($arItem['OFFERS'] as $keyOffer => $arOffer)
{
if (empty($arItem['MIN_PRICE']) && $arOffer['CAN_BUY'])
{
$intSelected = $keyOffer;
$arItem['MIN_PRICE'] = (isset($arOffer['RATIO_PRICE']) ? $arOffer['RATIO_PRICE'] : $arOffer['MIN_PRICE']);
$arItem['MIN_BASIS_PRICE'] = $arOffer['MIN_PRICE'];
}
$arSKUProps = false;
if (!empty($arOffer['DISPLAY_PROPERTIES']))
{
$boolSKUDisplayProperties = true;
$arSKUProps = array();
foreach ($arOffer['DISPLAY_PROPERTIES'] as &$arOneProp)
{
if ('F' == $arOneProp['PROPERTY_TYPE'])
continue;
$arSKUProps[] = array(
'NAME' => $arOneProp['NAME'],
'VALUE' => $arOneProp['DISPLAY_VALUE']
);
}
unset($arOneProp);
}
$arOneRow = array(
'ID' => $arOffer['ID'],
'NAME' => $arOffer['~NAME'],
'TREE' => $arOffer['TREE'],
'DISPLAY_PROPERTIES' => $arSKUProps,
'PRICE' => (isset($arOffer['RATIO_PRICE']) ? $arOffer['RATIO_PRICE'] : $arOffer['MIN_PRICE']),
'BASIS_PRICE' => $arOffer['MIN_PRICE'],
'SECOND_PICT' => $arOffer['SECOND_PICT'],
'OWNER_PICT' => $arOffer['OWNER_PICT'],
'PREVIEW_PICTURE' => $arOffer['PREVIEW_PICTURE'],
'PREVIEW_PICTURE_SECOND' => $arOffer['PREVIEW_PICTURE_SECOND'],
'CHECK_QUANTITY' => $arOffer['CHECK_QUANTITY'],
'MAX_QUANTITY' => $arOffer['CATALOG_QUANTITY'],
'STEP_QUANTITY' => $arOffer['CATALOG_MEASURE_RATIO'],
'QUANTITY_FLOAT' => is_double($arOffer['CATALOG_MEASURE_RATIO']),
'MEASURE' => $arOffer['~CATALOG_MEASURE_NAME'],
'CAN_BUY' => $arOffer['CAN_BUY'],
);
$arMatrix[$keyOffer] = $arOneRow;
}
if (-1 == $intSelected)
$intSelected = 0;
if (!$arMatrix[$intSelected]['OWNER_PICT'])
{
$arItem['PREVIEW_PICTURE'] = $arMatrix[$intSelected]['PREVIEW_PICTURE'];
$arItem['PREVIEW_PICTURE_SECOND'] = $arMatrix[$intSelected]['PREVIEW_PICTURE_SECOND'];
}
$arItem['JS_OFFERS'] = $arMatrix;
$arItem['OFFERS_SELECTED'] = $intSelected;
$arItem['OFFERS_PROPS_DISPLAY'] = $boolSKUDisplayProperties;
}
else
{
$arItem['MIN_PRICE'] = CIBlockPriceTools::getMinPriceFromOffers(
$arItem['OFFERS'],
$boolConvert ? $arResult['CONVERT_CURRENCY']['CURRENCY_ID'] : $strBaseCurrency
);
}
}
if (
$arResult['MODULES']['catalog']
&& $arItem['CATALOG']
&&
($arItem['CATALOG_TYPE'] == CCatalogProduct::TYPE_PRODUCT
|| $arItem['CATALOG_TYPE'] == CCatalogProduct::TYPE_SET)
)
{
CIBlockPriceTools::setRatioMinPrice($arItem, false);
$arItem['MIN_BASIS_PRICE'] = $arItem['MIN_PRICE'];
/* */
$arPrices = CIBlockPriceTools::GetCatalogPrices($arParams['IBLOCK_ID'], $arParams['PRICE_CODE']);
foreach ($arPrices as $iKey => $arPrice) {
if (!$arPrice['CAN_VIEW'] && !$arPrice['CAN_BUY'])
continue;
$arPriceTypeID[] = $arPrice['ID'];
}
foreach ($arPrices as $iKey => $arPrice) {
if ($arPrice['CAN_VIEW'] && $arPrice['CAN_BUY']);
else unset($arPrices[$iKey]);
}
if (isset($arPrice))
unset($arPrice);
$arItem['PRICES'] = CIBlockPriceTools::GetItemPrices($arParams['IBLOCK_ID'], $arPrices, $arItem, $arParams['PRICE_VAT_INCLUDE'], $arCurrencyParams = array(), $USER_ID = 0, $LID = SITE_ID);
if (!empty($arItem['PRICES'])) {
foreach ($arItem['PRICES'] as $arOnePrice) {
if ($arOnePrice['MIN_PRICE'] == 'Y') {
$arItem['MIN_PRICE'] = $arOnePrice;echo "<pre style='display:none'>"; print_r($arItem['MIN_PRICE']); echo "</pre>";
break;
}
}
unset($arOnePrice);
}
/* */
}
if (!empty($arItem['DISPLAY_PROPERTIES']))
{
foreach ($arItem['DISPLAY_PROPERTIES'] as $propKey => $arDispProp)
{
if ('F' == $arDispProp['PROPERTY_TYPE'])
unset($arItem['DISPLAY_PROPERTIES'][$propKey]);
}
}
$arItem['LAST_ELEMENT'] = 'N';
$arNewItemsList[$key] = $arItem;
}
$arNewItemsList[$key]['LAST_ELEMENT'] = 'Y';
$arResult['ITEMS'] = $arNewItemsList;
$arResult['SKU_PROPS'] = $arSKUPropList;
$arResult['DEFAULT_PICTURE'] = $arEmptyPreview;
$arResult['CURRENCIES'] = array();
if ($arResult['MODULES']['currency'])
{
if ($boolConvert)
{
$currencyFormat = CCurrencyLang::GetFormatDescription($arResult['CONVERT_CURRENCY']['CURRENCY_ID']);
$arResult['CURRENCIES'] = array(
array(
'CURRENCY' => $arResult['CONVERT_CURRENCY']['CURRENCY_ID'],
'FORMAT' => array(
'FORMAT_STRING' => $currencyFormat['FORMAT_STRING'],
'DEC_POINT' => $currencyFormat['DEC_POINT'],
'THOUSANDS_SEP' => $currencyFormat['THOUSANDS_SEP'],
'DECIMALS' => $currencyFormat['DECIMALS'],
'THOUSANDS_VARIANT' => $currencyFormat['THOUSANDS_VARIANT'],
'HIDE_ZERO' => $currencyFormat['HIDE_ZERO']
)
)
);
unset($currencyFormat);
}
else
{
$currencyIterator = CurrencyTable::getList(array(
'select' => array('CURRENCY')
));
while ($currency = $currencyIterator->fetch())
{
$currencyFormat = CCurrencyLang::GetFormatDescription($currency['CURRENCY']);
$arResult['CURRENCIES'][] = array(
'CURRENCY' => $currency['CURRENCY'],
'FORMAT' => array(
'FORMAT_STRING' => $currencyFormat['FORMAT_STRING'],
'DEC_POINT' => $currencyFormat['DEC_POINT'],
'THOUSANDS_SEP' => $currencyFormat['THOUSANDS_SEP'],
'DECIMALS' => $currencyFormat['DECIMALS'],
'THOUSANDS_VARIANT' => $currencyFormat['THOUSANDS_VARIANT'],
'HIDE_ZERO' => $currencyFormat['HIDE_ZERO']
)
);
}
unset($currencyFormat, $currency, $currencyIterator);
}
}
}
?>
|
|
Соответственно цены не отображаются, куда копать?
|