diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index a7a046d9..a1efd629 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -3705,8 +3705,14 @@ def interactive_comparison_chart(id1=0,id2=0,xparam='distance',yparam='spm', rowdata1 = dataprep.getsmallrowdata_db(columns,ids=[id1]) rowdata2 = dataprep.getsmallrowdata_db(columns,ids=[id2]) for n in ['distance','power','hr','spm','time','pace','workoutstate']: - rowdata1[n].fillna(value=0,inplace=True) - rowdata2[n].fillna(value=0,inplace=True) + try: + rowdata1[n].fillna(value=0,inplace=True) + except KeyError: + pass + try: + rowdata2[n].fillna(value=0,inplace=True) + except KeyError: + pass rowdata1.dropna(axis=1,how='all',inplace=True) rowdata1.dropna(axis=0,how='any',inplace=True) diff --git a/rowers/views.py b/rowers/views.py index 8f17bfdc..d5dc92dc 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -9592,7 +9592,12 @@ def workout_getstravaworkout_view(request,stravaid): @login_required() def workout_getrunkeeperworkout_view(request,runkeeperid): res = runkeeperstuff.get_runkeeper_workout(request.user,runkeeperid) - data = res.json() + try: + data = res.json() + except ValueError: + messages.error(request,'Error getting workout from Runkeeper') + url = reverse(workout_runkeeperimport_view) + return HttpResponseRedirect(url) id,message = add_workout_from_runkeeperdata(request.user,runkeeperid,data) w = Workout.objects.get(id=id)