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 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_sendemail_unrecognized
|
||||||
from rowers.tasks import handle_zip_file
|
from rowers.tasks import handle_zip_file
|
||||||
@@ -1153,11 +1155,15 @@ def parsenonpainsled(fileformat,f2,summary):
|
|||||||
if (fileformat == 'speedcoach2'):
|
if (fileformat == 'speedcoach2'):
|
||||||
row = SpeedCoach2Parser(f2)
|
row = SpeedCoach2Parser(f2)
|
||||||
hasrecognized = True
|
hasrecognized = True
|
||||||
try:
|
|
||||||
oarlength, inboard = get_empower_rigging(f2)
|
oarlength, inboard = get_empower_rigging(f2)
|
||||||
summary = row.allstats()
|
empowerfirmware = get_empower_firmware(f2)
|
||||||
except:
|
if empowerfirmware != '':
|
||||||
pass
|
fileformat = fileformat+'v'+str(empowerfirmware)
|
||||||
|
else:
|
||||||
|
fileformat = 'speedcoach2v0'
|
||||||
|
summary = row.allstats()
|
||||||
|
|
||||||
|
|
||||||
# handle ErgStick
|
# handle ErgStick
|
||||||
if (fileformat == 'ergstick'):
|
if (fileformat == 'ergstick'):
|
||||||
@@ -1176,7 +1182,7 @@ def parsenonpainsled(fileformat,f2,summary):
|
|||||||
pass
|
pass
|
||||||
hasrecognized = True
|
hasrecognized = True
|
||||||
|
|
||||||
return row,hasrecognized,summary
|
return row,hasrecognized,summary,fileformat
|
||||||
|
|
||||||
def handle_nonpainsled(f2, fileformat, summary=''):
|
def handle_nonpainsled(f2, fileformat, summary=''):
|
||||||
oarlength = 2.89
|
oarlength = 2.89
|
||||||
@@ -1184,7 +1190,7 @@ def handle_nonpainsled(f2, fileformat, summary=''):
|
|||||||
hasrecognized = False
|
hasrecognized = False
|
||||||
|
|
||||||
try:
|
try:
|
||||||
row,hasrecognized,summary = parsenonpainsled(fileformat,f2,summary)
|
row,hasrecognized,summary,fileformat = parsenonpainsled(fileformat,f2,summary)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@@ -1211,7 +1217,7 @@ def handle_nonpainsled(f2, fileformat, summary=''):
|
|||||||
except:
|
except:
|
||||||
os.remove(f_to_be_deleted + '.gz')
|
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
|
# Create new workout from file and store it in the database
|
||||||
# This routine should be used everywhere in views.py and mailprocessing.py
|
# 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
|
# handle non-Painsled by converting it to painsled compatible CSV
|
||||||
if (fileformat != 'csv'):
|
if (fileformat != 'csv'):
|
||||||
try:
|
try:
|
||||||
f2, summary, oarlength, inboard = handle_nonpainsled(f2,
|
f2, summary, oarlength, inboard, fileformat = handle_nonpainsled(
|
||||||
fileformat,
|
f2,
|
||||||
summary=summary)
|
fileformat,
|
||||||
|
summary=summary
|
||||||
|
)
|
||||||
if not f2:
|
if not f2:
|
||||||
message = 'Something went wrong'
|
message = 'Something went wrong'
|
||||||
return (0, message, '')
|
return (0, message, '')
|
||||||
@@ -1308,7 +1316,9 @@ def new_workout_from_file(r, f2,
|
|||||||
message = 'Something went wrong: ' + errorstring
|
message = 'Something went wrong: ' + errorstring
|
||||||
return (0, message, '')
|
return (0, message, '')
|
||||||
|
|
||||||
dosummary = (fileformat != 'fit' and fileformat != 'speedcoach2')
|
dosummary = (fileformat != 'fit' and 'speedcoach2' not in fileformat)
|
||||||
|
|
||||||
|
|
||||||
id, message = save_workout_database(
|
id, message = save_workout_database(
|
||||||
f2, r,
|
f2, r,
|
||||||
workouttype=workouttype,
|
workouttype=workouttype,
|
||||||
|
|||||||
@@ -1221,7 +1221,7 @@ class Workout(models.Model):
|
|||||||
name = models.CharField(max_length=150)
|
name = models.CharField(max_length=150)
|
||||||
date = models.DateField()
|
date = models.DateField()
|
||||||
workouttype = models.CharField(choices=workouttypes,max_length=50)
|
workouttype = models.CharField(choices=workouttypes,max_length=50)
|
||||||
workoutsource = models.CharField(choices=workoutsources,max_length=100,
|
workoutsource = models.CharField(max_length=100,
|
||||||
default='unknown')
|
default='unknown')
|
||||||
boattype = models.CharField(choices=boattypes,max_length=50,
|
boattype = models.CharField(choices=boattypes,max_length=50,
|
||||||
default='1x',
|
default='1x',
|
||||||
|
|||||||
Reference in New Issue
Block a user