From 346c51b17d3c3491a9fbac422b5a8fcb6741c6d5 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Sun, 12 Jul 2020 17:08:08 +0200 Subject: [PATCH 1/3] got --- rowers/templates/rower_exportsettings.html | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/rowers/templates/rower_exportsettings.html b/rowers/templates/rower_exportsettings.html index 14c5286b..b5b0e3c6 100644 --- a/rowers/templates/rower_exportsettings.html +++ b/rowers/templates/rower_exportsettings.html @@ -19,6 +19,13 @@

+{% if rower.garmintoken and rower.garmintoken != '' %} +

+ You are connected to Garmin. Switching off Garmin Connect sync is on the + Account settings + page. Look for the "Rowsandall" app. +

+{% endif %}

Garmin Connnect has no manual sync, so connecting your account to your Garmin account will automatically auto-sync workouts from Garmin to Rowsandall (but not in the other direction). From 04c765ed1c8833c1b83b6ec0c48297d7a4e2778d Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Sun, 12 Jul 2020 17:54:23 +0200 Subject: [PATCH 2/3] better afternoon/morning/evening/night --- rowers/dataprep.py | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/rowers/dataprep.py b/rowers/dataprep.py index 756038cc..c69102db 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -749,8 +749,33 @@ def clean_df_stats(datadf, workstrokesonly=True, ignorehr=True, return datadf -def getpartofday(dt): - h = dt.hour +def getpartofday(row,r): + try: + latavg = row.df[' latitude'].mean() + lonavg = row.df[' longitude'].mean() + + tf = TimezoneFinder() + try: + timezone_str = tf.timezone_at(lng=lonavg, lat=latavg) + print(timezone_str) + except ValueError: + timezone_str = 'UTC' + if timezone_str == None: + timezone_str = tf.closest_timezone_at(lng=lonavg, + lat=latavg) + if timezone_str == None: + timezone_str = r.defaulttimezone + try: + workoutstartdatetime = pytz.timezone(timezone_str).localize( + row.rowdatetime + ) + except ValueError: + workoutstartdatetime = row.rowdatetime + except KeyError: + timezone_str = r.defaulttimezone + + h = workoutstartdatetime.astimezone(pytz.timezone(timezone_str)).hour + if h < 12: return "Morning" elif h < 18: @@ -1169,7 +1194,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower', if title is None or title == '': title = 'Workout' - partofday = getpartofday(row.rowdatetime) + partofday = getpartofday(row,r) if partofday is not None: title = '{partofday} workout {workouttype}'.format( From fa0ea3b37010a0e6aa12064594cd9c55dbc2c4c6 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Sun, 12 Jul 2020 20:07:02 +0200 Subject: [PATCH 3/3] fix time zone --- rowers/dataprep.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rowers/dataprep.py b/rowers/dataprep.py index c69102db..fae04c02 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -757,7 +757,6 @@ def getpartofday(row,r): tf = TimezoneFinder() try: timezone_str = tf.timezone_at(lng=lonavg, lat=latavg) - print(timezone_str) except ValueError: timezone_str = 'UTC' if timezone_str == None: @@ -1196,6 +1195,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower', title = 'Workout' partofday = getpartofday(row,r) + if partofday is not None: title = '{partofday} workout {workouttype}'.format( partofday=partofday,