From 04a988430b463631ca863caede08ae6df8f2e185 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 12 Nov 2018 09:08:56 +0100 Subject: [PATCH 1/4] reducing queryset should be using exclude --- rowers/forms.py | 10 ++++++++-- rowers/views.py | 7 ++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/rowers/forms.py b/rowers/forms.py index d470ab2a..53139c5a 100644 --- a/rowers/forms.py +++ b/rowers/forms.py @@ -650,9 +650,15 @@ class CourseSelectForm(forms.Form): course = forms.ModelChoiceField(queryset=GeoCourse.objects.all()) class WorkoutMultipleCompareForm(forms.Form): - workouts = forms.ModelMultipleChoiceField(queryset=Workout.objects.all(), - widget=forms.CheckboxSelectMultiple()) + workouts = forms.ModelMultipleChoiceField( + queryset=Workout.objects.filter(), + widget=forms.CheckboxSelectMultiple()) + def __init__(self, *args, **kwargs): + super(WorkoutMultipleCompareForm,self).__init__(*args,**kwargs) + self.fields['workouts'].queryset = Workout.objects.filter() + + class PlannedSessionMultipleCloneForm(forms.Form): plannedsessions = forms.ModelMultipleChoiceField( queryset=PlannedSession.objects.all(), diff --git a/rowers/views.py b/rowers/views.py index 3b560217..18b4a60e 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -5405,7 +5405,7 @@ def team_comparison_select(request, workouttype__in=modalities).order_by("-date", "-starttime").exclude(boattype__in=negtypes) if rankingonly: - workouts = [w for w in workouts if w.rankingpiece] + workouts = workouts.exclude(rankingpiece=False) query = request.GET.get('q') if query: @@ -6361,7 +6361,7 @@ def user_boxplot_select(request, # workouttypes = [w for w in workouttypes if w not in mytypes.otwtypes] if rankingonly: - workouts = [w for w in workouts if w.rankingpiece] + workouts = workouts.exclude(rankingpiece=False) query = request.GET.get('q') if query: @@ -6775,7 +6775,8 @@ def workouts_view(request,message='',successmessage='', startdatetime__lte=activity_enddate).order_by("-startdatetime") if rankingonly: - workouts = [w for w in workouts if w.rankingpiece] + workouts = workouts.exclude(rankingpiece=False) + query = request.GET.get('q') if query: From dce7785b58cf4c1a8573c7d6dc22a66b9bea07f4 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 12 Nov 2018 09:59:55 +0100 Subject: [PATCH 2/4] multiflex UI and bux fix --- rowers/templates/user_multiflex_select.html | 54 ++++++++++----------- rowers/views.py | 6 ++- 2 files changed, 31 insertions(+), 29 deletions(-) diff --git a/rowers/templates/user_multiflex_select.html b/rowers/templates/user_multiflex_select.html index 2e0ede5c..9d553b5d 100644 --- a/rowers/templates/user_multiflex_select.html +++ b/rowers/templates/user_multiflex_select.html @@ -78,6 +78,32 @@

TIP: Agree with your team members to put tags (e.g. '8x500m') in the notes section of your workouts. That makes it easy to search.

+
  • + {% if theuser %} +
    + {% else %} + + {% endif %} + + + {{ dateform.as_table }} +
    + + {{ modalityform.as_table }} +
    + {% csrf_token %} + +
    +
  • +
  • +
    + + +
    +
  • {% if workouts %} @@ -96,36 +122,10 @@ {{ chartform.as_table }}

    - +

  • -
  • - {% if theuser %} -
    - {% else %} - - {% endif %} - - - {{ dateform.as_table }} -
    - - {{ modalityform.as_table }} -
    - {% csrf_token %} - -
    -
  • -
  • -
    - - -
    -
  • diff --git a/rowers/views.py b/rowers/views.py index 18b4a60e..75754ac2 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -5655,8 +5655,10 @@ def user_multiflex_select(request, if 'enddate' in request.session: enddate = iso8601.parse_date(request.session['enddate']) - - waterboattype = request.session['waterboattype'] + try: + waterboattype = request.session['waterboattype'] + except KeyError: + waterboattype = mytypes.waterboattype else: waterboattype = mytypes.waterboattype From afce33f80510b5e95ddd15eac20e0a5b345586e5 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 12 Nov 2018 10:23:27 +0100 Subject: [PATCH 3/4] fix legenda placement multiflex --- rowers/interactiveplots.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 2da87b2d..f50d61c5 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -2408,8 +2408,8 @@ def interactive_multiflex(datadf,xparam,yparam,groupby,extratitle='', for nr, gvalue, color in colorlegend: - box = BoxAnnotation(bottom=400+20*nr,left=550,top=420+20*nr, - right=570, + box = BoxAnnotation(bottom=125+20*nr,left=100,top=145+20*nr, + right=120, bottom_units='screen', top_units='screen', left_units='screen', @@ -2417,7 +2417,7 @@ def interactive_multiflex(datadf,xparam,yparam,groupby,extratitle='', fill_color=color, fill_alpha=1.0, line_color=color) - legendlabel = Label(x=571,y=403+20*nr,x_units='screen', + legendlabel = Label(x=121,y=128+20*nr,x_units='screen', y_units='screen', text = "{gvalue:3.0f}".format(gvalue=gvalue), background_fill_alpha=1.0, From 3e2860062cfca0d68b431197d77498332c3485f8 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 12 Nov 2018 10:47:36 +0100 Subject: [PATCH 4/4] adding / to print url --- rowers/urls.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rowers/urls.py b/rowers/urls.py index b17568ad..2f84b1bb 100644 --- a/rowers/urls.py +++ b/rowers/urls.py @@ -506,7 +506,7 @@ urlpatterns = [ url(r'^sessions/coach/$',views.plannedsessions_coach_view), url(r'^sessions/coach/user/\d+/$',views.plannedsessions_coach_view), url(r'^sessions/print/?$',views.plannedsessions_print_view), - url(r'^sessions/print/user/(?P\d+)$',views.plannedsessions_print_view), + url(r'^sessions/print/user/(?P\d+)/$',views.plannedsessions_print_view), url(r'^sessions/$',views.plannedsessions_view), url(r'^sessions/user/(?P\d+)$',views.plannedsessions_view), url(r'^sessions/(?P\d+-\d+-\d+)/(?P\d+-\d+-\d+)$',