confirmation emails
This commit is contained in:
108
rowers/teams.py
108
rowers/teams.py
@@ -20,7 +20,10 @@ from rowers.models import (
|
||||
|
||||
from rowers.tasks import (
|
||||
handle_remove_workouts_team,handle_sendemail_invite,
|
||||
handle_add_workouts_team,handle_sendemail_request
|
||||
handle_add_workouts_team,handle_sendemail_request,
|
||||
handle_sendemail_member_dropped,handle_sendemail_request_accept,
|
||||
handle_sendemail_request_reject,handle_sendemail_invite_reject,
|
||||
handle_sendemail_invite_accept,
|
||||
)
|
||||
|
||||
# Low level functions - to be called by higher level methods
|
||||
@@ -91,6 +94,7 @@ def mgr_remove_member(id,manager,rower):
|
||||
t = Team.objects.get(id=id)
|
||||
if t.manager == manager:
|
||||
remove_member(id,rower)
|
||||
send_email_member_dropped(id,rower)
|
||||
return (id,'Member removed')
|
||||
else:
|
||||
return (0,'You are not the team manager')
|
||||
@@ -144,6 +148,8 @@ def create_request(team,user):
|
||||
rekwest = TeamRequest(team=team,user=u,code=code)
|
||||
rekwest.save()
|
||||
|
||||
send_request_email(rekwest)
|
||||
|
||||
return (rekwest.id,'The request was created')
|
||||
else:
|
||||
return (0,'That team has reached its maximum number of members')
|
||||
@@ -214,6 +220,7 @@ def reject_request(manager,id):
|
||||
return (0,'The request is invalid')
|
||||
|
||||
if rekwest.team.manager==manager:
|
||||
send_request_reject_email(rekwest)
|
||||
rekwest.delete()
|
||||
return (1,'Request rejected')
|
||||
else:
|
||||
@@ -227,6 +234,7 @@ def reject_invitation(user,id):
|
||||
return (0,'The invitation is invalid')
|
||||
|
||||
if invite.user==user:
|
||||
send_invite_reject_email(invite)
|
||||
invite.delete()
|
||||
return (1,'Invitation rejected')
|
||||
else:
|
||||
@@ -254,11 +262,99 @@ def send_invite_email(id):
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
def send_email_member_dropped(teamid,rower):
|
||||
t = Team.objects.get(id=teamid)
|
||||
u = rower.user
|
||||
teamname = t.name
|
||||
email = u.email
|
||||
name = u.first_name+' '+u.last_name
|
||||
manager = t.manager.first_name+' '+t.manager.last_name
|
||||
|
||||
def send_request_email(id):
|
||||
rekwest = TeamInvite.objects.get(id=id)
|
||||
if settings.DEBUG:
|
||||
res = handle_sendemail_member_dropped.delay(email,name,teamname,manager)
|
||||
else:
|
||||
res = queuehigh.enqueue(handle_sendemail_member_dropped,
|
||||
email,name,teamname,manager)
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
|
||||
def send_request_accept_email(rekwest):
|
||||
id = rekwest.id
|
||||
email = rekwest.user.email
|
||||
teamname = rekwest.team.name
|
||||
name = rekwest.user.first_name+' '+rekwest.user.last_name
|
||||
manager = rekwest.team.manager.first_name+' '+rekwest.team.manager.last_name
|
||||
|
||||
if settings.DEBUG:
|
||||
res = handle_sendemail_request_accept.delay(email,name,teamname,manager)
|
||||
else:
|
||||
res = queuehigh.enqueue(handle_sendemail_request_accept,
|
||||
email,name,teamname,manager)
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
|
||||
def send_request_reject_email(rekwest):
|
||||
id = rekwest.id
|
||||
teamname = rekwest.team.name
|
||||
email = rekwest.user.email
|
||||
name = rekwest.user.first_name+' '+rekwest.user.last_name
|
||||
manager = rekwest.team.manager.first_name+' '+rekwest.team.manager.last_name
|
||||
|
||||
if settings.DEBUG:
|
||||
res = handle_sendemail_request_reject.delay(email,name,teamname,manager)
|
||||
else:
|
||||
res = queuehigh.enqueue(handle_sendemail_request_reject,
|
||||
email,name,teamname,manager)
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
|
||||
def send_invite_reject_email(invitation):
|
||||
id = invitation.id
|
||||
email = invitation.team.manager.email
|
||||
if invitation.user:
|
||||
name = invitation.user.first_name+' '+invitation.user.last_name
|
||||
else:
|
||||
name = invitation.email
|
||||
|
||||
teamname = invitation.team.name
|
||||
manager = invitation.team.manager.first_name+' '+invitation.team.manager.last_name
|
||||
|
||||
if settings.DEBUG:
|
||||
res = handle_sendemail_invite_reject.delay(email,name,teamname,manager)
|
||||
else:
|
||||
res = queuehigh.enqueue(handle_sendemail_invite_reject,
|
||||
email,name,teamname,manager)
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
|
||||
def send_invite_accept_email(invitation):
|
||||
id = invitation.id
|
||||
email = invitation.team.manager.email
|
||||
if invitation.user:
|
||||
name = invitation.user.first_name+' '+invitation.user.last_name
|
||||
else:
|
||||
name = invitation.email
|
||||
|
||||
teamname = invitation.team.name
|
||||
manager = invitation.team.manager.first_name+' '+invitation.team.manager.last_name
|
||||
|
||||
if settings.DEBUG:
|
||||
res = handle_sendemail_invite_accept.delay(email,name,teamname,manager)
|
||||
else:
|
||||
res = queuehigh.enqueue(handle_sendemail_invite_accept,
|
||||
email,name,teamname,manager)
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
|
||||
|
||||
def send_request_email(rekwest):
|
||||
email = rekwest.team.manager.email
|
||||
id = rekwest.id
|
||||
name = rekwest.team.manager.first_name + " " + rekwest.team.manager.last_name
|
||||
code = rekwest.code
|
||||
teamname = rekwest.team.name
|
||||
@@ -266,10 +362,10 @@ def send_request_email(id):
|
||||
|
||||
if settings.DEBUG:
|
||||
res = handle_sendemail_request.delay(email,name,code,teamname,
|
||||
requestor)
|
||||
requestor,id)
|
||||
else:
|
||||
res = queuehigh.enqueue(handle_sendemail_request,
|
||||
email,name,code,teamname,requestor)
|
||||
email,name,code,teamname,requestor,id)
|
||||
|
||||
return (1,'Invitation email sent')
|
||||
|
||||
@@ -288,6 +384,7 @@ def process_request_code(manager,code):
|
||||
return (0,'You are not the manager of this team')
|
||||
|
||||
result = add_member(t.id,r)
|
||||
send_request_accept_email(rekwest)
|
||||
rekwest.delete()
|
||||
return result
|
||||
|
||||
@@ -306,6 +403,7 @@ def process_invite_code(user,code):
|
||||
|
||||
t = invitation.team
|
||||
result = add_member(t.id,r)
|
||||
send_invite_accept_email(invitation.id)
|
||||
invitation.delete()
|
||||
return result
|
||||
|
||||
|
||||
Reference in New Issue
Block a user