Private
Public Access
1
0

Basic ranking page now uses only workouts marked as ranking pieces

This commit is contained in:
Sander Roosendaal
2018-01-04 21:52:24 +01:00
parent efeb5bc2f7
commit 275124976d
2 changed files with 33 additions and 40 deletions

View File

@@ -56,7 +56,7 @@ import sys
import utils import utils
import datautils import datautils
from utils import lbstoN,myqueue from utils import lbstoN,myqueue,is_ranking_piece
from timezonefinder import TimezoneFinder from timezonefinder import TimezoneFinder
@@ -921,6 +921,9 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower',
w.startdatetime = timezone.now() w.startdatetime = timezone.now()
w.save() w.save()
if is_ranking_piece(w):
w.rankingpiece = True
w.save()
if privacy == 'visible': if privacy == 'visible':
ts = Team.objects.filter(rower=r) ts = Team.objects.filter(rower=r)

View File

@@ -711,7 +711,8 @@ def splitstdata(lijst):
from utils import ( from utils import (
geo_distance,serialize_list,deserialize_list,uniqify, geo_distance,serialize_list,deserialize_list,uniqify,
str2bool,range_to_color_hex,absolute,myqueue,get_call, str2bool,range_to_color_hex,absolute,myqueue,get_call,
calculate_age,rankingdistances,rankingdurations calculate_age,rankingdistances,rankingdurations,
is_ranking_piece
) )
import datautils import datautils
@@ -3175,7 +3176,7 @@ def addmanual_view(request):
if id: if id:
w = Workout.objects.get(id=id) w = Workout.objects.get(id=id)
w.rankingpiece = rankingpiece w.rankingpiece = rankingpiece or is_ranking_piece(w)
w.notes = notes w.notes = notes
w.save() w.save()
messages.info(request,'New workout created') messages.info(request,'New workout created')
@@ -3306,10 +3307,13 @@ def rankings_view(request,theuser=0,
for rankingdistance in rankingdistances: for rankingdistance in rankingdistances:
workouts = Workout.objects.filter(user=r,distance=rankingdistance, workouts = Workout.objects.filter(
workouttype__in=['rower','dynamic','slides'], user=r,distance=rankingdistance,
startdatetime__gte=startdate, workouttype__in=['rower','dynamic','slides'],
startdatetime__lte=enddate).order_by('duration') rankingpiece=True,
startdatetime__gte=startdate,
startdatetime__lte=enddate
).order_by('duration')
if workouts: if workouts:
thedistances.append(rankingdistance) thedistances.append(rankingdistance)
theworkouts.append(workouts[0]) theworkouts.append(workouts[0])
@@ -3323,10 +3327,13 @@ def rankings_view(request,theuser=0,
for rankingduration in rankingdurations: for rankingduration in rankingdurations:
workouts = Workout.objects.filter(user=r,duration=rankingduration, workouts = Workout.objects.filter(
workouttype='rower', user=r,duration=rankingduration,
startdatetime__gte=startdate, workouttype='rower',
startdatetime__lte=enddate).order_by('-distance') rankingpiece=True,
startdatetime__gte=startdate,
startdatetime__lte=enddate
).order_by('-distance')
if workouts: if workouts:
thedistances.append(workouts[0].distance) thedistances.append(workouts[0].distance)
theworkouts.append(workouts[0]) theworkouts.append(workouts[0])
@@ -3631,13 +3638,6 @@ def rankings_view2(request,theuser=0,
enddate = datetime.datetime.combine(enddate,datetime.time(23,59,59)) enddate = datetime.datetime.combine(enddate,datetime.time(23,59,59))
enddate = enddate+datetime.timedelta(days=1) enddate = enddate+datetime.timedelta(days=1)
rankingdistances = [100,500,1000,2000,5000,6000,10000,21097,42195,100000]
rankingdurations = []
rankingdurations.append(datetime.time(minute=1))
rankingdurations.append(datetime.time(minute=4))
rankingdurations.append(datetime.time(minute=30))
rankingdurations.append(datetime.time(hour=1,minute=15))
rankingdurations.append(datetime.time(hour=1))
thedistances = [] thedistances = []
theworkouts = [] theworkouts = []
@@ -3650,10 +3650,12 @@ def rankings_view2(request,theuser=0,
for rankingdistance in rankingdistances: for rankingdistance in rankingdistances:
workouts = Workout.objects.filter(user=r,distance=rankingdistance, workouts = Workout.objects.filter(
workouttype__in=['rower','dynamic','slides'], user=r,distance=rankingdistance,
startdatetime__gte=startdate, workouttype__in=['rower','dynamic','slides'],
startdatetime__lte=enddate).order_by('duration') rankingpiece=True,
startdatetime__gte=startdate,
startdatetime__lte=enddate).order_by('duration')
if workouts: if workouts:
thedistances.append(rankingdistance) thedistances.append(rankingdistance)
theworkouts.append(workouts[0]) theworkouts.append(workouts[0])
@@ -3667,10 +3669,12 @@ def rankings_view2(request,theuser=0,
for rankingduration in rankingdurations: for rankingduration in rankingdurations:
workouts = Workout.objects.filter(user=r,duration=rankingduration, workouts = Workout.objects.filter(
workouttype='rower', user=r,duration=rankingduration,
startdatetime__gte=startdate, workouttype='rower',
startdatetime__lte=enddate).order_by('-distance') rankingpiece=True,
startdatetime__gte=startdate,
startdatetime__lte=enddate).order_by('-distance')
if workouts: if workouts:
thedistances.append(workouts[0].distance) thedistances.append(workouts[0].distance)
theworkouts.append(workouts[0]) theworkouts.append(workouts[0])
@@ -3973,12 +3977,6 @@ def otwrankings_view(request,theuser=0,
enddate = enddate+datetime.timedelta(days=1) enddate = enddate+datetime.timedelta(days=1)
rankingdurations = []
rankingdurations.append(datetime.time(minute=1))
rankingdurations.append(datetime.time(minute=4))
rankingdurations.append(datetime.time(minute=30))
rankingdurations.append(datetime.time(hour=1))
rankingdurations.append(datetime.time(hour=1,minute=15))
thedistances = [] thedistances = []
theworkouts = [] theworkouts = []
@@ -4225,14 +4223,6 @@ def oterankings_view(request,theuser=0,
enddate = enddate+datetime.timedelta(days=1) enddate = enddate+datetime.timedelta(days=1)
rankingdurations = []
rankingdurations.append(datetime.time(minute=1))
rankingdurations.append(datetime.time(minute=4))
rankingdurations.append(datetime.time(minute=30))
rankingdurations.append(datetime.time(hour=1))
rankingdurations.append(datetime.time(hour=1,minute=15))
rankingdistances = [100,500,1000,2000,5000,6000,10000,21097,42195,100000]
thedistances = [] thedistances = []
theworkouts = [] theworkouts = []