Private
Public Access
1
0

adds SPM to automagical intervals

This commit is contained in:
Sander Roosendaal
2020-02-22 14:37:58 +01:00
parent 05ebb2c7be
commit 0703505219
2 changed files with 34 additions and 4 deletions

View File

@@ -731,11 +731,13 @@ class PowerIntervalUpdateForm(forms.Form):
('power','Power'), ('power','Power'),
('pace','Pace'), ('pace','Pace'),
('work','Work per Stroke'), ('work','Work per Stroke'),
('spm','Stroke Rate')
) )
pace = forms.DurationField(required=False,label='Pace (/500m)') pace = forms.DurationField(required=False,label='Pace (/500m)')
power = forms.IntegerField(required=False,label='Power (W)') power = forms.IntegerField(required=False,label='Power (W)')
work = forms.IntegerField(required=False,label='Work per Stroke (J)') work = forms.IntegerField(required=False,label='Work per Stroke (J)')
spm = forms.IntegerField(required=False,label='Stroke Rate')
selector = forms.ChoiceField(choices=selectorchoices, selector = forms.ChoiceField(choices=selectorchoices,
required=True, required=True,
initial='power', initial='power',

View File

@@ -5614,6 +5614,7 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
normp = row.normp normp = row.normp
normv = row.normv normv = row.normv
normw = row.normw normw = row.normw
normspm = rowdata.df[' Cadence (stokes/min)'].mean()
if tss == -1: if tss == -1:
tss,normp = dataprep.workout_rscore(row) tss,normp = dataprep.workout_rscore(row)
@@ -5635,7 +5636,8 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
'power': int(normp), 'power': int(normp),
'pace': avpace, 'pace': avpace,
'selector': 'power', 'selector': 'power',
'work': int(normw) 'work': int(normw),
'spm': int(normspm),
} }
powerorpace = 'power' powerorpace = 'power'
@@ -5670,6 +5672,7 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
value_pace = request.POST['value_pace'] value_pace = request.POST['value_pace']
value_power = request.POST['value_power'] value_power = request.POST['value_power']
value_work = request.POST['value_work'] value_work = request.POST['value_work']
value_spm = request.POST['value_spm']
if powerorpace == 'power': if powerorpace == 'power':
try: try:
power = int(value_power) power = int(value_power)
@@ -5688,6 +5691,11 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
work = int(value_work) work = int(value_work)
except ValueError: except ValueError:
work = int(normw) work = int(normw)
elif powerorpace == 'spm':
try:
spm = int(value_spm)
except ValueError:
spm = int(normspm)
if powerorpace == 'power' and power is not None: if powerorpace == 'power' and power is not None:
try: try:
@@ -5711,6 +5719,14 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
debug=False,smoothwindow=15.) debug=False,smoothwindow=15.)
except: except:
messages.error(request,'Error updating Work per Stroke') messages.error(request,'Error updating Work per Stroke')
elif powerorpace == 'spm':
try:
print('aap')
rowdata.updateinterval_metric(
' Cadence (stokes/min)',spm,mode='larger',
debug=False,smoothwindow=2.)
except:
messages.error(request,'Error updating SPM')
intervalstats = rowdata.allstats() intervalstats = rowdata.allstats()
itime,idist,itype = rowdata.intervalstats_values() itime,idist,itype = rowdata.intervalstats_values()
@@ -5728,7 +5744,8 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
'power': power, 'power': power,
'pace': datetime.timedelta(seconds=int(pace_secs)), 'pace': datetime.timedelta(seconds=int(pace_secs)),
'work': work, 'work': work,
'selector': powerorpace 'selector': powerorpace,
'spm': int(normspm)
} }
form = SummaryStringForm() form = SummaryStringForm()
powerupdateform = PowerIntervalUpdateForm(initial=data) powerupdateform = PowerIntervalUpdateForm(initial=data)
@@ -5773,7 +5790,8 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
'power': int(normp), 'power': int(normp),
'pace': avpace, 'pace': avpace,
'selector': 'power', 'selector': 'power',
'work': int(normw) 'work': int(normw),
'spm': int(normspm),
}) })
savebutton = 'savestringform' savebutton = 'savestringform'
@@ -5786,6 +5804,7 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
power = cd['power'] power = cd['power']
pace = cd['pace'] pace = cd['pace']
work = cd['work'] work = cd['work']
spm = cd['spm']
try: try:
pace_secs = pace.seconds+pace.microseconds/1.0e6 pace_secs = pace.seconds+pace.microseconds/1.0e6
except AttributeError: except AttributeError:
@@ -5811,6 +5830,13 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
debug=False,smoothwindow=15.) debug=False,smoothwindow=15.)
except: except:
messages.error(request,'Error updating Work per Stroke') messages.error(request,'Error updating Work per Stroke')
elif powerorpace == 'spm':
try:
rowdata.updateinterval_metric(' Cadence (stokes/min)',spm,mode='larger',
debug=False,smoothwindow=2.)
except:
print('mies')
messages.error(request,'Error updating SPM')
intervalstats = rowdata.allstats() intervalstats = rowdata.allstats()
@@ -5822,6 +5848,7 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
'value_power': power, 'value_power': power,
'value_pace': pace_secs, 'value_pace': pace_secs,
'value_work': work, 'value_work': work,
'value_spm': spm,
} }
powerupdateform = PowerIntervalUpdateForm(initial=cd) powerupdateform = PowerIntervalUpdateForm(initial=cd)
form = SummaryStringForm() form = SummaryStringForm()
@@ -5888,7 +5915,8 @@ def workout_summary_edit_view(request,id,message="",successmessage=""
'power': int(normp), 'power': int(normp),
'pace': avpace, 'pace': avpace,
'selector': 'power', 'selector': 'power',
'work': int(normw) 'work': int(normw),
'spm': int(normspm),
}) })