Private
Public Access
1
0

power zones

This commit is contained in:
Sander Roosendaal
2016-11-09 00:00:13 +01:00
parent 48044108b2
commit cde106bb19
6 changed files with 62 additions and 11 deletions

View File

@@ -86,6 +86,13 @@
<a class="button blue small" href="/rowers/workout/{{ workout.id }}/addpiechart">Add Pie Chart</a>
</p>
</div>
<div class="grid_6 alpha">
<div class="grid_2 prefix_4 alpha">
<p>
<a class="button blue small" href="/rowers/workout/{{ workout.id }}/addpowerpiechart">Power Pie Chart</a>
</p>
</div>
<div class="grid_6">
<p>Generating images takes roughly 1 second per minute
of your workout's duration. Please reload after a minute or so.</p>
@@ -218,4 +225,4 @@
{{ gmdiv|safe }}
</div>
{% endblock %}
{% endblock %}

View File

@@ -321,7 +321,6 @@ class ViewTest(TestCase):
}
form = DocumentsForm(form_data,file_data)
response = self.c.post('/rowers/workout/upload/', form_data, follow=True)
f.close()

View File

@@ -89,6 +89,7 @@ urlpatterns = [
url(r'^workout/(\d+)/$',views.workout_view),
url(r'^workout/(\d+)/addtimeplot$',views.workout_add_timeplot_view),
url(r'^workout/(\d+)/addpiechart$',views.workout_add_piechart_view),
url(r'^workout/(\d+)/addpowerpiechart$',views.workout_add_power_piechart_view),
url(r'^workout/(\d+)/adddistanceplot$',views.workout_add_distanceplot_view),
url(r'^workout/(\d+)/adddistanceplot2$',views.workout_add_distanceplot2_view),
url(r'^workout/(\d+)/addotwpowerplot$',views.workout_add_otw_powerplot_view),

View File

@@ -2830,6 +2830,50 @@ def workout_add_piechart_view(request,id):
url = "/rowers/workout/"+str(w.id)+"/edit"
return HttpResponseRedirect(url)
@login_required()
def workout_add_power_piechart_view(request,id):
w = Workout.objects.get(id=id)
if (checkworkoutuser(request.user,w)==False):
return HttpResponse("You are not allowed add plots to this workout")
else:
f1 = w.csvfilename[6:-4]
timestr = strftime("%Y%m%d-%H%M%S")
imagename = f1+timestr+'.png'
fullpathimagename = 'static/plots/'+imagename
u = request.user
r = Rower.objects.get(user=u)
hrpwrdata = {
'hrmax':r.max,
'hrut2':r.ut2,
'hrut1':r.ut1,
'hrat':r.at,
'hrtr':r.tr,
'hran':r.an,
'ftp':r.ftp,
}
# make plot - asynchronous task
plotnr = 13
if (w.workouttype=='water'):
plotnr = plotnr+3
if settings.DEBUG:
res = handle_makeplot.delay(f1,w.csvfilename,
w.name,hrpwrdata,plotnr,imagename)
else:
res = queue.enqueue(handle_makeplot,f1,w.csvfilename,
w.name,hrpwrdata,plotnr,imagename)
# i = GraphImage(workout=w,creationdatetime=datetime.datetime.now(),
# filename=fullpathimagename)
i = GraphImage(workout=w,creationdatetime=timezone.now(),
filename=fullpathimagename)
i.save()
url = "/rowers/workout/"+str(w.id)+"/edit"
return HttpResponseRedirect(url)
@login_required()
def workout_add_timeplot_view(request,id):
w = Workout.objects.get(id=id)

View File

@@ -168,15 +168,6 @@ MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
BROKER_URL = 'redis://localhost:6379/0'
CELERY_RESULT_BACKEND = 'redis://localhost:6379/0'
CELERY_IGNORE_RESULT = False
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TRACK_STARTED = True
CELERY_SEND_TASK_SENT_EVENT = True
# user authentication

View File

@@ -30,6 +30,15 @@ DATABASES = {
# }
}
BROKER_URL = 'redis://localhost:6379/0'
CELERY_RESULT_BACKEND = 'redis://localhost:6379/0'
CELERY_IGNORE_RESULT = False
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TRACK_STARTED = True
CELERY_SEND_TASK_SENT_EVENT = True
# SECURITY WARNING: don't run with debug turned on in production!