From 7c1b0626f935e7de07150a773435961f237151bb Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 27 Nov 2018 22:00:04 +0100 Subject: [PATCH] added race breadcrumbs --- rowers/models.py | 4 +- rowers/plannedsessions.py | 18 +++- rowers/views.py | 167 +++++++++++++++++++++++++++++++++++++- 3 files changed, 182 insertions(+), 7 deletions(-) diff --git a/rowers/models.py b/rowers/models.py index 34d4aa1d..88c96f5b 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -2462,7 +2462,7 @@ class IndoorVirtualRaceResult(models.Model): u2 = rr.user.last_name, ) if self.teamname: - return u'Entry for {n} for "{r}" in {c} with {t} ({s})'.format( + return u'Entry for {n} for "{r}" on {c} with {t} ({s})'.format( n = name, r = self.race, t = self.teamname, @@ -2470,7 +2470,7 @@ class IndoorVirtualRaceResult(models.Model): s = self.sex, ) else: - return u'Entry for {n} for "{r}" in {c} ({s})'.format( + return u'Entry for {n} for "{r}" on {c} ({s})'.format( n = name, r = self.race, c = self.boatclass, diff --git a/rowers/plannedsessions.py b/rowers/plannedsessions.py index 8edd5390..6cf62bda 100644 --- a/rowers/plannedsessions.py +++ b/rowers/plannedsessions.py @@ -680,8 +680,13 @@ def race_rower_status(r,race): has_registered = False is_complete = False - - vs = VirtualRaceResult.objects.filter(userid=r.id,race=race) + + if race.sessiontype == 'race': + resultobj = VirtualRaceResult + else: + resultobj = IndoorVirtualRaceResult + + vs = IndoorVirtualRaceResult.objects.filter(userid=r.id,race=race) if vs: has_registered = True is_complete = vs[0].coursecompleted @@ -852,13 +857,18 @@ def add_rower_race(r,race): def remove_rower_race(r,race,recordid=None): race.rower.remove(r) + if race.sessiontype == 'race': + recordobj = VirtualRaceResult + else: + recordobj = IndoorVirtualRaceResult + if recordid: - records = VirtualRaceResult.objects.filter(userid=r.id, + records = recordobj.objects.filter(userid=r.id, workoutid__isnull=True, race=race, id=recordid) else: - records = VirtualRaceResult.objects.filter(userid=r.id, + records = recordobj.objects.filter(userid=r.id, workoutid__isnull=True, race=race,) for r in records: diff --git a/rowers/views.py b/rowers/views.py index 184a6682..3ddb7653 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -15816,9 +15816,17 @@ def virtualevents_view(request): 'rower':r, }) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + ] + return render(request,'virtualevents.html', { 'races':races, 'form':form, + 'breadcrumbs':breadcrumbs, 'active':'nav-racing', 'rower':r, } @@ -15956,12 +15964,26 @@ def virtualevent_view(request,id=0): ) - + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + } + ] + + return render(request,'virtualevent.html', { 'coursescript':script, 'coursediv':div, + 'breadcrumbs':breadcrumbs, 'race':race, 'rower':r, 'results':results, @@ -16110,9 +16132,31 @@ def virtualevent_addboat_view(request,id=0): form = VirtualRaceResultForm(initial=initial) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + }, + { + 'url': reverse(virtualevent_addboat_view, + kwargs = {'id':race.id} + ), + 'name': 'Add Discipline' + } + ] + + + return render(request,'virtualeventregister.html', { 'form':form, + 'breadcrumbs':breadcrumbs, 'race':race, 'userid':r.user.id, 'active': 'nav-racing', @@ -16203,9 +16247,28 @@ def virtualevent_register_view(request,id=0): form = VirtualRaceResultForm(initial=initial) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + }, + { + 'url': reverse(virtualevent_register_view, + kwargs = {'id':race.id} + ), + 'name': 'Register' + } + ] return render(request,'virtualeventregister.html', { 'form':form, + 'breadcrumbs':breadcrumbs, 'race':race, 'userid':r.user.id, @@ -16291,10 +16354,30 @@ def indoorvirtualevent_register_view(request,id=0): form = IndoorVirtualRaceResultForm(initial=initial) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + }, + { + 'url': reverse(indoorvirtualevent_register_view, + kwargs = {'id':race.id} + ), + 'name': 'Register' + } + ] + return render(request,'virtualeventregister.html', { 'form':form, 'race':race, + 'breadcrumbs':breadcrumbs, 'userid':r.user.id, }) @@ -16418,9 +16501,22 @@ def indoorvirtualevent_create_view(request): racecreateform = IndoorVirtualRaceForm() + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(indoorvirtualevent_create_view, + ), + 'name': 'New Indoor Virtual Regatta' + }, + ] + return render(request,'indoorvirtualeventcreate.html', { 'form':racecreateform, + 'breadcrumbs':breadcrumbs, 'rower':r, 'active':'nav-racing', @@ -16540,9 +16636,21 @@ def virtualevent_create_view(request): racecreateform = VirtualRaceForm() + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_create_view, + ), + 'name': 'New Virtual Regatta' + }, + ] return render(request,'virtualeventcreate.html', { 'form':racecreateform, + 'breadcrumbs':breadcrumbs, 'rower':r, 'active':'nav-racing', @@ -16596,10 +16704,29 @@ def virtualevent_edit_view(request,id=0): racecreateform = VirtualRaceForm(instance=race) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + }, + { + 'url': reverse(virtualevent_edit_view, + kwargs = {'id':race.id} + ), + 'name': 'Edit' + } + ] return render(request,'virtualeventedit.html', { 'form':racecreateform, + 'breadcrumbs':breadcrumbs, 'rower':r, 'race':race, @@ -16654,9 +16781,28 @@ def indoorvirtualevent_edit_view(request,id=0): racecreateform = IndoorVirtualRaceForm(instance=race) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + }, + { + 'url': reverse(indoorvirtualevent_edit_view, + kwargs = {'id':race.id} + ), + 'name': 'Edit' + } + ] return render(request,'virtualeventedit.html', { 'form':racecreateform, + 'breadcrumbs':breadcrumbs, 'rower':r, 'race':race, @@ -16799,10 +16945,29 @@ def virtualevent_submit_result_view(request,id=0): else: w_form = WorkoutRaceSelectForm(workoutdata,entries) + breadcrumbs = [ + { + 'url':reverse(virtualevents_view), + 'name': 'Racing' + }, + { + 'url':reverse(virtualevent_view, + kwargs={'id':race.id} + ), + 'name': race.name + }, + { + 'url': reverse(virtualevent_submit_result_view, + kwargs = {'id':race.id} + ), + 'name': 'Submit Result' + } + ] return render(request,'race_submit.html', { 'race':race, 'workouts':ws, + 'breadcrumbs':breadcrumbs, 'active':'nav-racing', 'rower':r, 'w_form':w_form,