diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2016-11-01 13:48:33 +0000 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2016-11-01 13:48:33 +0000 |
commit | 51f303967c7bd86066cb879058d1344e5872eb0f (patch) | |
tree | 6bc16b53b5c00c96f98c43c26387aaf6a30333cb /app/controllers | |
parent | 957308af84ca8312ea362c7272a4008dac808086 (diff) | |
parent | 921677782f09d7baf4b6655570d4efc16ab46779 (diff) | |
download | gitlab-ce-51f303967c7bd86066cb879058d1344e5872eb0f.tar.gz |
Merge branch 'refactor_group_members' into 'master'
Implement CreateProjectMembers service to make controller thin
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/23566
See merge request !7170
Diffstat (limited to 'app/controllers')
-rw-r--r-- | app/controllers/projects/project_members_controller.rb | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/app/controllers/projects/project_members_controller.rb b/app/controllers/projects/project_members_controller.rb index d08f490de18..699a56ae2f8 100644 --- a/app/controllers/projects/project_members_controller.rb +++ b/app/controllers/projects/project_members_controller.rb @@ -25,18 +25,15 @@ class Projects::ProjectMembersController < Projects::ApplicationController end def create - if params[:user_ids].blank? - return redirect_to(namespace_project_project_members_path(@project.namespace, @project), alert: 'No users or groups specified.') - end + status = Members::CreateService.new(@project, current_user, params).execute - @project.team.add_users( - params[:user_ids].split(','), - params[:access_level], - expires_at: params[:expires_at], - current_user: current_user - ) + redirect_url = namespace_project_project_members_path(@project.namespace, @project) - redirect_to namespace_project_project_members_path(@project.namespace, @project), notice: 'Users were successfully added.' + if status + redirect_to redirect_url, notice: 'Users were successfully added.' + else + redirect_to redirect_url, alert: 'No users or groups specified.' + end end def update |