私人主题插件

问题是,禁用插件最常见的方法是简单地删除它,然后重新构建。因此,从 Discourse 内部来看,插件会立即“消失”。

有没有一个主题组件,当找不到设置 private_topics_enabled 或其值为 false 时,显示一个警告横幅并使用 CSS 来隐藏某些特定类别以减轻影响?

2 个赞

我明白了。在这种情况下,向 stdout/stderr 发出警告消息是否能改善情况?(可能不足以单独解决问题,但总比没有好。)

同样的问题:目前插件已消失,没有任何东西能够输出该消息。

听起来确实不错。我想。

如果有可能以一种允许其他用户组发布和查看他们自己消息的方式来实现此插件,那么禁用该插件将没有任何风险。

我无法确定核心的更改发生在何处,但我认为 57df0d526e 之前的某个更改允许用户在主页上看到主题标题,据我回忆,这是一个行为上的改变。

1 个赞

我今天早些时候在 tests-passed 上测试了这一点(在您的提交之后 4c7d58a),但我无法重现此问题。

  • 创建一个空论坛
  • 启用私有话题插件
  • 在 site-feedback 上启用私有话题
  • 创建用户 1 并让其在 site-feedback 中发帖
  • 退出并验证匿名用户看不到该话题
  • 创建用户 2 并验证其在分类页和主页(发现路由)(包括“最新”、“最新”、“热门”)上都看不到该话题
  • 禁用私有话题,查看用户 2 是否能看到该话题
  • 退出并查看匿名用户是否能看到该话题

您是否意识到管理员可以看到所有内容(根据“话题可见于话题创建者和以下用户组中的用户”分类设置以及 private topics admin sees all 插件设置),并且所有人都可以看到管理员发布的帖子(根据 private topics permitted groups 插件设置)?

理查德您好,是的!我正在无痕标签页中测试。我启用了许多其他插件——所以可能是其他插件干扰了,我会在禁用一些插件后回复您——抱歉,事情不像我最初想的那么简单。

1 个赞

我在我的 93 个插件的测试站点上测试过这个,这让我很好奇 :wink:

话虽如此,我也在没有用户登录的情况下进行了测试,但应该知道匿名页面正在被缓存到各种级别,所以如果你启用私有主题插件,你可能仍然会在几分钟内看到现有主题。

2 个赞

抱歉,我在缩小插件冲突方面并不算太成功。但我相信,我那可怜的 15 个插件很可能都被你们网站上的 91 个插件覆盖了!:stuck_out_tongue:

这两张截图都是在隐身模式下截取的,而且我也可以用一个没有足够权限查看私有主题类别内容的普通用户来重现这个问题。我检查了我的私有主题的类别设置以及全局站点设置,这些似乎也没有问题。

如果您能想到任何额外的调试方法或检查步骤,我将不胜感激——但无论如何,感谢您对此的支持——这个插件确实非常满足我们的需求!:slight_smile:

1 个赞

啊,那个类别设置是导致此问题的原因。我可以重现。待续。
感谢您的报告!

2 个赞

我已经为上述问题推送了一个修复程序

3 个赞

如果此插件与您的 Discourse Private Replies 插件一起使用,则会在摘要中产生无限递归,因为两个插件都使用 alias_method :original_for_digest, :for_digest

2 个赞

感谢您报告此问题,冲突已解决。

1 个赞

用户是否可以向主题创建者发送访问请求?

与在 Google Drive 中共享文件/文件夹类似,主题创建者(收到主题访问请求通知的人)将接受或拒绝查看主题内容的请求,并通过电子邮件/Discourse 通知进行通知。

这意味着主题标题现在是公开的,但用户必须点击“请求访问”按钮。

谢谢!

这可以通过让用户请求访问群组,然后让群组访问主题来实现。

2 个赞

Richard 还有另一个类似但不同的插件,可能也适用……

1 个赞

您好 @RGJ

我们非常高兴地使用您的插件。

我们的一些成员报告说他们收到了新回复的通知。

有超过 100 条新回复,但当我点击时,我只看到“您没有新主题”。

我们可以禁用此特定私有类别的“新回复”通知吗?

谢谢!

我们正在寻找一种提供(私密)支持的方法。这样老师就可以给学生布置作业。学生可以提交他的/她的答案。只有老师和学生可以看到作业。老师也可以给一个班级布置作业,只有该班级的成员才能看到问题和答案。我看到了这个插件 Private Topics Plugin 很好奇它是否适合这项任务。谢谢。

当然可以。

对于班级,您可以考虑使用一个类别,该类别的访问权限受包含该班级学生的组的限制。

4 个赞