Commit 9de23248d8f3d6464d329b979ccfe98c23eb4aa3
1 parent
1dd66061
Exists in
master
and in
4 other branches
You should not be able to remove a Group owner
Showing
3 changed files
with
18 additions
and
2 deletions
Show diff stats
app/controllers/users_groups_controller.rb
... | ... | @@ -18,7 +18,7 @@ class UsersGroupsController < ApplicationController |
18 | 18 | |
19 | 19 | def destroy |
20 | 20 | @users_group = @group.users_groups.find(params[:id]) |
21 | - @users_group.destroy | |
21 | + @users_group.destroy unless @users_group.user == @group.owner | |
22 | 22 | |
23 | 23 | respond_to do |format| |
24 | 24 | format.html { redirect_to people_group_path(@group), notice: 'User was successfully removed from group.' } | ... | ... |
app/views/users_groups/_users_group.html.haml
... | ... | @@ -13,6 +13,6 @@ |
13 | 13 | - else |
14 | 14 | = member.human_access |
15 | 15 | |
16 | - - if show_controls && user != current_user | |
16 | + - if show_controls && user != current_user && user != @group.owner | |
17 | 17 | = link_to group_users_group_path(@group, member), confirm: remove_user_from_group_message(@group, user), method: :delete, remote: true, class: "btn-tiny btn btn-remove", title: 'Remove user from group' do |
18 | 18 | %i.icon-minus.icon-white | ... | ... |
... | ... | @@ -0,0 +1,16 @@ |
1 | +desc "GITLAB | Migrate Gropus to match v6.0" | |
2 | +task migrate_groups: :environment do | |
3 | + puts "This will add group owners to group membership" | |
4 | + ask_to_continue | |
5 | + | |
6 | + Group.find_each(batch_size: 20) do |group| | |
7 | + begin | |
8 | + group.send :add_owner | |
9 | + print '.' | |
10 | + rescue => ex | |
11 | + puts ex.message | |
12 | + print 'F' | |
13 | + end | |
14 | + end | |
15 | +end | |
16 | + | ... | ... |