From aa6cb10dc51e03962ccf67912ccc03bc28428da9 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 8 Sep 2025 16:03:45 +0200 Subject: [PATCH] fixing some issues --- rowers/dataroutines.py | 2 ++ rowers/models.py | 14 ++++++++++---- rowers/tasks.py | 12 ++++++++++-- rowers/tests/testdata/testdata.tcx.gz | Bin 3989 -> 3989 bytes 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/rowers/dataroutines.py b/rowers/dataroutines.py index 1c5d9ae9..4a8734d2 100644 --- a/rowers/dataroutines.py +++ b/rowers/dataroutines.py @@ -1673,6 +1673,8 @@ def read_data(columns, ids=[], doclean=True, workstrokesonly=True, debug=False, data = pl.collect_all(data) except ComputeError: return pl.DataFrame() + except FileNotFoundError: + return pl.DataFrame() if len(data)==0: return pl.DataFrame() diff --git a/rowers/models.py b/rowers/models.py index b66e4e08..9aa8eca5 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -2029,9 +2029,15 @@ class TrainingPlan(models.Model): name = self.name startdate = self.startdate enddate = self.enddate - firstname = self.manager.user.first_name - lastname = self.manager.user.last_name - + try: + firstname = self.manager.user.first_name + except AttributeError: # pragma: no cover + firstname = '' + try: + lastname = self.manager.user.last_name + except AttributeError: + lastname = '' + stri = u'Training Plan by {firstname} {lastname} {s} - {e}: {name}'.format( s=startdate.strftime('%Y-%m-%d'), e=enddate.strftime('%Y-%m-%d'), @@ -4292,7 +4298,7 @@ class VirtualRaceResult(models.Model): if self.entrycategory is not None and other.entrycategory is not None: if self.entrycategory != other.entrycategory: return False - elif self.entrycategory is None and other.entrycateogry is not None: + elif self.entrycategory is None and other.entrycategory is not None: return False elif self.entrycategory is not None and other.entrycategory is None: return False diff --git a/rowers/tasks.py b/rowers/tasks.py index 325d7210..a9ac7e12 100644 --- a/rowers/tasks.py +++ b/rowers/tasks.py @@ -4183,7 +4183,12 @@ def handle_split_workout_by_intervals(id, debug=False, **kwargs): messages.error(request,"No Data file found for this workout") return HttpResponseRedirect(url) - new_rowdata = rowdata.split_by_intervals() + try: + new_rowdata = rowdata.split_by_intervals() + except KeyError: + new_rowdata = rowdata + return 0 + interval_i = 1 for data in new_rowdata: filename = 'media/{code}.csv'.format( @@ -4361,7 +4366,10 @@ def fetch_strava_workout(stravatoken, oauth_data, stravaid, csvfilename, userid, try: rowdatetime = iso8601.parse_date(workoutsummary['date_utc']) except KeyError: - rowdatetime = iso8601.parse_date(workoutsummary['start_date']) + try: + rowdatetime = iso8601.parse_date(workoutsummary['start_date']) + except KeyError: + rowdatetime = iso8601.parse_date(workoutsummary['date']) except ParseError: # pragma: no cover rowdatetime = iso8601.parse_date(workoutsummary['date']) diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz index 50e4c7bcf66dc54faa907e4d81e9dc2db662cf97..9458f4e24543d6b78acbfb7ec56cd7f54b8a092c 100644 GIT binary patch delta 16 XcmbO#KUJPxzMF$1<^H~n?0x(IEI9>$ delta 16 XcmbO#KUJPxzMF%?P-)Lb_C9_9CR_xL