Фильтр /filter был бы удобнее, если бы поддерживал личные сообщения

Дополнительный запрос из Добавление события: фильтр в язык запросов фильтра тем (расширение плагина Discourse Events):

Фильтр event: теперь объединён и работает — спасибо!

Однако я столкнулся с пробелом, который ограничивает его полезность на практике: маршрут /filter (а следовательно, и плагин Custom Topic Lists) запрашивает только обычные темы. Сообщения полностью исключены, так как они используют отдельную систему маршрутов (/topics/private-messages-group/... / topics/private-messages/...).

Это означает, что сообщество, использующее Сообщения наряду с публичными обсуждениями, не может создать единый унифицированный взгляд «все события». Нужно две отдельные страницы, и нельзя комбинировать фильтры между ними.

Отметим, что система поиска уже охватывает оба архетипа с помощью in:all — но она не может сообщить мне, какие результаты являются событиями. Система фильтров знает о событиях — но не видит сообщений. Ни одна из них бесполезна по отдельности!

Проблема

event:any покажет все публичные темы с событиями, но молча пропустит любые события, созданные в личных сообщениях. Для групп, которые используют личные сообщения для приглашений, координации или событий по приглашениям, это значительная слепая зона.

На то же ограничение наткнулся @pfaffman — findFilteredTopics не получает темы с archetype = 'private_message':

Предлагаемое решение

Разрешить маршруту /filter опционально включать личные сообщения через селектор архетипа, например:

event:any archetype:regular,privatemessage

Или более простой булевый флаг:

event:any include-messages

Пример использования

Как менеджер сообщества, я хочу иметь одну ссылку в боковой панели, которая показывает каждое событие на сайте — публичное или личное, — чтобы ничего не потерялось между двумя отдельными представлениями.

3 лайка