| Краткое описание | Автоматическое управление членством в группах | |
| Ссылка на репозиторий | https://github.com/communiteq/discourse-dynamic-groups | |
| Руководство по установке | Как установить плагины в Discourse |
Этот плагин следует считать бета-версией 
Возможности
Сообщества Discourse часто нуждаются в автоматизации членства в группах на основе таких условий, как наличие значков или текущего членства в других группах.
Типичные сценарии использования включают:
-
Пользователи, не входящие в группу ‘subscribers’
-
Пользователи, не заблокированные для публикации в Marketplace
-
Пользователи с уровнем доверия TL0 или TL1, но не TL2
-
Пользователи, завершившие обучение новых участников, или состоящие в сообществе более года
-
Пользователи, принадлежащие к client_1, client_2 или client_3, и не являющиеся стажёрами
Ранее для решения этой задачи требовались пользовательские скрипты, периодически синхронизирующие группы. Плагин Dynamic Groups устраняет эту необходимость.
Этот плагин добавляет поле для булевых выражений в настройки группы, позволяя администраторам определять правила динамического управления членством.
Примеры:
-
Пользователи, не входящие в группу ‘subscribers’
trust_level_0 AND NOT subscribers -
Пользователи, не заблокированные для публикации в Marketplace
trust_level_2 AND NOT banned_users -
Пользователи с уровнем доверия TL0 или TL1, но не TL2
trust_level_0 AND NOT trust_level_2 -
Пользователи, завершившие обучение новых участников или состоящие в сообществе более года
badge:certified OR badge:anniversary -
Пользователи, принадлежащие к client_1, client_2 или client_3, и не являющиеся стажёрами
(client_1 OR client_2 OR client_3) AND NOT interns
Настройка
После установки и включения плагина в интерфейсе администратора групп появится новая вкладка:
При вводе или обновлении булева выражения системе потребуется несколько моментов для наполнения группы подходящими пользователями. С этого момента членство в группе будет автоматически обновляться при изменении статуса пользователя.
Важно:
При определении правила группа помечается как автоматическая, что отключает возможность ручного изменения состава. Чтобы вернуть группу к ручному управлению, просто очистите поле выражения. Существующие участники останутся в группе, и вы снова получите возможность управлять составом вручную.
