Merge branch 'develop' into feature/mapcompare
This commit is contained in:
@@ -1625,6 +1625,39 @@ def virtualevent_addboat_view(request,id=0):
|
||||
"You have successfully registered for this race. Good luck!"
|
||||
)
|
||||
|
||||
otherrecords = VirtualRaceResult.objects.filter(
|
||||
race = race).exclude(userid = r.id)
|
||||
|
||||
for otherrecord in otherrecords:
|
||||
otheruser = Rower.objects.get(id=otherrecord.userid)
|
||||
othername = otheruser.user.first_name+' '+otheruser.user.last_name
|
||||
registeredname = r.user.first_name+' '+r.user.last_name
|
||||
if otherrecord.emailnotifications:
|
||||
job = myqueue(
|
||||
queue,
|
||||
handle_sendemail_raceregistration,
|
||||
otheruser.user.email, othername,
|
||||
registeredname,
|
||||
race.name,
|
||||
race.id
|
||||
)
|
||||
|
||||
followers = VirtualRaceFollower.objects.filter(race = race)
|
||||
|
||||
for follower in followers:
|
||||
othername = ''
|
||||
if follower.user:
|
||||
othername = follower.user.first_name+' '+follower.user.last_name
|
||||
|
||||
registeredname = r.user.first_name+' '+r.user.last_name
|
||||
email = follower.emailaddress
|
||||
job = myqueue(
|
||||
queue,
|
||||
handle_sendemail_raceregistration,
|
||||
email, othername,
|
||||
registeredname,race.name,race.id,
|
||||
)
|
||||
|
||||
url = reverse('virtualevent_view',
|
||||
kwargs = {
|
||||
'id':race.id
|
||||
@@ -1804,7 +1837,12 @@ def virtualevent_register_view(request,id=0):
|
||||
|
||||
add_rower_race(r,race)
|
||||
|
||||
otherrecords = IndoorVirtualRaceResult.objects.filter(
|
||||
# remove followers
|
||||
myfollows = VirtualRaceFollower.objects.filter(user=r.user,race=race)
|
||||
for f in myfollows:
|
||||
f.delete()
|
||||
|
||||
otherrecords = VirtualRaceResult.objects.filter(
|
||||
race = race).exclude(userid = r.id)
|
||||
|
||||
for otherrecord in otherrecords:
|
||||
@@ -1821,6 +1859,22 @@ def virtualevent_register_view(request,id=0):
|
||||
race.id
|
||||
)
|
||||
|
||||
followers = VirtualRaceFollower.objects.filter(race = race)
|
||||
|
||||
for follower in followers:
|
||||
othername = ''
|
||||
if follower.user:
|
||||
othername = follower.user.first_name+' '+follower.user.last_name
|
||||
|
||||
registeredname = r.user.first_name+' '+r.user.last_name
|
||||
email = follower.emailaddress
|
||||
job = myqueue(
|
||||
queue,
|
||||
handle_sendemail_raceregistration,
|
||||
email, othername,
|
||||
registeredname,race.name,race.id,
|
||||
)
|
||||
|
||||
|
||||
messages.info(
|
||||
request,
|
||||
@@ -2039,6 +2093,11 @@ def indoorvirtualevent_register_view(request,id=0):
|
||||
|
||||
add_rower_race(r,race)
|
||||
|
||||
# remove followers
|
||||
myfollows = VirtualRaceFollower.objects.filter(user=r.user,race=race)
|
||||
for f in myfollows:
|
||||
f.delete()
|
||||
|
||||
otherrecords = IndoorVirtualRaceResult.objects.filter(
|
||||
race = race).exclude(userid = r.id)
|
||||
|
||||
@@ -2056,6 +2115,22 @@ def indoorvirtualevent_register_view(request,id=0):
|
||||
race.id
|
||||
)
|
||||
|
||||
followers = VirtualRaceFollower.objects.filter(race = race)
|
||||
|
||||
for follower in followers:
|
||||
othername = ''
|
||||
if follower.user:
|
||||
othername = follower.user.first_name+' '+follower.user.last_name
|
||||
|
||||
registeredname = r.user.first_name+' '+r.user.last_name
|
||||
email = follower.emailaddress
|
||||
job = myqueue(
|
||||
queue,
|
||||
handle_sendemail_raceregistration,
|
||||
email, othername,
|
||||
registeredname,race.name,race.id,
|
||||
)
|
||||
|
||||
|
||||
messages.info(
|
||||
request,
|
||||
@@ -2734,6 +2809,7 @@ def virtualevent_submit_result_view(request,id=0,workoutid=0):
|
||||
if not jobid:
|
||||
messages.info(request,"Result submitted successfully.")
|
||||
|
||||
|
||||
for otherrecord in otherrecords:
|
||||
try:
|
||||
otheruser = Rower.objects.get(id=otherrecord.userid)
|
||||
@@ -2751,7 +2827,21 @@ def virtualevent_submit_result_view(request,id=0,workoutid=0):
|
||||
except Rower.DoesNotExist:
|
||||
pass
|
||||
|
||||
followers = VirtualRaceFollower.objects.filter(race = race)
|
||||
|
||||
for follower in followers:
|
||||
othername = ''
|
||||
if follower.user:
|
||||
othername = follower.user.first_name+' '+follower.user.last_name
|
||||
|
||||
registeredname = r.user.first_name+' '+r.user.last_name
|
||||
email = follower.emailaddress
|
||||
job = myqueue(
|
||||
queue,
|
||||
handle_sendemail_racesubmission,
|
||||
email, othername,
|
||||
registeredname,race.name,race.id,
|
||||
)
|
||||
|
||||
|
||||
# redirect to race page
|
||||
@@ -2820,3 +2910,71 @@ def virtualevent_submit_result_view(request,id=0,workoutid=0):
|
||||
'rower':r,
|
||||
'w_form':w_form,
|
||||
})
|
||||
|
||||
def addfollower_view(request,id=0):
|
||||
try:
|
||||
race = VirtualRace.objects.get(id=id)
|
||||
except VirtualRace.DoesNotExist:
|
||||
raise Http404("Virtual Challenge does not exist")
|
||||
|
||||
if not request.user.is_anonymous:
|
||||
follower = VirtualRaceFollower(
|
||||
user=request.user,
|
||||
race=race,
|
||||
emailaddress = request.user.email
|
||||
)
|
||||
follower.save()
|
||||
messages.info(request,"You will receive challenge notifications per email")
|
||||
url = reverse(virtualevent_view,
|
||||
kwargs={'id':id})
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
# Anonymous
|
||||
if request.method == 'POST':
|
||||
form = FollowerForm(request.POST)
|
||||
if form.is_valid():
|
||||
email = form.cleaned_data['emailaddress']
|
||||
|
||||
follower = VirtualRaceFollower(
|
||||
race=race,
|
||||
emailaddress = email
|
||||
)
|
||||
follower.save()
|
||||
|
||||
messages.info(request,"You will receive challenge notifications per email")
|
||||
|
||||
url = reverse(virtualevent_view,
|
||||
kwargs={'id':id})
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
else:
|
||||
form = FollowerForm()
|
||||
|
||||
breadcrumbs = [
|
||||
{
|
||||
'url':reverse('virtualevents_view'),
|
||||
'name': 'Challenges'
|
||||
},
|
||||
{
|
||||
'url':reverse('virtualevent_view',
|
||||
kwargs={'id':race.id}
|
||||
),
|
||||
'name': race.name
|
||||
},
|
||||
{
|
||||
'url': reverse(addfollower_view,
|
||||
kwargs = {'id':race.id}
|
||||
),
|
||||
'name': 'Follow'
|
||||
}
|
||||
]
|
||||
|
||||
return render(request,'followerform.html',
|
||||
{
|
||||
'form':form,
|
||||
'active':'nav-racing',
|
||||
'breadcrumbs':breadcrumbs,
|
||||
}
|
||||
)
|
||||
|
||||
@@ -116,6 +116,7 @@ from rowers.models import (
|
||||
PlannedSessionComment,CoachRequest,CoachOffer,
|
||||
VideoAnalysis,ShareKey,
|
||||
StandardCollection,CourseStandard,
|
||||
VirtualRaceFollower,
|
||||
)
|
||||
from rowers.models import (
|
||||
RowerPowerForm,RowerForm,GraphImage,AdvancedWorkoutForm,
|
||||
@@ -129,7 +130,8 @@ from rowers.models import (
|
||||
VirtualRaceForm,VirtualRaceResultForm,RowerImportExportForm,
|
||||
IndoorVirtualRaceResultForm,IndoorVirtualRaceResult,
|
||||
IndoorVirtualRaceForm,PlannedSessionCommentForm,
|
||||
Alert, Condition, StaticChartRowerForm
|
||||
Alert, Condition, StaticChartRowerForm,
|
||||
FollowerForm,
|
||||
)
|
||||
from rowers.models import (
|
||||
FavoriteForm,BaseFavoriteFormSet,SiteAnnouncement,BasePlannedSessionFormSet,
|
||||
|
||||
@@ -1542,7 +1542,7 @@ def virtualevent_mapcompare_view(request,id=0):
|
||||
int(w.id): w.__str__() for w in workouts
|
||||
}
|
||||
|
||||
script,div = leaflet_chart_compare(workoutids,
|
||||
script,div = leaflet_chart_compare(race.course,workoutids,
|
||||
labeldict=labeldict,
|
||||
startenddict=startenddict)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user