Вы здесь

Как в Views разрешить фильтрацию только по раскрытым и заданным контекстным фильтрам?

0

Добрый вечер
Имеется Views которая отображает информацию из индекса Solr-а путём связки модуля Sarnia и Search API (индекс состоит из полей TITLE, BODY, ACCESSKEY)
У нее имеется 2 раскрытых фильтра по TITLE и BODY, тем самым давая искать информацию только по этим полям.
Также имеется 1 раскрытый фильтр по полю ACCESSKEY, значение которого представляет собой:

Таким образом получаю страницу поиска информации с неким разграничением по просмотру по ACCESSKEY, т.е. если у текущего пользователя он сооветствует существующей информации то он её и увидит, другая ему не отобразится (пользователь не может править поле ACCESSKEY своего профиля.

Всё прекрасно работает, однако если на страницу вьюхи перейти с параметром, а именно вместо mysite.ru/search перейти на mysite.ru/search/13 то пользователь подставит своё значение в контекстный фильтр, тем самым увидев то, что по идее не должен видеть

Как быть в таком случае, как жёстко ограничить первоначальную фильтрацию исключительно по значению поля профиля, и второстепенную фильтрацию по раскрытым фильтрам

Версия Drupal: 
7.x
Категория: 
Access control
Вопрос задан 26.01.2018 - 22:32

Ответы

0

Отметьте опцию фильтра Specify validation criteria и проверяйте наличие аргумента в адресе:

return arg(1) === NULL;
Ответ дан 26.01.2018 - 23:35
Аватар пользователя xandeadx
xandeadx
1527

Большое спасибо! Отлично работает!
Думаю теперь, насколько всё таки обезопасил страницу таким образом

Комментарий оставлен 27.01.2018 - 12:38