correctly recognizes Empower version on new files
This commit is contained in:
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user