论坛主题创建者姓名在已发送的带有通知功能的电子邮件中被用作通知者

环境

Discourse 版本:2.8.0.beta1 ( 98736e15f0 )
问题复现能力:100%

复现步骤:

  1. 点击主题底部的“分享”按钮。
  2. 点击“通知”按钮。
  3. 在“通知以下用户关于此主题:”字段中,输入一个 Discourse 用户名。
  4. 点击“✓”按钮,通知该用户此论坛主题。
  5. 检查您的电子邮件收件箱。
  6. 查看“通过 [您的站点名称]”文本之前的发件人名称。

预期结果:

我期望发件人名称显示为“[执行通知的人员用户名] 通过 [您的站点名称]”。

在此示例中,应显示 VirtualTour 而不是 ehunkemoeller。

ehunkemoeller 是该论坛主题的创建者,而 VirtualTour 是实际通知用户此主题的人员。

实际结果:

使用的是论坛主题创建者的名称,而不是通知者的名称。

@tobiaseigen 你最近处理过这个,这符合你的预期吗?

1 个赞

我能复现这个问题。我之前没有注意到,是因为我没有测试启用“当有人引用我、回复我的帖子、提及我的@用户名或邀请我参与话题时发送电子邮件”这一用户偏好的情况。正如 Joel 的截图所示,通知者的用户名显示正确,在通知菜单中也是如此。

Joel 发现的问题是,Discourse 默认启用的“邮件发件人显示名称”管理设置,会在邮件发件人字段中显示帖子作者的完整姓名。

@dan,能否在此情况下将发件人用户名改为通知者,而不是帖子作者?

2 个赞

我之前遇到过这个 bug,但一直无法复现。问题在于:当论坛启用用户名显示时,使用的是原发帖人的名字,而不是邀请人的名字。如果禁用了用户名显示,则不会显示任何名字,当前显示为“via FORUM_NAME noreply@example.com”,但正确格式应为“USERNAME via FORUM_NAME noreply@example.com”。

我已在以下 PR 中修复了这两个问题:

感谢你的 bug 报告!

3 个赞