Private
Public Access
1
0

distance, time sort of working

This commit is contained in:
Sander Roosendaal
2020-11-09 22:42:55 +01:00
parent b63c0b0d4a
commit df39cebfe1
5 changed files with 142 additions and 10 deletions

View File

@@ -558,6 +558,7 @@ def cpdata(workouts, options):
res = interactive_otwcpchart(powerdf,promember=True,rowername=rowername,r=r,
cpfit=cpfit,title=title,type=wtype)
script = res[0]
div = res[1]
p1 = res[2]

View File

@@ -1876,10 +1876,12 @@ def plannedsession_detach_view(request,id=0,psid=0):
@permission_required('plannedsession.view_session',fn=get_session_by_pk,raise_exception=True)
def plannedsession_view(request,id=0,userid=0):
r = getrequestplanrower(request,userid=userid)
ps = get_object_or_404(PlannedSession,pk=id)
if ps.sessiontype in ['race','indoorrace']:
url = reverse('virtualevent_view',
kwargs={'id':ps.id}
@@ -1974,12 +1976,72 @@ def plannedsession_view(request,id=0,userid=0):
)
wdict['distance'] = ps.course.distance
wdict['coursecompleted'] = False
ranking.append(wdict)
if ps.sessiontype == 'coursetest':
ranking = sorted(ranking, key=lambda k: k['time'])
if ps.sessiontype == 'fastest_distance':
vs = CourseTestResult.objects.filter(plannedsession=ps)
if vs:
for record in vs:
userid = record.userid
uu = User.objects.get(id=userid)
w = Workout.objects.get(id=record.workoutid)
wdict = {
'name': uu.first_name+' '+uu.last_name,
'date': w.date,
'distance': record.distance,
'type': w.workouttype,
'coursecompleted':True,
}
coursecompleted = record.coursecompleted
t = record.duration
wdict['time'] = datetime.timedelta(
hours=t.hour,
seconds=t.second,
minutes=t.minute,
microseconds=t.microsecond
)
wdict['coursecompleted'] = coursecompleted
ranking.append(wdict)
ranking = sorted(ranking, key=lambda k: k['time'])
if ps.sessiontype == 'fastest_time':
vs = CourseTestResult.objects.filter(plannedsession=ps)
if vs:
for record in vs:
userid = record.userid
uu = User.objects.get(id=userid)
w = Workout.objects.get(id=record.workoutid)
wdict = {
'name': uu.first_name+' '+uu.last_name,
'date': w.date,
'distance': record.distance,
'type': w.workouttype,
'coursecompleted':True,
}
coursecompleted = record.coursecompleted
t = record.duration
wdict['time'] = datetime.timedelta(
hours=t.hour,
seconds=t.second,
minutes=t.minute,
microseconds=t.microsecond
)
wdict['coursecompleted'] = coursecompleted
ranking.append(wdict)
ranking = sorted(ranking, key=lambda k: -k['distance'])
# if coursetest, need to reorder the ranking
startdate,enddate = get_dates_timeperiod(request)