improving course compare
This commit is contained in:
@@ -13,6 +13,7 @@ from json.decoder import JSONDecodeError
|
||||
|
||||
import ruptures as rpt
|
||||
from rowers.courses import getnearestcourses
|
||||
from rowers.courses import pass_start
|
||||
from pandas.errors import IntCastingNaNError
|
||||
|
||||
def default(o): # pragma: no cover
|
||||
@@ -1337,6 +1338,18 @@ def course_mapcompare_view(request, id=0):
|
||||
except GeoCourse.DoesNotExist: # pragma: no cover
|
||||
raise Http404("Course does not exist")
|
||||
|
||||
startdate = request.GET.get('startdate', None)
|
||||
enddate = request.GET.get('enddate', None)
|
||||
if startdate:
|
||||
startdate = iso8601.parse_date(startdate)
|
||||
else:
|
||||
startdate = timezone.now()-datetime.timedelta(days=30)
|
||||
|
||||
if enddate:
|
||||
enddate = iso8601.parse_date(enddate)
|
||||
else:
|
||||
enddate = timezone.now()+datetime.timedelta(days=1)
|
||||
|
||||
focususer = encoder.decode_hex(request.GET.get('user',None))
|
||||
if focususer:
|
||||
try:
|
||||
@@ -1380,7 +1393,12 @@ def course_mapcompare_view(request, id=0):
|
||||
|
||||
selected_users = Rower.objects.filter(id__in=selected_ids)
|
||||
|
||||
workoutids = [result.workoutid for result in results]
|
||||
#workoutids = [result.workoutid for result in results]
|
||||
workoutids = []
|
||||
for result in results:
|
||||
w = Workout.objects.get(id=result.workoutid)
|
||||
if w.startdatetime >= startdate and w.startdatetime <= enddate:
|
||||
workoutids.append(result.workoutid)
|
||||
|
||||
startenddict = {}
|
||||
|
||||
@@ -1388,14 +1406,8 @@ def course_mapcompare_view(request, id=0):
|
||||
startenddict[result.workoutid] = (result.startsecond, result.endsecond)
|
||||
|
||||
if len(workoutids) == 0: # pragma: no cover
|
||||
url = reverse('course_view',
|
||||
kwargs={
|
||||
'id': course.id,
|
||||
})
|
||||
|
||||
messages.info(request, 'There are no results to display')
|
||||
|
||||
return HttpResponseRedirect(url)
|
||||
|
||||
workouts = []
|
||||
for id in workoutids:
|
||||
@@ -1412,6 +1424,11 @@ def course_mapcompare_view(request, id=0):
|
||||
labeldict=labeldict,
|
||||
startenddict=startenddict)
|
||||
|
||||
dateform = DateRangeForm(initial={
|
||||
'startdate':startdate,
|
||||
'enddate':enddate,
|
||||
})
|
||||
|
||||
breadcrumbs = [
|
||||
{
|
||||
'url': reverse('courses_view'),
|
||||
@@ -1447,6 +1464,7 @@ def course_mapcompare_view(request, id=0):
|
||||
'teams': [],
|
||||
'competitors': competitors,
|
||||
'selected_users': selected_users,
|
||||
'dateform': dateform,
|
||||
})
|
||||
|
||||
|
||||
@@ -4602,7 +4620,12 @@ def workout_edit_view(request, id=0, message="", successmessage=""):
|
||||
strict=True)
|
||||
|
||||
suggested_courses = list(set(courses) ^ set(suggested_courses))
|
||||
|
||||
s2 = []
|
||||
for c in suggested_courses:
|
||||
if pass_start(rowdata.df, c):
|
||||
s2.append(c)
|
||||
|
||||
suggested_courses = s2
|
||||
|
||||
|
||||
breadcrumbs = [
|
||||
@@ -4712,6 +4735,12 @@ def workout_map_view(request, id=0):
|
||||
strict=True)
|
||||
|
||||
suggested_courses = list(set(courses) ^ set(suggested_courses))
|
||||
s2 = []
|
||||
for c in suggested_courses:
|
||||
if pass_start(rowdata.df, c):
|
||||
s2.append(c)
|
||||
|
||||
suggested_courses = s2
|
||||
|
||||
|
||||
return render(request, 'map_view.html',
|
||||
|
||||
Reference in New Issue
Block a user