• -

    + {{ form.as_table }}
    @@ -42,7 +42,7 @@ Public link to this workout - https://rowsandall.com/rowers/workout/{{ workout.id }} + https://rowsandall.com/rowers/workout/{{ workout.id|encode }} diff --git a/rowers/templates/workflow_snippet.html b/rowers/templates/workflow_snippet.html index 7ccbf33a..ea892cf2 100644 --- a/rowers/templates/workflow_snippet.html +++ b/rowers/templates/workflow_snippet.html @@ -2,7 +2,7 @@
    {{ forloop.counter }}
    - + {{ chart.div | safe }} {% if rower.showfavoritechartnotes %} diff --git a/rowers/templates/workout_form.html b/rowers/templates/workout_form.html index 6cbe4c3f..5cc68de1 100644 --- a/rowers/templates/workout_form.html +++ b/rowers/templates/workout_form.html @@ -59,7 +59,7 @@ $('#id_workouttype').change();
    - Share + Share

    @@ -123,7 +123,7 @@ $('#id_workouttype').change();

    Racing

    {% for race in indoorraces %}

    - Submit this to Indoor Race {{ race.name }} + Submit this to Indoor Race {{ race.name }}

    {% endfor %}
  • diff --git a/rowers/tests/testdata/testdata.csv.gz b/rowers/tests/testdata/testdata.csv.gz index 109abfa4..cd7f8923 100644 Binary files a/rowers/tests/testdata/testdata.csv.gz and b/rowers/tests/testdata/testdata.csv.gz differ diff --git a/rowers/urls.py b/rowers/urls.py index f80d1ce7..ddd2ebb1 100644 --- a/rowers/urls.py +++ b/rowers/urls.py @@ -351,6 +351,8 @@ urlpatterns = [ url(r'^workout/(?P\d+)/delete/$',login_required( views.WorkoutDelete.as_view()), name='workout_delete'), + url(r'^workout/(?P\b[0-9A-Fa-f]+\b)/delete/$',login_required( + views.workout_code_delete_view),name='workout_code_delete'), url(r'^workout/(?P\b[0-9A-Fa-f]+\b)/smoothenpace/$',views.workout_smoothenpace_view,name='workout_smoothenpace_view'), url(r'^workout/(?P\b[0-9A-Fa-f]+\b)/undosmoothenpace/$',views.workout_undo_smoothenpace_view,name='workout_undo_smoothenpace_view'), url(r'^workout/c2import/$',views.workout_c2import_view,name='workout_c2import_view'), diff --git a/rowers/views/workoutviews.py b/rowers/views/workoutviews.py index acbee20d..9f1c51cd 100644 --- a/rowers/views/workoutviews.py +++ b/rowers/views/workoutviews.py @@ -4664,11 +4664,12 @@ def workout_fusion_view(request,id1=0,id2=1): 'name':'Workouts' }, { - 'url':get_workout_default_page(request,w1.id), - 'name': str(w1.id) + 'url':get_workout_default_page(request,encoder.encode_hex(w1.id)), + 'name': encoder.encode_hex(w1.id) }, { - 'url':reverse('workout_fusion_list',kwargs={'id':encoder.encode_hex(id1)}), + 'url':reverse('workout_fusion_list', + kwargs={'id':encoder.encode_hex(id1)}), 'name': 'Sensor Fusion' }, { @@ -4677,7 +4678,7 @@ def workout_fusion_view(request,id1=0,id2=1): 'id1':encoder.encode_hex(id1), 'id2':encoder.encode_hex(id2) }), - 'name': str(w2.id) + 'name': encoder.encode_hex(w2.id) } ] @@ -5160,6 +5161,13 @@ class GraphDelete(DeleteView): return obj +def workout_code_delete_view(request,id=0): + pk = encoder.decode_hex(id) + + url = reverse('workout_delete',kwargs={'pk':pk}) + + return HttpResponseRedirect(url) + class WorkoutDelete(DeleteView): login_required = True model = Workout @@ -5175,8 +5183,8 @@ class WorkoutDelete(DeleteView): 'name':'Workouts' }, { - 'url':get_workout_default_page(self.request,self.object.id), - 'name': str(self.object.id) + 'url':get_workout_default_page(self.request,encoder.encode_hex(self.object.id)), + 'name': encoder.encode_hex(self.object.id) }, { 'url':reverse('workout_delete',kwargs={'pk':str(self.object.pk)}), 'name': 'Delete'