added registration form
This commit is contained in:
101
rowers/views.py
101
rowers/views.py
@@ -67,7 +67,7 @@ from rowers.models import (
|
||||
WorkoutComment,WorkoutCommentForm,RowerExportForm,
|
||||
CalcAgePerformance,PowerTimeFitnessMetric,PlannedSessionForm,
|
||||
PlannedSessionFormSmall,GeoCourseEditForm,VirtualRace,
|
||||
VirtualRaceForm,
|
||||
VirtualRaceForm,VirtualRaceResultForm,
|
||||
)
|
||||
from rowers.models import (
|
||||
FavoriteForm,BaseFavoriteFormSet,SiteAnnouncement,BasePlannedSessionFormSet
|
||||
@@ -13406,14 +13406,25 @@ def virtualevent_view(request,id=0):
|
||||
buttons += ['editbutton']
|
||||
|
||||
results = VirtualRaceResult.objects.filter(
|
||||
race=race
|
||||
race=race,
|
||||
workout__isnull=False,
|
||||
).order_by("duration")
|
||||
|
||||
# to-do - add DNS
|
||||
dns = []
|
||||
|
||||
# to-do - add registered
|
||||
registered = []
|
||||
if timezone.now() > race.evaluation_closure:
|
||||
print "aap"
|
||||
dns = VirtualRaceResult.objects.filter(
|
||||
race=race,
|
||||
workout__isnull=True,
|
||||
)
|
||||
print dns[0].username,"noot"
|
||||
|
||||
|
||||
records = VirtualRaceResult.objects.filter(
|
||||
race=race
|
||||
)
|
||||
|
||||
|
||||
return render(request,'virtualevent.html',
|
||||
{
|
||||
@@ -13424,6 +13435,7 @@ def virtualevent_view(request,id=0):
|
||||
'results':results,
|
||||
'buttons':buttons,
|
||||
'dns':dns,
|
||||
'records':records,
|
||||
})
|
||||
|
||||
@login_required()
|
||||
@@ -13456,19 +13468,80 @@ def virtualevent_register_view(request,id=0):
|
||||
except VirtualRace.DoesNotExist:
|
||||
raise Http404("Virtual Race does not exist")
|
||||
|
||||
if race_can_register(r,race):
|
||||
add_rower_race(r,race)
|
||||
messages.info(request,
|
||||
"You have successfully registered for this race. Good luck!")
|
||||
else:
|
||||
if not race_can_register(r,race):
|
||||
messages.error(request,"You cannot register for this race")
|
||||
|
||||
url = reverse(virtualevent_view,
|
||||
kwargs = {
|
||||
'id':race.id
|
||||
url = reverse(virtualevent_view,
|
||||
kwargs = {
|
||||
'id':race.id
|
||||
})
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
# we're still here
|
||||
if request.method == 'POST':
|
||||
# process form
|
||||
form = VirtualRaceResultForm(request.POST)
|
||||
if form.is_valid():
|
||||
cd = form.cleaned_data
|
||||
teamname = cd['teamname']
|
||||
boattype = cd['boattype']
|
||||
if not boattype == '1x':
|
||||
weightcategory = cd['weightcategory']
|
||||
age = cd['age']
|
||||
else:
|
||||
weightcategory = r.weightcategory
|
||||
age = calculate_age(r.birthdate)
|
||||
|
||||
record = VirtualRaceResult(
|
||||
user=r,
|
||||
teamname=teamname,
|
||||
race=race,
|
||||
username = u'{f} {l}'.format(
|
||||
f = r.user.first_name,
|
||||
l = r.user.last_name
|
||||
),
|
||||
weightcategory=weightcategory,
|
||||
duration=datetime.time(0,0),
|
||||
boattype=boattype,
|
||||
coursecompleted=False,
|
||||
sex=r.sex,
|
||||
age=age
|
||||
)
|
||||
|
||||
record.save()
|
||||
|
||||
add_rower_race(r,race)
|
||||
|
||||
|
||||
|
||||
messages.info(
|
||||
request,
|
||||
"You have successfully registered for this race. Good luck!"
|
||||
)
|
||||
|
||||
url = reverse(virtualevent_view,
|
||||
kwargs = {
|
||||
'id':race.id
|
||||
})
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
else:
|
||||
initial = {
|
||||
'age': calculate_age(r.birthdate),
|
||||
'weightcategory': r.weightcategory,
|
||||
}
|
||||
|
||||
form = VirtualRaceResultForm(initial=initial)
|
||||
|
||||
return render(request,'virtualeventregister.html',
|
||||
{
|
||||
'form':form,
|
||||
'race':race,
|
||||
'rower':r,
|
||||
|
||||
})
|
||||
|
||||
@login_required()
|
||||
def virtualevent_create_view(request):
|
||||
|
||||
Reference in New Issue
Block a user