На моём форуме участники могут самостоятельно менять своё имя и имя пользователя. Однако при этом изменение фиксируется как действие сотрудника, из-за чего в логе действий модераторов появляется много лишнего шума. На приведённом скриншоте пользователь «B» — новый участник, который изменил своё имя пользователя самостоятельно, но это действие записано в логе действий сотрудников. Около половины записей в логе — это самостоятельные изменения имени пользователя, а другая половина — реальные действия сотрудников. Я хочу сохранять логи, когда администратор или модератор меняет имя или имя пользователя другого участника, поэтому, возможно, при фиксации этого события следует проверять условие пользователь, внесший изменения, != пользователь, чьи изменения внесены, прежде чем записывать запись в лог.
С моей точки зрения, это ожидаемо — смена имени должна быть редкой, а пользователи могут менять его, чтобы избежать внимания, что довольно опасно.
Есть причина, по которой Discourse по умолчанию разрешает (инициируемую самим пользователем) смену имени только новым пользователям в течение 3 дней после создания аккаунта.
К сожалению, возвращение этой настройки к стандартному значению в 3 дня не повлияет существенно на количество изменений имён пользователей на моём форуме, поскольку большинство участников меняют имя сразу после регистрации. Это связано с тем, что регистрации осуществляются вне Discourse, а форум использует SSO для входа в систему. Если кто-то регистрируется с адресом электронной почты bobjoe@gmail.com, его имя по умолчанию становится bobjoe, поэтому новые участники обычно меняют его на то, которое им больше нравится.
Полагаю, мне просто придётся мириться со всем спамом «изменения имени пользователя» в журнале действий персонала.
Я сообщил об этом как об ошибке, поскольку изменение имени пользователем самим собой не является действием сотрудника, поэтому в буквальном смысле это некорректная категоризация. Однако я понимаю, что намеренная некорректная категоризация может потенциально принести пользу другим владельцам форумов, хотя это немного запутывает. (Изначально у меня возник вопрос: «Какой из моих сотрудников постоянно меняет имена всех пользователей??»)
Похоже, решение состоит в том, чтобы исправить ваш поток SSO и запросить у пользователя предпочитаемое имя перед созданием его учетной записи в Discourse?
Я не знаю, как это сделать, и если я задам вопрос об этом, это будет не по теме в этой ветке.
