From a74805d3f8d8cf16641e404d2a46e898ec0fe133 Mon Sep 17 00:00:00 2001 From: jbrw Date: Mon, 19 Oct 2020 16:30:21 -0400 Subject: [PATCH] FIX: moderators can add/remove group owners (#10960) If `SiteSetting.moderators_manage_categories_and_groups` is enabled, a moderator shoud be able to add/remove group owners. --- .../app/components/group-member-dropdown.js | 2 +- .../discourse/app/templates/group-index.hbs | 1 + .../app/templates/mobile/group-index.hbs | 1 + .../app/templates/modal/group-add-members.hbs | 2 +- .../discourse/tests/acceptance/group-test.js | 30 ++++++ .../tests/fixtures/group-fixtures.js | 28 +++++ app/controllers/admin/groups_controller.rb | 3 + config/routes.rb | 11 +- spec/requests/admin/groups_controller_spec.rb | 101 ++++++++++++++++++ 9 files changed, 172 insertions(+), 7 deletions(-) diff --git a/app/assets/javascripts/discourse/app/components/group-member-dropdown.js b/app/assets/javascripts/discourse/app/components/group-member-dropdown.js index 86620d8698d..f4cb9ad287f 100644 --- a/app/assets/javascripts/discourse/app/components/group-member-dropdown.js +++ b/app/assets/javascripts/discourse/app/components/group-member-dropdown.js @@ -23,7 +23,7 @@ export default DropdownSelectBoxComponent.extend({ }, ]; - if (this.get("currentUser.admin")) { + if (this.canAdminGroup) { if (this.member.owner) { items.push({ id: "removeOwner", diff --git a/app/assets/javascripts/discourse/app/templates/group-index.hbs b/app/assets/javascripts/discourse/app/templates/group-index.hbs index c21bc1b5abe..973f0aa4ce0 100644 --- a/app/assets/javascripts/discourse/app/templates/group-index.hbs +++ b/app/assets/javascripts/discourse/app/templates/group-index.hbs @@ -59,6 +59,7 @@ {{#if canManageGroup}} {{group-member-dropdown member=m + canAdminGroup=model.can_admin_group onChange=(action "actOnGroup" m) }} {{/if}} diff --git a/app/assets/javascripts/discourse/app/templates/mobile/group-index.hbs b/app/assets/javascripts/discourse/app/templates/mobile/group-index.hbs index 36ec17ebdfa..5ef942e30cf 100644 --- a/app/assets/javascripts/discourse/app/templates/mobile/group-index.hbs +++ b/app/assets/javascripts/discourse/app/templates/mobile/group-index.hbs @@ -45,6 +45,7 @@ {{#if canManageGroup}} {{group-member-dropdown member=user + canAdminGroup=model.can_admin_group onChange=(action "actOnGroup" user) }} {{/if}} diff --git a/app/assets/javascripts/discourse/app/templates/modal/group-add-members.hbs b/app/assets/javascripts/discourse/app/templates/modal/group-add-members.hbs index 4d07bdbe368..1222da13bc8 100644 --- a/app/assets/javascripts/discourse/app/templates/modal/group-add-members.hbs +++ b/app/assets/javascripts/discourse/app/templates/modal/group-add-members.hbs @@ -16,7 +16,7 @@ id="group-add-members-user-selector"}} - {{#if currentUser.admin}} + {{#if model.can_admin_group}}