Let membership invitations be resent.

This commit is contained in:
Douwe Maan 2015-04-10 15:26:03 +02:00
parent 87dd3f215f
commit 453340d449
5 changed files with 37 additions and 0 deletions

View File

@ -47,6 +47,17 @@ class Groups::GroupMembersController < Groups::ApplicationController
end
end
def resend_invite
@group_member = @group.group_members.find(params[:id])
if @group_member.invite?
@group_member.resend_invite
redirect_to group_group_members_path(@group), notice: 'Invite was successfully resent.'
else
redirect_to group_group_members_path(@group), alert: 'The invite has already been accepted.'
end
end
def leave
@group_member = @group.group_members.where(user_id: current_user.id).first

View File

@ -59,6 +59,19 @@ class Projects::ProjectMembersController < Projects::ApplicationController
end
end
def resend_invite
@project_member = @project.project_members.find(params[:id])
if @project_member.invite?
@project_member.resend_invite
redirect_to namespace_project_project_members_path(@project.namespace,
@project), notice: 'Invite was successfully resent.'
else
redirect_to namespace_project_project_members_path(@project.namespace,
@project), alert: 'The invite has already been accepted.'
end
end
def leave
@project.project_members.find_by(user_id: current_user).destroy

View File

@ -24,6 +24,10 @@
= link_to member.created_by.name, user_path(member.created_by)
= time_ago_with_tooltip(member.created_at)
- if show_controls && can?(current_user, :admin_group, @group)
= link_to resend_invite_group_group_member_path(@group, member), method: :post, class: "btn-xs btn", title: 'Resend invite' do
Resend invite
- if show_roles
%span.pull-right
%strong= member.human_access

View File

@ -24,6 +24,10 @@
= link_to member.created_by.name, user_path(member.created_by)
= time_ago_with_tooltip(member.created_at)
- if current_user_can_admin_project
= link_to resend_invite_namespace_project_project_member_path(@project.namespace, @project, member), method: :post, class: "btn-xs btn", title: 'Resend invite' do
Resend invite
- if current_user_can_admin_project
- unless @project.personal? && user == current_user
.pull-right

View File

@ -260,6 +260,7 @@ Gitlab::Application.routes.draw do
scope module: :groups do
resources :group_members, only: [:index, :create, :update, :destroy] do
post :resend_invite, on: :member
delete :leave, on: :collection
end
@ -486,6 +487,10 @@ Gitlab::Application.routes.draw do
get :import
post :apply_import
end
member do
post :resend_invite
end
end
resources :notes, only: [:index, :create, :destroy, :update], constraints: { id: /\d+/ } do