Предупредить посетителя, что материалы отфильтрованы

More
4 years 10 months ago - 4 years 10 months ago #8136 by Женя Чугаев
Подскажите, каким образом я могу отследить, применен ли на странице фильтр? Мне это нужно, чтобы сформировать сообщение на странице о том, что материалы отфильтрованы. Сейчас это возможно только непосредственно после фильтрации, поскольку передаются параметры запросом, однако если покинуть страницу, а потом на нее вернуться, запросы отследить уже нельзя, а материалы остаются отфильтрованными, и пользователь видит не все материалы, а сообщения, что они отфильтрованы, не видит.

Пока на ум приходит только js скриптом пробежаться по всем полям и проверить, установлен ли хоть один чекбокс и совпадают ли значения min-max диапазонов со значениями from-to. Но это костыль. Как вообще фильтр запоминает, какие значения установлены? Где хранится эта информация?
Last edit: 4 years 10 months ago by Женя Чугаев.

Please Log in or Create an account to join the conversation.

More
4 years 10 months ago #8137 by JoomLine
Данные о фильтрации хранятся в сессии, если конкретно в userState
The following user(s) said Thank You: Женя Чугаев

Please Log in or Create an account to join the conversation.

More
4 years 10 months ago - 4 years 10 months ago #8139 by Женя Чугаев
Не получается извлечь данные о фильтрации.

$session = JFactory::getSession();
$state = $session->get('userState');
print_r($state);

Приведенный код ничего не выводит, переменная $state пуста. Подскажите пожалуйста, как извлечь данные о фильтрации?
Last edit: 4 years 10 months ago by Женя Чугаев.

Please Log in or Create an account to join the conversation.

More
4 years 10 months ago - 4 years 10 months ago #8140 by Женя Чугаев
Пытался отследить состояние переменной $jlContentFieldsFilter, в которую записываются все установленные фильтры. Но так как у меня в фильтре используются, диапазоны, то даже после сброса параметров значение is_filter все равно равняется 1! Получается, отследить, использован ли на странице фильтр, если в нем есть хотя бы один диапазон, нельзя, система думает, что фильтр установлен.

Array (
[3] => Array ( [from] => 2100 [to] => 9000 )
[9] => Array ( [from] => 20000 [to] => 85000 )
[is_filter] => 1
)
Last edit: 4 years 10 months ago by Женя Чугаев.

Please Log in or Create an account to join the conversation.

More
4 years 10 months ago #8142 by JoomLine
Попробуйте тут github.com/Joomline/JlContentFieldsFilte...ieldsfilter.php#L125

вставить то что вам требуется: что то типа $app->enqueueMessage()

Please Log in or Create an account to join the conversation.

Powered by Kunena Forum

Last from the forum

    • jomexej304
    • The crimson peony shrimp sushi is big. The shrimp body is almost 9 centimeters long. It's miles sweet and chewy. The beef is thick and very scrumptious. The clam meat cooked with sake is sweet and has no sand. 
    • In Component / Afisha Joomla
    • Баг?
    • У меня одна категория материалов. В этой категории несколько сотен материалов. Есть несколько кастомных полей.Первое типа list (categorywork), другие* list c мультивыбором. Другие* зависят от первого Атрибут showon (categorywork:1, categorywork:2 и так далее). Какие настройки я должен сделать на вкладке "Параметры фильтрации", что бы в модуле подбора вылезали не сразу все "Другие", а только та, которая зависит от showon (как это реализовано в Joomla)? Установлена Joomla 5.1.4 + JL Content Fields Filter v.3.0.0 То есть вылезают все select, даже те которые содержат в себе параметры отсутствующие у материалов (не назначенные к материалам). Изображения: раз: drive.google.com/file/d/1wDtY_iBL5StjrTv...3co/view?usp=sharing два: drive.google.com/file/d/1Vqy5MlJWC15i3z1...nbo/view?usp=sharing
    • In Modules Joomline / JL Content Fields Filter
    • sports
    • Tesla CEO Elon Musk was snubbed from TIME Magazine’s “Most Influential People in AI” list, despite being the driving force behind the company’s self-driving efforts, data collection, and the development of the humanoid robot Optimus, along with other projects, like xAI. TIME released its list today, highlighting what it intended to be a compilation of the most brilliant names in AI. Those on the list have achieved big things, and the names on the list are not to be discredited in any way. Some of the names on the list are the biggest in tech and AI development. Jensen Huang, CEO of Nvidia, Sam Altman, CEO of OpenAI, Satya Nadella, CEO of Microsoft, and Mark Zuckerberg, CEO of Meta, are all included on the list. These are just a few of the names that TIME listed as the most influential in AI, but Musk was not included.  
    • In Общий форум / Общие вопросы по Joomla
© 2010- JoomLine
The Joomla!® name is used under a limited license from Open Source Matters in the United States and other countries. joomline.net is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.

email: This email address is being protected from spambots. You need JavaScript enabled to view it.