Как отключить новую функцию «Добавлено...», которая была добавлена в раздел Уведомления персонала?

Привет!
Я заметил, что в уведомлениях для сотрудников теперь автоматически добавляется строка «Добавлено: Имя-сотрудника» к любому уведомлению, созданному сотрудником или администратором.

Однако в нашем случае есть ситуации, когда нам не нужно и не нужно включать это принудительное поле «Добавлено Имя»:

  1. Когда сотрудник давно не публиковал пост, система автоматически генерирует уведомление: «Сотрудник давно не публиковал пост…» или, если это его первый пост, «Опубликовал первый пост, приветствуйте его в сообществе». Я заменяю эти автоматические уведомления на информацию о должности и роли сотрудника. Например, я удаляю автоматическое уведомление и обновляю его до чего-то вроде «Сотрудник является менеджером продукта в аналитической команде». В этом случае я не хочу, чтобы это выглядело как «Сотрудник является менеджером продукта в аналитической команде (Добавлено @gassim:cry:
  2. Когда пост является продолжением с ресурсами, презентациями или записью, я или один из сотрудников отвечаю ссылками на эти материалы, а выше добавляю уведомление для сотрудников, например: « :video_camera: Запись». Мне не хочется, чтобы это отображалось как « :video_camera: Запись (Добавлено @gassim)».

В вышеописанных случаях включение имени для нас не актуально. Если нам действительно нужно узнать, кто добавил уведомление для сотрудников, мы можем использовать Data Explorer или перейти в Администрирование > Журнал > Действия сотрудников — Действие: «добавить заметку сотрудника».

Если мы захотим, чтобы сотрудники включали строку «(Добавлено)», мы можем сделать это вручную в тех случаях, когда это действительно необходимо.

Есть ли способ отключить эту новую функцию?

Спасибо!

Решения через настройки для этого нет. Однако вы можете добиться этого с помощью JavaScript:

В вашей теме или в новом компоненте темы добавьте следующее во вкладку JS:

import { apiInitializer } from "discourse/lib/api";
import { schedule } from "@ember/runloop";

export default apiInitializer((api) => {
  const current = api.getCurrentUser();
  if (!current || !current.staff) {
    return;
  }

  // Удаляет всё после первого абзаца,
  // содержащего уведомление для сотрудников.
  api.decorateCookedElement((element, helper) => {
    const post = helper?.getModel();
    if (!post || !post.notice) {
      return;
    }

    schedule("afterRender", () => {
      const postNoticeMessage = document.querySelector(
        `article[data-post-id="${post.id}"] .post-notice-message`
      );

      if (postNoticeMessage) {
        postNoticeMessage.replaceWith(postNoticeMessage.firstChild);
      }
    });
  });
});

Этого должно быть достаточно.

Отмечу, что эти пометки «добавлено» видны только коллегам из staff, поэтому обычные пользователи их не увидят.

Спасибо, Бас, отличная мысль!