Добрый день, есть необходимость сделать префильтр "Новостей" (/stream/) в коробке (т.е. чтобы при открытии раздела в котором находится компонент socialnetwork.log.ex вывелись только важные сообщения например), подскажите в какую сторону посмотреть?
Из того что было опробовано:
В самом ядре в шаблоне socialnetwork.log.ex есть перебор сообщений перед подключением шаблона с вызовом компонента socialnetwork.blog.post, и если там жестко задать EVENT_ID - все работает, выводятся только важные сообщения.
if($arEvent["EVENT_ID"] == 'blog_post_important') {
require($_SERVER["DOCUMENT_ROOT"] . $templateFolder . "/include/blog_post.php");
}
Естественно трогать ядро я не хочу и копирую компонент в свой неймспейс и получаю возможность управлять входными параметрами, таким образом для каждого раздела где вызывается компонент socialnetwork.log.ex задавать свой EVENT_ID
if ($arEvent["EVENT_ID"] == $arParams['FILTER_EVENT_ID']) {
require($_SERVER["DOCUMENT_ROOT"] . $templateFolder . "/include/blog_post.php");
}
Но при таком подходе почему то фильтрации не происходит, но если вернуть строку с условием в компонент в ядре - все работает.
Подскажите, в какую еще сторону глянуть, почему компонент в своем неймспейсе будто бы подгружает остальные записи игнорируя условие в своем же шаблоне (т.е. первые 3 записи - действительно важные сообщения, но при аякс подрузке остальные сообщения - выводятся без учета условия в шаблоне) и может быть есть другой способ решения данной задачи, не копируя компонент