Отключить шум от админов!

:information_source: Краткое описание Автоматически скрывает различные уведомления из меню пользователей для администраторов
:hammer_and_wrench: Репозиторий https://github.com/Lillinator/dismiss-admin-noise
:question: Руководство по установке Как установить тему или компонент темы

Установить этот компонент темы

:woman_technologist:t2: Обзор

Лёгкий компонент темы для Discourse, который автоматически скрывает (отключает) определённые системные уведомления для администраторов.

Этот компонент разработан для снижения визуального шума и когнитивной нагрузки — особенно полезен для нейроразнообразных администраторов (как я), тех, кто часто обновляет свои инстансы и отслеживает изменения через Meta, или просто администраторов, живущих на грани в своих форумах для разработки! (тоже как я) :grin:

:gear: Настройки

Следующие уведомления можно автоматически отключать в настройках компонента для администраторов:

Настройка Описание
No new features notifications Скрывать уведомления о новых функциях
No invitee accepted notifications Скрывать уведомления о принятии приглашённых
No membership accepted notifications Скрывать уведомления о принятии членства в группе (примечание: не влияет на объединение уведомлений о членстве)
No granted badge notifications Скрывать уведомления о выданных бейджах
No upcoming change promoted notifications Скрывать уведомления о автоматически продвигаемых предстоящих изменениях

:light_bulb: Примечания

  • Затрагиваются только администраторы; например, неадминистраторы по-прежнему будут получать уведомления о выданных им бейджах или принятых приглашениях, независимо от настроек, включённых в этом компоненте.

  • Если все настройки включены, у пользователя может оказаться пустой вкладка «Другие уведомления» или «Все уведомления» в зависимости от активности уведомлений на форуме.

  • Уведомления администраторов о предстоящих изменениях теперь можно автоматически отключать с помощью настройки в предпочтениях пользователя -> уведомления.

  • Я не несу ответственности, если этот компонент каким-либо образом приведёт к пропуску важного уведомления!


Посмотрите мои другие проекты для Discourse
8 лайков

Возможно, дело в этом, ха-ха. У меня диагностирован СДВГ. Жалею, что не сделал скриншот несколько минут назад: я проснулся и увидел около 30 принятых приглашений, но в окне уведомлений отображались только последние 15 (мне не хотелось бы посещать /u/hydn/notifications только из-за того, что приглашения занимают все слоты в выпадающем списке). По крайней мере, отсутствие встроенного способа управления этим вызывало раздражение.

Спасибо!

2 лайка

Кстати, если вы хотите протестировать настройки этого компонента, не выполняя фактические действия, которые вызывают эти уведомления (и у вас есть доступ по SSH), вы можете использовать следующие команды в консоли Rails для запуска соответствующих событий уведомлений (используйте триггеры, применимые к настройкам вашего компонента):

cd /var/discourse
.launcher enter app
rails c
# найдите и установите переменную пользователя
u = User.find_by_username("ВАШЕ ИМЯ АДМИНИСТРАТОРА")

# триггер: новые функции
Notification.create!(
  user: u,
  notification_type: Notification.types[:new_features],
  read: false,
  data: {}.to_json
)

# триггер: приглашённый принял
Notification.create!(
  user: u,
  notification_type: Notification.types[:invitee_accepted],
  read: false,
  data: { display_username: "awesome_new_user" }.to_json
)

# триггер: членство в группе принято
Notification.create!(
  user: u,
  notification_type: Notification.types[:membership_request_accepted],
  read: false,
  data: { group_name: "Trust_Level_4" }.to_json
)

# триггер: выдана значок
Notification.create!(
  user: u,
  notification_type: Notification.types[:granted_badge],
  read: false,
  data: { badge_name: "Great Topic", badge_id: 10 }.to_json
)

# триггер: предстоящее изменение автоматически продвинуто
Notification.create!(
  user: u,
  notification_type: Notification.types[:upcoming_change_automatically_promoted],
  read: false,
  data: { 
    upcoming_change_humanized_name: "Experimental CSS",
    upcoming_change_name: "experimental_css"
  }.to_json
)

# широковещательная рассылка (откройте браузер в другом окне или вкладке и следите за ним при нажатии Enter!)
u.publish_notifications_state

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