Private
Public Access
1
0

correctly recognizes Empower version on new files

This commit is contained in:
Sander Roosendaal
2018-05-02 09:41:59 +02:00
parent 39ff62e560
commit 379626f802
2 changed files with 24 additions and 14 deletions

View File

@@ -10,7 +10,9 @@ from rowingdata import rower as rrower
from shutil import copyfile
from rowingdata import get_file_type, get_empower_rigging
from rowingdata import (
get_file_type, get_empower_rigging,get_empower_firmware
)
from rowers.tasks import handle_sendemail_unrecognized
from rowers.tasks import handle_zip_file
@@ -1153,11 +1155,15 @@ def parsenonpainsled(fileformat,f2,summary):
if (fileformat == 'speedcoach2'):
row = SpeedCoach2Parser(f2)
hasrecognized = True
try:
oarlength, inboard = get_empower_rigging(f2)
summary = row.allstats()
except:
pass
oarlength, inboard = get_empower_rigging(f2)
empowerfirmware = get_empower_firmware(f2)
if empowerfirmware != '':
fileformat = fileformat+'v'+str(empowerfirmware)
else:
fileformat = 'speedcoach2v0'
summary = row.allstats()
# handle ErgStick
if (fileformat == 'ergstick'):
@@ -1176,7 +1182,7 @@ def parsenonpainsled(fileformat,f2,summary):
pass
hasrecognized = True
return row,hasrecognized,summary
return row,hasrecognized,summary,fileformat
def handle_nonpainsled(f2, fileformat, summary=''):
oarlength = 2.89
@@ -1184,7 +1190,7 @@ def handle_nonpainsled(f2, fileformat, summary=''):
hasrecognized = False
try:
row,hasrecognized,summary = parsenonpainsled(fileformat,f2,summary)
row,hasrecognized,summary,fileformat = parsenonpainsled(fileformat,f2,summary)
except:
pass
@@ -1211,7 +1217,7 @@ def handle_nonpainsled(f2, fileformat, summary=''):
except:
os.remove(f_to_be_deleted + '.gz')
return (f2, summary, oarlength, inboard)
return (f2, summary, oarlength, inboard, fileformat)
# Create new workout from file and store it in the database
# This routine should be used everywhere in views.py and mailprocessing.py
@@ -1297,9 +1303,11 @@ def new_workout_from_file(r, f2,
# handle non-Painsled by converting it to painsled compatible CSV
if (fileformat != 'csv'):
try:
f2, summary, oarlength, inboard = handle_nonpainsled(f2,
fileformat,
summary=summary)
f2, summary, oarlength, inboard, fileformat = handle_nonpainsled(
f2,
fileformat,
summary=summary
)
if not f2:
message = 'Something went wrong'
return (0, message, '')
@@ -1308,7 +1316,9 @@ def new_workout_from_file(r, f2,
message = 'Something went wrong: ' + errorstring
return (0, message, '')
dosummary = (fileformat != 'fit' and fileformat != 'speedcoach2')
dosummary = (fileformat != 'fit' and 'speedcoach2' not in fileformat)
id, message = save_workout_database(
f2, r,
workouttype=workouttype,