Add emails around invitation.
This commit is contained in:
parent
39f389ae0f
commit
717fa136a5
|
@ -5,8 +5,27 @@ module Emails
|
||||||
@group = @group_member.group
|
@group = @group_member.group
|
||||||
@target_url = group_url(@group)
|
@target_url = group_url(@group)
|
||||||
@current_user = @group_member.user
|
@current_user = @group_member.user
|
||||||
mail(to: @group_member.user.email,
|
mail(to: @group_member.user.notification_email,
|
||||||
subject: subject("Access to group was granted"))
|
subject: subject("Access to group was granted"))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def group_member_invited_email(group_member_id, token)
|
||||||
|
@group_member = GroupMember.find group_member_id
|
||||||
|
@group = @group_member.group
|
||||||
|
@token = token
|
||||||
|
@target_url = group_url(@group)
|
||||||
|
mail(to: @group_member.invite_email,
|
||||||
|
subject: "Invite to join group #{@group.name}")
|
||||||
|
end
|
||||||
|
|
||||||
|
def group_invite_accepted_email(group_member_id)
|
||||||
|
@group_member = GroupMember.find group_member_id
|
||||||
|
return if @group_member.created_by.nil?
|
||||||
|
|
||||||
|
@group = @group_member.group
|
||||||
|
@target_url = group_url(@group)
|
||||||
|
mail(to: @group_member.created_by.notification_email,
|
||||||
|
subject: subject("Invite accepted"))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,14 +1,33 @@
|
||||||
module Emails
|
module Emails
|
||||||
module Projects
|
module Projects
|
||||||
def project_access_granted_email(user_project_id)
|
def project_access_granted_email(project_member_id)
|
||||||
@project_member = ProjectMember.find user_project_id
|
@project_member = ProjectMember.find project_member_id
|
||||||
@project = @project_member.project
|
@project = @project_member.project
|
||||||
@target_url = namespace_project_url(@project.namespace, @project)
|
@target_url = namespace_project_url(@project.namespace, @project)
|
||||||
@current_user = @project_member.user
|
@current_user = @project_member.user
|
||||||
mail(to: @project_member.user.email,
|
mail(to: @project_member.user.notification_email,
|
||||||
subject: subject("Access to project was granted"))
|
subject: subject("Access to project was granted"))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def project_member_invited_email(project_member_id, token)
|
||||||
|
@project_member = ProjectMember.find project_member_id
|
||||||
|
@project = @project_member.project
|
||||||
|
@token = token
|
||||||
|
@target_url = namespace_project_url(@project.namespace, @project)
|
||||||
|
mail(to: @project_member.invite_email,
|
||||||
|
subject: "Invite to join project #{@project.name_with_namespace}")
|
||||||
|
end
|
||||||
|
|
||||||
|
def project_invite_accepted_email(project_member_id)
|
||||||
|
@project_member = ProjectMember.find project_member_id
|
||||||
|
return if @project_member.created_by.nil?
|
||||||
|
|
||||||
|
@project = @project_member.project
|
||||||
|
@target_url = namespace_project_url(@project.namespace, @project)
|
||||||
|
mail(to: @project_member.created_by.notification_email,
|
||||||
|
subject: subject("Invite accepted"))
|
||||||
|
end
|
||||||
|
|
||||||
def project_was_moved_email(project_id, user_id)
|
def project_was_moved_email(project_id, user_id)
|
||||||
@current_user = @user = User.find user_id
|
@current_user = @user = User.find user_id
|
||||||
@project = Project.find project_id
|
@project = Project.find project_id
|
||||||
|
|
|
@ -41,6 +41,12 @@ class GroupMember < Member
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
def send_invite
|
||||||
|
notification_service.invite_group_member(self, @raw_invite_token)
|
||||||
|
|
||||||
|
super
|
||||||
|
end
|
||||||
|
|
||||||
def post_create_hook
|
def post_create_hook
|
||||||
notification_service.new_group_member(self)
|
notification_service.new_group_member(self)
|
||||||
|
|
||||||
|
@ -54,4 +60,10 @@ class GroupMember < Member
|
||||||
|
|
||||||
super
|
super
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def after_accept_invite
|
||||||
|
notification_service.accept_group_invite(self)
|
||||||
|
|
||||||
|
super
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -116,6 +116,12 @@ class ProjectMember < Member
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
def send_invite
|
||||||
|
notification_service.invite_project_member(self, @raw_invite_token)
|
||||||
|
|
||||||
|
super
|
||||||
|
end
|
||||||
|
|
||||||
def post_create_hook
|
def post_create_hook
|
||||||
unless owner?
|
unless owner?
|
||||||
event_service.join_project(self.project, self.user)
|
event_service.join_project(self.project, self.user)
|
||||||
|
@ -139,6 +145,12 @@ class ProjectMember < Member
|
||||||
super
|
super
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def after_accept_invite
|
||||||
|
notification_service.accept_project_invite(self)
|
||||||
|
|
||||||
|
super
|
||||||
|
end
|
||||||
|
|
||||||
def event_service
|
def event_service
|
||||||
EventCreateService.new
|
EventCreateService.new
|
||||||
end
|
end
|
||||||
|
|
|
@ -165,6 +165,14 @@ class NotificationService
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def invite_project_member(project_member, token)
|
||||||
|
mailer.project_member_invited_email(project_member.id, token)
|
||||||
|
end
|
||||||
|
|
||||||
|
def accept_project_invite(project_member)
|
||||||
|
mailer.project_invite_accepted_email(project_member.id)
|
||||||
|
end
|
||||||
|
|
||||||
def new_project_member(project_member)
|
def new_project_member(project_member)
|
||||||
mailer.project_access_granted_email(project_member.id)
|
mailer.project_access_granted_email(project_member.id)
|
||||||
end
|
end
|
||||||
|
@ -173,6 +181,14 @@ class NotificationService
|
||||||
mailer.project_access_granted_email(project_member.id)
|
mailer.project_access_granted_email(project_member.id)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def invite_group_member(group_member, token)
|
||||||
|
mailer.group_member_invited_email(group_member.id, token)
|
||||||
|
end
|
||||||
|
|
||||||
|
def accept_group_invite(group_member)
|
||||||
|
mailer.group_invite_accepted_email(group_member.id)
|
||||||
|
end
|
||||||
|
|
||||||
def new_group_member(group_member)
|
def new_group_member(group_member)
|
||||||
mailer.group_access_granted_email(group_member.id)
|
mailer.group_access_granted_email(group_member.id)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue