Moin
2024 年12 月 16 日 21:03
1
启用“moderators manage categories and groups”后,版主会在自动群组中看到“管理”选项卡。他们还可以选择编辑类别和标签跟踪的默认设置。但是,管理员添加的类别或标签对他们不可见。此外,虽然他们可以在界面中添加类别和标签并保存,但他们的更改不会被保存。没有错误指示保存失败。
版主为什么不允许编辑自动群组的跟踪默认设置?
end
def update
group = Group.find(params[:id])
guardian.ensure_can_edit!(group) if !guardian.can_admin_group?(group)
group_attributes = group_params(automatic: group.automatic)
reset_group_email_settings_if_disabled!(group, group_attributes)
categories, tags = []
if !group.automatic || current_user.admin
notification_level, categories, tags = user_default_notifications(group, group_attributes)
if params[:update_existing_users].blank?
user_count = count_existing_users(group.group_users, notification_level, categories, tags)
if user_count > 0
return(
render status: 422,
json: {
user_count: user_count,
errors: [I18n.t("invalid_params", message: :update_existing_users)],
:grant_trust_level,
:automatic_membership_email_domains,
:publish_read_state,
:allow_unknown_sender_topic_replies,
)
custom_fields = DiscoursePluginRegistry.editable_group_custom_fields
attributes << { custom_fields: custom_fields } if custom_fields.present?
end
if !automatic || current_user.admin
%i[muted regular tracking watching watching_first_post].each do |level|
attributes << { "#{level}_category_ids" => [] }
attributes << { "#{level}_tags" => [] }
end
end
attributes << { associated_group_ids: [] } if guardian.can_associate_groups?
attributes.concat(DiscoursePluginRegistry.group_params)
params.require(:group).permit(*attributes)
2 个赞