Модуль Bitrx
ak.notifications
Модуль для показа оповещений пользователям в публичной части. Модуль позволяет создавать сообщения, видимые определенным группам пользователей с определенной периодичностью. Также настройки видимости можно гибко настроить с помощью внешних функций, вызываемых в php-условии сообщения. Например, показать сообщение не просто авторизованным пользователям, а тем из них, у которых, например, истекает подписка на что-либо. Или не заполнен телефон в профиле. Или еще что-то, проверяемое внешним методом, подключенным через php-условие, и возвращающим true или false.
Для образца в модуле есть метод Ak\Notifications\Form::testFunction(), проверяющий пользователя на принадлежность к группе администраторов. При сохранении сообщения, если это поле не пустое, будет проверена строка с методом через функцию is_callalble().
Оповещение можно показывать в некотором интервале дат, задаваемым полями активности с… и по… и флажком активности.
Настройка Периодичность показа, сек: устанавливает периодичность. По умолчанию - 0, то есть сообщение будет выведено компонентом на каждом хите. Можно установить желаемую частоту показа, хоть раз в сутки, хоть раз в месяц. Реализация за счет установки куки после показа на указанный интервал времени.
Настройка Позволять скрыть после показа: разрешает скрыть оповещение, кликнув по кнопке закрытия или кнопке Подтвердить прочтение. В этом случае на оповещении будут показан(ы) элемент(ы) управления, клик по которым, скроет оповещение и установит ему куку просмотра на год. Установленная настройка Сохранять факт просмотра в БД: позволяет записать в БД факт клика по кнопке Подтвердить прочтение - кто, какое сообщение, когда. Записываются клики только авторизованных пользователей!
Эти две настройки, используемые совместно с дополнительным php-условием позволяют реализовать такие схемы, например, как: показывать оповещение пользователю без возможности его отключить до тех пор, пока он не заполнит свой телефон в профиле. Или создать оповещение, к которому будет прикреплен файл оферты или гиперссылка на оферту, с записью клика в БД и запретом на скрытие.
Установка
Папку модуля ak.notifications разместить в /local/modules/ сайта, установить модуль через админку.
Настройки модуля
- время кэширования
- цветовая схема оповещений. Настройки подтягиваются в форму создания/редактирования оповещения, где их можно изменить уже для конкретного оповещения.
- права доступа к модуля. Нет доступа, только просмотр, полный доступ с редактированием.
Скриншоты
Установили модуль
Настроили
Вывод в публичной части. Можно над хидером, можно на отдельной странице, например, в ЛК. Как удобнее.
Можно использовать:
Точка входа: Админка - Меню - Сервисы - Оповещение. Видимость в меню согласно настроек прав доступа.
Фильтрация списка
Создаем оповощение, заполняем основную вкладку, когда, что и с какой периодичностью будет показано
Цели - кому будет показано
Цветовая схема - в какой расцветке
Таблица подтвержденных просмотров - тут будут накапливаться клики по кнопке Подтвердить прочтение. Также фильтр и выгрузка в xls при необходимости.
Вывод оповещений - на страницу бросаем компонент в визуальном режиме в нужое место
Ну или в режиме php-редактирования добавляем вызов компонента $APPLICATION->IncludeComponent( “ak:notifications.list”,"", []);
Описание
Модуль вывода оповещений для пользователей в публичной части