Your IP : 3.138.126.170
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die;?>
<?php
include('functions.php');
// TODO: Добавить кэширование
// Определяем раздел из которого будем брать элементы для вывода
$arResult['SECTION'] = false; // Секция страницы
$arResult['ITEMS'] = array(); // Массив элементов
$arFilter = Array('IBLOCK_ID'=> $arParams['IBLOCK_ID'], 'GLOBAL_ACTIVE'=>'Y', 'ACTIVE' => 'Y', 'UF_PAGE_LINK'=> $APPLICATION->GetCurPage());
$arSection = CIBlockSection::GetList(Array(), $arFilter, true);
while($section = $arSection->GetNext()) {
$arResult['SECTION'] = $section['ID'];
}
// Кол-во неактивных элементов
$arResult['INACTIVE_COUNT'] = 0;
// Получим элементы для вывода в плитку
if($arResult['SECTION']) {
$arFilter = Array("IBLOCK_ID" => $arParams['IBLOCK_ID'], "SECTION_ID" => $arResult['SECTION']);
$items = CIBlockElement::GetList(Array("SORT" => "ASC"), $arFilter, false, Array("nPageSize" => 50), array());
while ($item = $items->GetNextElement()) {
$arItem = $item->GetFields();
$arItem['PROPERTIES'] = $item->GetProperties();
// Подготовим данные элементов
$arItem['DETAIL_PAGE_URL'] = $arItem['PROPERTIES']['LINK']['VALUE'];
if($arItem['DETAIL_PICTURE']){
$arItem['PROPERTIES']['ADD_PICTURE']['PROPERTY_VALUE_ID'][] = $arItem['DETAIL_PICTURE'];
}
$arItem["PROPERTIES"]["PREVIEW_IMAGES"]["VALUE"] = $arItem['PROPERTIES']['ADD_PICTURE']['PROPERTY_VALUE_ID'];
// Типы плиток: Раздел и список подразделов
if($arItem['PROPERTIES']['CONTENT_TYPE']['VALUE_XML_ID'] == 'section') {
$sectionInfo = CIBlockSection::GetByID($arItem['PROPERTIES']['SECTION']['VALUE'])->GetNext();
$arItem['DETAIL_PAGE_URL'] = $sectionInfo['SECTION_PAGE_URL'];
$arItem["PROPERTIES"]["PREVIEW_IMAGES"]["VALUE"][] = $sectionInfo['PICTURE'];
$arItem['SECTION'] = $sectionInfo;
}elseif($arItem['PROPERTIES']['CONTENT_TYPE']['VALUE_XML_ID'] == 'subsection'){
$sectionInfo = CIBlockSection::GetByID($arItem['PROPERTIES']['SECTION']['VALUE'])->GetNext();
$subsections = CIBlockSection::GetList(array("NAME"=>"DESC"), array('IBLOCK_ID'=>$sectionInfo['IBLOCK_ID'], 'SECTION_ID' => $sectionInfo['ID'],'GLOBAL_ACTIVE'=>'Y', 'ACTIVE' => 'Y'), true);
$arItem['SECTION'] = $sectionInfo;
while($subsection = $subsections->GetNext()) {
$arItem['SECTION']['SUBSECTIONS'][] = array(
'NAME' => $subsection['NAME'],
"SECTION_PAGE_URL" => $subsection['SECTION_PAGE_URL']
);
}
}
// Типы плиток у которых есть ссылка у основного контейнера
if(in_array($arItem['PROPERTIES']['CONTENT_TYPE']['VALUE_XML_ID'], array('section', 'photo')) && $arItem['DETAIL_PAGE_URL'] != "") {
$arItem['HAS_LINK'] = true; // У этого типа есть ссылка
}
$arResult['ITEMS'][$arItem['ID']] = $arItem;
if($arItem['ACTIVE'] != "Y") {
$arResult['INACTIVE_COUNT']++;
}
}
}
$this->IncludeComponentTemplate();
?>