Private
Public Access
1
0

adding oarlength and inboard

This commit is contained in:
Sander Roosendaal
2017-03-01 15:00:58 +01:00
parent 7f4d64450b
commit 9bf485f596
2 changed files with 18 additions and 4 deletions

View File

@@ -8,7 +8,7 @@ from rowers.tasks import handle_sendemail_unrecognized
from rowingdata import rower as rrower from rowingdata import rower as rrower
from rowingdata import main as rmain from rowingdata import main as rmain
from rowingdata import get_file_type from rowingdata import get_file_type,get_empower_rigging
from pandas import DataFrame,Series from pandas import DataFrame,Series
from pytz import timezone as tz,utc from pytz import timezone as tz,utc
@@ -326,7 +326,8 @@ def save_workout_database(f2,r,dosmooth=True,workouttype='rower',
dosummary=True,title='Workout', dosummary=True,title='Workout',
notes='',totaldist=0,totaltime=0, notes='',totaldist=0,totaltime=0,
summary='', summary='',
makeprivate=False): makeprivate=False,
oarlength=2.89,inboard=0.88):
message = None message = None
powerperc = 100*np.array([r.pw_ut2, powerperc = 100*np.array([r.pw_ut2,
r.pw_ut1, r.pw_ut1,
@@ -446,6 +447,7 @@ def save_workout_database(f2,r,dosmooth=True,workouttype='rower',
csvfilename=f2,notes=notes,summary=summary, csvfilename=f2,notes=notes,summary=summary,
maxhr=maxhr,averagehr=averagehr, maxhr=maxhr,averagehr=averagehr,
startdatetime=workoutstartdatetime, startdatetime=workoutstartdatetime,
inboard=inboard,oarlength=oarlength,
privacy=privacy) privacy=privacy)
@@ -463,6 +465,8 @@ def save_workout_database(f2,r,dosmooth=True,workouttype='rower',
return (w.id,message) return (w.id,message)
def handle_nonpainsled(f2,fileformat,summary=''): def handle_nonpainsled(f2,fileformat,summary=''):
oarlength = 2.89
inboard = 0.88
# handle RowPro: # handle RowPro:
if (fileformat == 'rp'): if (fileformat == 'rp'):
row = RowProParser(f2) row = RowProParser(f2)
@@ -506,6 +510,7 @@ def handle_nonpainsled(f2,fileformat,summary=''):
if (fileformat == 'speedcoach2'): if (fileformat == 'speedcoach2'):
row = SpeedCoach2Parser(f2) row = SpeedCoach2Parser(f2)
try: try:
oarlength,inboard = get_empower_rigging(f2)
summary = row.allstats() summary = row.allstats()
except: except:
pass pass
@@ -534,7 +539,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) return (f2,summary,oarlength,inboard)
# 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
@@ -547,6 +552,8 @@ def new_workout_from_file(r,f2,
message = None message = None
fileformat = get_file_type(f2) fileformat = get_file_type(f2)
summary = '' summary = ''
oarlength = 2.89
inboard = 0.88
if len(fileformat)==3 and fileformat[0]=='zip': if len(fileformat)==3 and fileformat[0]=='zip':
f_to_be_deleted = f2 f_to_be_deleted = f2
with zipfile.ZipFile(f2) as z: with zipfile.ZipFile(f2) as z:
@@ -590,7 +597,7 @@ 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'):
f2,summary = handle_nonpainsled(f2,fileformat,summary=summary) f2,summary,oarlength,inboard = handle_nonpainsled(f2,fileformat,summary=summary)
dosummary = (fileformat != 'fit') dosummary = (fileformat != 'fit')
@@ -599,6 +606,7 @@ def new_workout_from_file(r,f2,
makeprivate=makeprivate, makeprivate=makeprivate,
dosummary=dosummary, dosummary=dosummary,
summary=summary, summary=summary,
inboard=inboard,oarlength=oarlength,
title=title) title=title)
return (id,message,f2) return (id,message,f2)

View File

@@ -393,6 +393,12 @@ class Workout(models.Model):
maxhr = models.IntegerField(blank=True,null=True) maxhr = models.IntegerField(blank=True,null=True)
uploadedtostrava = models.IntegerField(default=0) uploadedtostrava = models.IntegerField(default=0)
uploadedtosporttracks = models.IntegerField(default=0) uploadedtosporttracks = models.IntegerField(default=0)
# empower stuff
inboard = models.FloatField(default=0.88)
oarlength = models.FloatField(default=2.89)
notes = models.CharField(blank=True,null=True,max_length=1000) notes = models.CharField(blank=True,null=True,max_length=1000)
summary = models.TextField(blank=True) summary = models.TextField(blank=True)
privacy = models.CharField(default='visible',max_length=30, privacy = models.CharField(default='visible',max_length=30,