У меня есть ряд свойств, этакие рейтинговые баллы для элементов инфоблока, на их основе строиться общий балл по которому и сортируется конечный список показываемый пользователю. Т.е. есть инфоблока, со свойствами Рейтинг1, Рейтинг2, Рейтинг3 , на основе этих трёх значений для каждого элемента в процессе работы компонента news.list построиться общий балл по которому и отсортируется получившийся arResult["ITEMS"].
Вначаел делал тупо, просто форма, с чекбоксами Рейтинг1, Рейтинг2, Рейтинг3, пользователь выбирал параметры, нажимал "фильтровать" отправлялся запрос. В файле news.php комплексного компонента я подхватывал этот массив и засовывал его в параметры вызываемого компонента news.list, а дальше сортировка в result_modifier.php и всё.
Теперь появились ещё несколько свойств, которые уже имею фиксированное значение, например средний ценник работы и город расположения офиса фирмы. Их хорошобы фильтровать с помощью catalog.filter входящего в состав комплексного компонента bitirx:news, но вот проблема, код в news.php который перехватывал параметры Рейтинг1, Рейтинг2, Рейтинг3 перестал работать :
Как быть, как подружить мой кастыльный фильтр с рассчётом баллов фирмы "на лету" и встроенный catalog.filter. В результате мне нужно чтобы catalog.filter отфильтровывал по цене и городу, а мой кастыль вычислял балл из выбранных рейтингов (Рейтинг1, Рейтинг2, Рейтинг3) фирм, по которому я буду строить список для показа пользователю.
Вначаел делал тупо, просто форма, с чекбоксами Рейтинг1, Рейтинг2, Рейтинг3, пользователь выбирал параметры, нажимал "фильтровать" отправлялся запрос. В файле news.php комплексного компонента я подхватывал этот массив и засовывал его в параметры вызываемого компонента news.list, а дальше сортировка в result_modifier.php и всё.
Теперь появились ещё несколько свойств, которые уже имею фиксированное значение, например средний ценник работы и город расположения офиса фирмы. Их хорошобы фильтровать с помощью catalog.filter входящего в состав комплексного компонента bitirx:news, но вот проблема, код в news.php который перехватывал параметры Рейтинг1, Рейтинг2, Рейтинг3 перестал работать :
Код |
---|
global $arrFilter; ниже вызов news.list с параметрами..."FILTER" => $arrFilter,... |
Всё сбудется, стоит только расхотеть...