gps/impeller switching implemented
This commit is contained in:
@@ -291,13 +291,13 @@
|
|||||||
<li id="advanced-usegps">
|
<li id="advanced-usegps">
|
||||||
<a href="/rowers/workout/{{ workout.id|encode }}/otwusegps/">
|
<a href="/rowers/workout/{{ workout.id|encode }}/otwusegps/">
|
||||||
<i class="fas fa-satellite"></i>
|
<i class="fas fa-satellite"></i>
|
||||||
{% if workout.impeller %}• {% else %} {% endif %}Use GPS data
|
{% if workout.impeller %} {% else %}• {% endif %}Use GPS data
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li id="advanced-useimpeller">
|
<li id="advanced-useimpeller">
|
||||||
<a href="/rowers/workout/{{ workout.id|encode }}/otwuseimpeller/">
|
<a href="/rowers/workout/{{ workout.id|encode }}/otwuseimpeller/">
|
||||||
<i class="fas fa-wind-turbine fa-rotate-180"></i>
|
<i class="fas fa-wind-turbine fa-rotate-180"></i>
|
||||||
{% if workout.impeller %} {% else %}• {% endif %}Use Impeller data
|
{% if workout.impeller %}• {% else %} {% endif %}Use Impeller data
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -283,6 +283,10 @@ urlpatterns = [
|
|||||||
re_path(r'^graph/(?P<pk>\d+)/delete/$',views.GraphDelete.as_view(),name='graph_delete'),
|
re_path(r'^graph/(?P<pk>\d+)/delete/$',views.GraphDelete.as_view(),name='graph_delete'),
|
||||||
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/get-thumbnails/$',views.get_thumbnails,
|
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/get-thumbnails/$',views.get_thumbnails,
|
||||||
name='get_thumbnails'),
|
name='get_thumbnails'),
|
||||||
|
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/otwuseimpeller/$',views.otw_use_impeller,
|
||||||
|
name='otw_use_impeller'),
|
||||||
|
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/otwusegps/$',views.otw_use_gps,
|
||||||
|
name='otw_use_gps'),
|
||||||
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/toggle-ranking/$',views.workout_toggle_ranking,
|
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/toggle-ranking/$',views.workout_toggle_ranking,
|
||||||
name='workout_toggle_ranking'),
|
name='workout_toggle_ranking'),
|
||||||
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/get-testscript/$',views.get_testscript,
|
re_path(r'^workout/(?P<id>\b[0-9A-Fa-f]+\b)/get-testscript/$',views.get_testscript,
|
||||||
|
|||||||
@@ -456,18 +456,54 @@ def workout_forcecurve_view(request,id=0,workstrokesonly=False):
|
|||||||
'teams':get_my_teams(request.user),
|
'teams':get_my_teams(request.user),
|
||||||
})
|
})
|
||||||
|
|
||||||
# Test asynchronous tasking and messaging
|
# Switch from GPS to Impeller (only for SpeedCoach 2, if impeller data)
|
||||||
#@login_required()
|
@login_required
|
||||||
#def workout_test_task_view(request,id=0):
|
def otw_use_impeller(request,id=0):
|
||||||
# row = Workout.objects.get(id=id)
|
w = get_workout(id)
|
||||||
# res = myqueue(queuehigh,addcomment2,request.user.id,row.id)#
|
|
||||||
#
|
if (checkworkoutuser(request.user,w)==False):
|
||||||
#
|
raise PermissionDenied("Access denied")
|
||||||
# url = reverse('workout_edit_view',
|
|
||||||
# kwargs = {
|
row = rdata(w.csvfilename)
|
||||||
# 'id':int(id),
|
success = row.use_impellerdata()
|
||||||
# })
|
if success:
|
||||||
# return HttpResponseRedirect(url)
|
row.write_csv(w.csvfilename)
|
||||||
|
dataprep.update_strokedata(w.id,row.df)
|
||||||
|
w.impeller = True
|
||||||
|
w.save()
|
||||||
|
messages.info(request,'The distance and speed data are now based on Impeller data')
|
||||||
|
else:
|
||||||
|
messages.error(request,'No impeller data found')
|
||||||
|
|
||||||
|
url = reverse('workout_edit_view',kwargs={'id':encoder.encode_hex(w.id)})
|
||||||
|
|
||||||
|
return HttpResponseRedirect(url)
|
||||||
|
|
||||||
|
|
||||||
|
# Switch from Impeller to GPS (only for SpeedCoach 2, if impeller data)
|
||||||
|
@login_required
|
||||||
|
def otw_use_gps(request,id=0):
|
||||||
|
w = get_workout(id)
|
||||||
|
|
||||||
|
if (checkworkoutuser(request.user,w)==False):
|
||||||
|
raise PermissionDenied("Access denied")
|
||||||
|
|
||||||
|
row = rdata(w.csvfilename)
|
||||||
|
success = row.use_gpsdata()
|
||||||
|
if success:
|
||||||
|
row.write_csv(w.csvfilename)
|
||||||
|
dataprep.update_strokedata(w.id,row.df)
|
||||||
|
w.impeller = False
|
||||||
|
w.save()
|
||||||
|
messages.info(request,'The distance and speed data are now based on GPS data')
|
||||||
|
else:
|
||||||
|
messages.error(request,'No GPS data found')
|
||||||
|
|
||||||
|
url = reverse('workout_edit_view',kwargs={'id':encoder.encode_hex(w.id)})
|
||||||
|
|
||||||
|
return HttpResponseRedirect(url)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Show Stroke power histogram for a workout
|
# Show Stroke power histogram for a workout
|
||||||
@login_required()
|
@login_required()
|
||||||
|
|||||||
Reference in New Issue
Block a user