From 1e23354346d3d5ef4c67db8a9836a1219c439817 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Wed, 15 Aug 2018 10:25:04 +0200 Subject: [PATCH] runkeeper patch & course_time_zone bug fix --- rowers/imports.py | 7 ++++++- rowers/plannedsessions.py | 7 ++++--- rowers/views.py | 9 +++++++-- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/rowers/imports.py b/rowers/imports.py index 7de3ad92..86e6408c 100644 --- a/rowers/imports.py +++ b/rowers/imports.py @@ -201,10 +201,15 @@ def imports_get_token( data=post_data, headers=headers) + print response.status_code + print response.json() if response.status_code == 200 or response.status_code == 201: token_json = response.json() - thetoken = token_json['access_token'] + try: + thetoken = token_json['access_token'] + except KeyError: + return [0,0,0] try: refresh_token = token_json['refresh_token'] except KeyError: diff --git a/rowers/plannedsessions.py b/rowers/plannedsessions.py index ffc8837a..7a92ab1a 100644 --- a/rowers/plannedsessions.py +++ b/rowers/plannedsessions.py @@ -19,7 +19,8 @@ queuehigh = django_rq.get_queue('low') from rowers.models import ( Rower, Workout,Team, GeoCourse, TrainingMicroCycle,TrainingMesoCycle,TrainingMacroCycle, - TrainingPlan,PlannedSession,VirtualRaceResult,CourseTestResult + TrainingPlan,PlannedSession,VirtualRaceResult,CourseTestResult, + get_course_timezone ) import metrics @@ -103,7 +104,7 @@ def timefield_to_seconds_duration(t): def get_virtualrace_times(virtualrace): geocourse = GeoCourse.objects.get(id = virtualrace.course.id) - timezone_str = courses.get_course_timezone(geocourse) + timezone_str = get_course_timezone(geocourse) startdatetime = datetime.datetime.combine( virtualrace.startdate,virtualrace.start_time) @@ -299,7 +300,7 @@ def is_session_complete_ws(ws,ps): coursetime, coursemeters, coursecompleted - ) = courses.get_time_course(ws,ps.course) + ) = get_time_course(ws,ps.course) if coursecompleted: return 1.0,'completed',completiondate else: diff --git a/rowers/views.py b/rowers/views.py index 6a5681c6..1d88d01f 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -76,7 +76,8 @@ from rowers.models import ( VirtualRaceForm,VirtualRaceResultForm,RowerImportExportForm ) from rowers.models import ( - FavoriteForm,BaseFavoriteFormSet,SiteAnnouncement,BasePlannedSessionFormSet + FavoriteForm,BaseFavoriteFormSet,SiteAnnouncement,BasePlannedSessionFormSet, + get_course_timezone ) from rowers.metrics import rowingmetrics,defaultfavoritecharts from rowers import metrics @@ -2239,6 +2240,10 @@ def rower_process_runkeepercallback(request): res = runkeeperstuff.get_token(code) access_token = res[0] + if access_token == 0: + messages.error(request,"Something went wrong importing the token") + return imports_view(request) + r = getrower(request.user) r.runkeepertoken = access_token @@ -13698,7 +13703,7 @@ def virtualevent_create_view(request): # correct times geocourse = GeoCourse.objects.get(id= course.id) - timezone_str = courses.get_course_timezone(geocourse) + timezone_str = get_course_timezone(geocourse) startdatetime = datetime.datetime.combine(startdate,start_time) enddatetime = datetime.datetime.combine(enddate,end_time)