From 882b571677ca8a3f73e22ad72139dcadac687717 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Thu, 22 Nov 2018 17:15:58 +0100 Subject: [PATCH] bug fix --- rowers/datautils.py | 7 ++++++- rowers/views.py | 13 +++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/rowers/datautils.py b/rowers/datautils.py index d7891767..a18bc3dc 100644 --- a/rowers/datautils.py +++ b/rowers/datautils.py @@ -48,7 +48,12 @@ def cpfit(powerdf): theavpower = powerdf['CP'] if len(thesecs)>=4: - p1, success = optimize.leastsq(errfunc, p0[:], args = (thesecs,theavpower)) + try: + p1, success = optimize.leastsq(errfunc, p0[:], args = (thesecs,theavpower)) + except: + factor = fitfunc(p0,thesecs.mean())/theavpower.mean() + p1 = [p0[0]/factor,p0[1]/factor,p0[2],p0[3]] + else: factor = fitfunc(p0,thesecs.mean())/theavpower.mean() p1 = [p0[0]/factor,p0[1]/factor,p0[2],p0[3]] diff --git a/rowers/views.py b/rowers/views.py index 4dd98d9b..0a000d47 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -4756,10 +4756,19 @@ def oterankings_view(request,theuser=0, pieceunit = form.cleaned_data['pieceunit'] else: value = None + + try: + trankingdistances = form.cleaned_data['trankingdistances'] + except KeyError: + trankingdistances = [] - trankingdistances = form.cleaned_data['trankingdistances'] trankingdistances = [int(d) for d in trankingdistances] - trankingdurations = form.cleaned_data['trankingdurations'] + + try: + trankingdurations = form.cleaned_data['trankingdurations'] + except KeyError: + trankingdurations = [] + trankingdurations = [ datetime.datetime.strptime(d,"%H:%M:%S").time() for d in trankingdurations ]