mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 16:21:18 +08:00
FEATURE: Add group settngs to allow users to leave a group freely.
https://meta.discourse.org/t/split-join-leave-freely-setting-on-groups/65565
This commit is contained in:
@ -146,7 +146,7 @@ class GroupsController < ApplicationController
|
||||
|
||||
def add_members
|
||||
group = Group.find(params[:id])
|
||||
group.public ? ensure_logged_in : guardian.ensure_can_edit!(group)
|
||||
group.public_admission ? ensure_logged_in : guardian.ensure_can_edit!(group)
|
||||
|
||||
users =
|
||||
if params[:usernames].present?
|
||||
@ -163,7 +163,7 @@ class GroupsController < ApplicationController
|
||||
|
||||
raise Discourse::NotFound if users.blank?
|
||||
|
||||
if group.public
|
||||
if group.public_admission
|
||||
if !guardian.can_log_group_changes?(group) && current_user != users.first
|
||||
raise Discourse::InvalidAccess
|
||||
end
|
||||
@ -201,7 +201,7 @@ class GroupsController < ApplicationController
|
||||
|
||||
def remove_member
|
||||
group = Group.find(params[:id])
|
||||
group.public ? ensure_logged_in : guardian.ensure_can_edit!(group)
|
||||
group.public_exit ? ensure_logged_in : guardian.ensure_can_edit!(group)
|
||||
|
||||
user =
|
||||
if params[:user_id].present?
|
||||
@ -216,7 +216,7 @@ class GroupsController < ApplicationController
|
||||
|
||||
raise Discourse::NotFound unless user
|
||||
|
||||
if group.public
|
||||
if group.public_exit
|
||||
if !guardian.can_log_group_changes?(group) && current_user != user
|
||||
raise Discourse::InvalidAccess
|
||||
end
|
||||
@ -322,7 +322,8 @@ class GroupsController < ApplicationController
|
||||
:flair_color,
|
||||
:bio_raw,
|
||||
:full_name,
|
||||
:public,
|
||||
:public_admission,
|
||||
:public_exit,
|
||||
:allow_membership_requests
|
||||
)
|
||||
end
|
||||
|
Reference in New Issue
Block a user