From 2f78d26d37d4452a1845591aa16fc1d8df93efa3 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 14 Jul 2020 20:17:16 +0200 Subject: [PATCH] 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', ]