From 2f78d26d37d4452a1845591aa16fc1d8df93efa3 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 14 Jul 2020 20:17:16 +0200 Subject: [PATCH 1/2] further improvements --- rowers/management/commands/processemail.py | 34 ++++++++++++---------- rowers/models.py | 2 +- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/rowers/management/commands/processemail.py b/rowers/management/commands/processemail.py index 21edc932..96e39eb8 100644 --- a/rowers/management/commands/processemail.py +++ b/rowers/management/commands/processemail.py @@ -6,6 +6,7 @@ import os PY3K = sys.version_info >= (3, 0) import zipfile +from zipfile import BadZipFile import re import time from time import strftime @@ -240,18 +241,21 @@ class Command(BaseCommand): attachment.delete() for rower in rowers: if 'zip' in extension: - zip_file = zipfile.ZipFile(attachment.document) - for id,filename in enumerate(zip_file.namelist()): - datafile = zip_file.extract( - filename, path='media/') - if id>0: - title = name+' ('+str(id+1)+')' - else: - title = name - workoutid = processattachment( - rower, datafile, title, uploadoptions, - testing=testing - ) + try: + zip_file = zipfile.ZipFile(attachment.document) + for id,filename in enumerate(zip_file.namelist()): + datafile = zip_file.extract( + filename, path='media/') + if id>0: + title = name+' ('+str(id+1)+')' + else: + title = name + workoutid = processattachment( + rower, datafile, title, uploadoptions, + testing=testing + ) + except BadZipFile: + pass else: # move attachment and make workout @@ -296,9 +300,9 @@ class Command(BaseCommand): message.delete() # Strava - rowers = Rower.objects.filter(strava_auto_import=True) - for r in rowers: - stravastuff.get_strava_workouts(r) + #rowers = Rower.objects.filter(strava_auto_import=True) + #for r in rowers: + # stravastuff.get_strava_workouts(r) self.stdout.write(self.style.SUCCESS( 'Successfully processed email attachments')) diff --git a/rowers/models.py b/rowers/models.py index 9aab3e1b..015e3780 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -3442,7 +3442,7 @@ class RowerExportForm(ModelForm): 'runkeeper_auto_export', 'sporttracks_auto_export', 'strava_auto_export', - 'strava_auto_import', + #'strava_auto_import', 'trainingpeaks_auto_export', ] From 75afa1d2a7c61757db9b0fff816423e031bf16de Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 14 Jul 2020 20:20:57 +0200 Subject: [PATCH 2/2] len to count --- rowers/views/importviews.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rowers/views/importviews.py b/rowers/views/importviews.py index 68014905..300e2c66 100644 --- a/rowers/views/importviews.py +++ b/rowers/views/importviews.py @@ -1083,7 +1083,7 @@ def strava_webhook_view(request): return HttpResponse(status=200) try: ws = Workout.objects.filter(uploadedtostrava=stravaid) - if len(ws) == 0: + if ws.count() == 0: return HttpResponse(status=200) except Workout.DoesNotExist: timestamp = time.strftime('%b-%d-%Y_%H%M', t)