seems to be complete now
This commit is contained in:
@@ -437,8 +437,12 @@ class UploadOptionsForm(forms.Form):
|
||||
else:
|
||||
registrations = IndoorVirtualRaceResult.objects.filter(race=therace,userid=r.id)
|
||||
|
||||
choices = [(r.id,str(r)) for r in registrations]
|
||||
choices = [(0,'---')]+choices
|
||||
if registrations.count()==0:
|
||||
race = VirtualRace.objects.get(id=raceid)
|
||||
choices = [(-int(raceid),race.name)]
|
||||
else:
|
||||
choices = [(r.id,str(r)) for r in registrations]
|
||||
choices = choices+[(0,'---')]
|
||||
|
||||
if races:
|
||||
self.fields['submitrace'].choices = choices
|
||||
|
||||
@@ -1041,8 +1041,8 @@ def race_can_edit(r,race):
|
||||
return False
|
||||
|
||||
def race_can_submit(r,race):
|
||||
if r not in race.rower.all():
|
||||
return False
|
||||
#if r not in race.rower.all():
|
||||
# return False
|
||||
|
||||
start_time = race.start_time
|
||||
start_date = race.startdate
|
||||
@@ -1451,12 +1451,34 @@ def add_workout_indoorrace(ws,race,r,recordid=0,doregister=False):
|
||||
else:
|
||||
age = None
|
||||
|
||||
record = IndoorVirtualRaceResult.objects.get(
|
||||
userid=r.id,
|
||||
race=race,
|
||||
id=recordid
|
||||
)
|
||||
|
||||
try:
|
||||
record = IndoorVirtualRaceResult.objects.get(
|
||||
userid=r.id,
|
||||
race=race,
|
||||
id=recordid
|
||||
)
|
||||
except IndoorVirtualRaceResult.DoesNotExist:
|
||||
if doregister:
|
||||
hasinitial,boattype,boatclass,adaptiveclass,weightclass,sex,initialcategory = default_class(r,ws[0],race)
|
||||
if hasinitial:
|
||||
record = IndoorVirtualRaceResult(
|
||||
userid = r.id,
|
||||
username = r.user.first_name+' '+r.user.last_name,
|
||||
weightcategory=weightclass,
|
||||
adaptiveclass=adaptiveclass,
|
||||
race=race,
|
||||
boatclass=boatclass,
|
||||
sex=sex,
|
||||
age = age,
|
||||
entrycategory=initialcategory,
|
||||
)
|
||||
record.save()
|
||||
else:
|
||||
errors.append("Unable to find a suitable start category")
|
||||
return result,comments,errors,0
|
||||
else:
|
||||
errors.append("Couldn't find this entry")
|
||||
return result,comments,errors,0
|
||||
|
||||
records = IndoorVirtualRaceResult.objects.filter(
|
||||
userid=r.id,
|
||||
@@ -1466,11 +1488,8 @@ def add_workout_indoorrace(ws,race,r,recordid=0,doregister=False):
|
||||
|
||||
|
||||
|
||||
if not record and not doregister:
|
||||
errors.append("Couldn't find this entry")
|
||||
return result,comments,errors,0
|
||||
elif not record:
|
||||
pass
|
||||
|
||||
|
||||
|
||||
|
||||
if race.sessionmode == 'distance':
|
||||
@@ -1584,11 +1603,35 @@ def add_workout_race(ws,race,r,splitsecond=0,recordid=0,doregister=False):
|
||||
else:
|
||||
age = None
|
||||
|
||||
record = VirtualRaceResult.objects.get(
|
||||
userid=r.id,
|
||||
race=race,
|
||||
id=recordid
|
||||
)
|
||||
try:
|
||||
record = VirtualRaceResult.objects.get(
|
||||
userid=r.id,
|
||||
race=race,
|
||||
id=recordid
|
||||
)
|
||||
except VirtualRaceResult.DoesNotExist:
|
||||
if doregister:
|
||||
hasinitial,boattype,boatclass,adaptiveclass,weightclass,sex,initialcategory = default_class(r,ws[0],race)
|
||||
if hasinitial:
|
||||
record = VirtualRaceResult(
|
||||
userid = r.id,
|
||||
username = r.user.first_name+' '+r.user.last_name,
|
||||
weightcategory=weightclass,
|
||||
adaptiveclass=adaptiveclass,
|
||||
race=race,
|
||||
boatclass=boatclass,
|
||||
boattype=boattype,
|
||||
sex=sex,
|
||||
age = age,
|
||||
entrycategory=initialcategory,
|
||||
)
|
||||
record.save()
|
||||
else:
|
||||
errors.append("Unable to find a suitable start category")
|
||||
return result,comments,errors,0
|
||||
else:
|
||||
errors.append("Couldn't find this entry")
|
||||
return result,comments,errors,0
|
||||
|
||||
records = VirtualRaceResult.objects.filter(
|
||||
userid=r.id,
|
||||
@@ -1656,6 +1699,8 @@ def add_workout_race(ws,race,r,splitsecond=0,recordid=0,doregister=False):
|
||||
referencespeed=record.referencespeed,coursedistance=race.course.distance
|
||||
)
|
||||
|
||||
comments.append('We are now checking adherence to the race course. This may take a few minutes to complete')
|
||||
|
||||
|
||||
|
||||
add_workouts_plannedsession(ws,race,r)
|
||||
|
||||
@@ -163,6 +163,7 @@
|
||||
Registered users of rowsandall.com can participate in this challenge.
|
||||
Participation is free, unless specified differently in the race comment above.
|
||||
{% if race.sessiontype == 'race' %}
|
||||
Register to let others know you plan to do this challenge:
|
||||
<a href="/rowers/virtualevent/{{ race.id }}/register"><h3>Register</h3></a>
|
||||
{% else %}
|
||||
<a href="/rowers/virtualevent/{{ race.id }}/registerindoor"><h3>Register</h3></a>
|
||||
@@ -183,6 +184,8 @@
|
||||
{% for button in buttons %}
|
||||
{% if button == 'registerbutton' %}
|
||||
<p>
|
||||
Register to let others know you plan to do this challenge. This also give you the option to
|
||||
select your entry category:
|
||||
{% if race.sessiontype == 'race' %}
|
||||
<a href="/rowers/virtualevent/{{ race.id }}/register"><h3>Register</h3></a>
|
||||
{% else %}
|
||||
|
||||
@@ -746,6 +746,7 @@ def virtualevent_disqualify_view(request,id=0,recordid=0):
|
||||
|
||||
r = getrower(request.user)
|
||||
race = get_object_or_404(VirtualRace,pk=id)
|
||||
raceid = race.id
|
||||
|
||||
|
||||
if race.sessiontype == 'race':
|
||||
@@ -2810,6 +2811,29 @@ def virtualevent_submit_result_view(request,id=0,workoutid=0):
|
||||
race=race
|
||||
)
|
||||
|
||||
if records.count() == 0:
|
||||
hasinitial,boattype,boatclass,adaptiveclass,weightclass,sex,initialcategory = default_class(r,None,race)
|
||||
if not hasinitial:
|
||||
messages.error(request,"Sorry, you have to register first")
|
||||
url = reverse('virtualevent_view',
|
||||
kwargs = {
|
||||
'id':id,
|
||||
})
|
||||
return HttpResponseRedirect(url)
|
||||
record = resultobj(
|
||||
userid = r.id,
|
||||
username = r.user.first_name+' '+r.user.last_name,
|
||||
weightcategory=weightclass,
|
||||
adaptiveclass=adaptiveclass,
|
||||
race=race,
|
||||
boatclass=boatclass,
|
||||
sex=sex,
|
||||
age=calculate_age(r.birthdate),
|
||||
entrycategory=initialcategory,
|
||||
)
|
||||
record.save()
|
||||
records = [record]
|
||||
|
||||
|
||||
entrychoices = []
|
||||
|
||||
|
||||
@@ -5114,11 +5114,10 @@ def workout_upload_view(request,
|
||||
messages.error(request,message)
|
||||
|
||||
if int(registrationid) < 0:
|
||||
race = VirtualRace.Objects.get(id=-int(registrationid))
|
||||
race = VirtualRace.objects.get(id=-int(registrationid))
|
||||
if race.sessiontype == 'race':
|
||||
race = registrations[0].race
|
||||
result,comments,errors,jobid = add_workout_race(
|
||||
[w], race,r,
|
||||
[w], race,r,doregister=True,
|
||||
)
|
||||
if result:
|
||||
messages.info(
|
||||
@@ -5130,9 +5129,8 @@ def workout_upload_view(request,
|
||||
for er in errors:
|
||||
messages.error(request,er)
|
||||
elif race.sessiontype == 'indoorrace':
|
||||
race = registrations[0].race
|
||||
result,comments,errors,jobid = add_workout_indoorrace(
|
||||
[w],race,r,
|
||||
[w],race,r,doregister=True,
|
||||
)
|
||||
|
||||
if result:
|
||||
@@ -5200,11 +5198,17 @@ def workout_upload_view(request,
|
||||
|
||||
|
||||
|
||||
if landingpage != 'workout_upload_view':
|
||||
if registrationid != 0:
|
||||
url = reverse('virtualevent_view',
|
||||
kwargs = {
|
||||
'id':race.id,
|
||||
})
|
||||
elif landingpage != 'workout_upload_view':
|
||||
url = reverse(landingpage,
|
||||
kwargs = {
|
||||
'id':encoder.encode_hex(w.id),
|
||||
})
|
||||
|
||||
else:
|
||||
url = reverse(landingpage)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user