diff options
author | barthc <mackintosh02@gmail.com> | 2016-09-01 20:23:39 +0300 |
---|---|---|
committer | barthc <mackintosh02@gmail.com> | 2016-10-05 11:57:54 +0300 |
commit | 35ced4dae480d61ddc4d73eb4695626ecc419e9c (patch) | |
tree | a3c9d9cec9c9741884ef5d4dbed0402e61a62f5d /app/controllers/projects/group_links_controller.rb | |
parent | 4dc61dc7128608ce5eca4b0911d7174a1ab2aea4 (diff) |
fix group links 404
Diffstat (limited to 'app/controllers/projects/group_links_controller.rb')
-rw-r--r-- | app/controllers/projects/group_links_controller.rb | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/app/controllers/projects/group_links_controller.rb b/app/controllers/projects/group_links_controller.rb index d0c4550733c..7a7475a7345 100644 --- a/app/controllers/projects/group_links_controller.rb +++ b/app/controllers/projects/group_links_controller.rb @@ -4,17 +4,25 @@ class Projects::GroupLinksController < Projects::ApplicationController def index @group_links = project.project_group_links.all + + @skip_groups = @group_links.pluck(:group_id) + @skip_groups << project.group.try(:id) end def create - group = Group.find(params[:link_group_id]) - return render_404 unless can?(current_user, :read_group, group) - - project.project_group_links.create( - group: group, - group_access: params[:link_group_access], - expires_at: params[:expires_at] - ) + group = Group.find(params[:link_group_id]) if params[:link_group_id].present? + + if group + return render_404 unless can?(current_user, :read_group, group) + + project.project_group_links.create( + group: group, + group_access: params[:link_group_access], + expires_at: params[:expires_at] + ) + else + flash[:alert] = 'Please select a group.' + end redirect_to namespace_project_group_links_path(project.namespace, project) end |