Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Снова о фильтрах в компоненте новостей

00 голосов
4
Доброго времени суток.
Вероятно, вопрос уже не раз обсуждался, но мне бы хотелось задать его снова, ибо только-только начинаю работать с битриксом. В случае, если решение уже есть - дайте, пожалуйста, ссылку на него.

Есть инфоблок "афиша", у него есть свойство "Дата" (симв. DATA) (дата/время - в итоге получается строка формата "ДД.ММ.ГГГГ ЧЧ:ММ:СС", множественный)
Необходимо реализовать фильтр (select) по временным промежуткам:
-сегодня
-сегодня + завтра
-на неделю (сегодня+7)
-на месяц (сегодня+30)
спросил 31 Окт, 13 от MaestroO (300 баллов)

4 Ответы

00 голосов
компонент фильтра:
Код
ответил 03 Дек, 13 от MaestroO (300 баллов)
00 голосов
вопрос исчерпан
ответил 15 Март, 14 от MaestroO (300 баллов)
00 голосов
Цитата
Алла Зарипова пишет:
вопрос исчерпан
так Вы бы сюда решение сразу бы и выложили;)
ответил 06 Июль, 14 от Holiu (600 баллов)
00 голосов
Вся шляпа была в том, чтобы два фильтра скрестить.
А разгадка тут лежала http://dev.1c-bitrix.ru/community/forums/forum6/topic31644/  
и конкретно в посте:
Цитата
 Sergey Leshchenko пишет:
Если вы хотите задавать фильтр из публичного файла, то USE_FILTER нужно включить:
"USE_FILTER" => "Y"
В противном случае фильтр нужно задавать в файле section.php примерно так:
// проверяем, объявлен ли параметр 'FILTER_NAME', если нет, то объявляем
$arParams['FILTER_NAME'] = isset($arParams['FILTER_NAME']) && !empty($arParams['FILTER_NAME']) ? $arParams['FILTER_NAME'] : 'arrInnerFilter';
// проверяем создан ли глобальный массив с фильтром, если нет, то создадим
$GLOBALS[$arParams['FILTER_NAME']] = isset($GLOBALS[$arParams['FILTER_NAME']]) && is_array($GLOBALS[$arParams['FILTER_NAME']]) ? $GLOBALS[$arParams['FILTER_NAME']] : array();
// добавляем поля фильтрации
$GLOBALS[$arParams['FILTER_NAME']]['SECTION_ID'] = 25;
Код размещается перед подключением списочного компонента. 
ответил 06 Ноя, 14 от Wolf88 (100 баллов)