Текущая видимость блока

Главные вкладки

Аватар пользователя so-lo74 so-lo74 5 апреля 2013 в 18:30

Добрый день всем!

Проблема: В регионе, скажем, «Content» над представлениями выводятся блоки форм с exposed фильтрами, блоков — целая стопка, т.к. формы, разные для каждого View. В зависимости от контекста (страницы, роли пользователя etc) видна одна форма c фильтрами из всей группы аналогичных, лежащих в этом регионе.
Отображется всё корректно, но все хуки, связанные с перехватом и подменой форм + прочая функциональность, вызываются столько раз, сколько форм (блоков) связано с текущим представлением (вообще), вне зависимости от того, что отображается блок в этом контексте или нет.

Вопрос: Как узнать (программно, ест-но, из своего модуля) виден ли, т.е. отображается сейчас, блок с конкретным delta на текущей странице? Анализ поля status в соотв. таблице делу не поможет, но drupal же решает эту задачу при темизации страницы по умолчанию ;). Тем не менее, никакой функции в block.api не могу найти.
Не перехватывать же в каждом модуле, где выводится интересующий блок, хук block_view, как своего рода, флаг?

Заранее, спасибо.