diff --git a/rowers/templates/menu_workout.html b/rowers/templates/menu_workout.html
index d79def7f..937218e7 100644
--- a/rowers/templates/menu_workout.html
+++ b/rowers/templates/menu_workout.html
@@ -41,13 +41,11 @@
Statistics
-
+
{% if user.is_authenticated and workout|may_edit:request %}
diff --git a/rowers/templates/team_compare_select.html b/rowers/templates/team_compare_select.html
index abdde333..133f62e4 100644
--- a/rowers/templates/team_compare_select.html
+++ b/rowers/templates/team_compare_select.html
@@ -83,6 +83,31 @@
your workouts. That makes it easy to search.
+
+
+
+
+
+
{% if workouts %}
-
- {% if team %}
-
-
-
- {% if team %}
-
-
{% endblock %}
diff --git a/rowers/urls.py b/rowers/urls.py
index d9856a97..18cc1ae3 100644
--- a/rowers/urls.py
+++ b/rowers/urls.py
@@ -156,8 +156,13 @@ urlpatterns = [
url(r'^courses/upload$',views.course_upload_view),
url(r'^addmanual/$',views.addmanual_view),
url(r'^team-compare-select/team/(?P\d+)/(?P\d+-\d+-\d+)/(?P\d+-\d+-\d+)$',views.team_comparison_select),
- url(r'^team-compare-select/team/(?P\d+)/$',views.team_comparison_select),
+ url(r'^team-compare-select/workout/(?P\d+)/team/(?P\d+)/$',views.team_comparison_select),
+ url(r'^team-compare-select/team/(?P\d+)/(?P\d+-\d+-\d+)/(?P\d+-\d+-\d+)$',views.team_comparison_select),
+ url(r'^team-compare-select/workout/(?P\d+)/team/(?P\d+)/$',views.team_comparison_select),
+ url(r'^team-compare-select/workout/(?P\d+)/(?P\d+-\d+-\d+)/(?P\d+-\d+-\d+)$',views.team_comparison_select),
url(r'^team-compare-select/(?P\d+-\d+-\d+)/(?P\d+-\d+-\d+)$',views.team_comparison_select),
+ url(r'^team-compare-select/workout/(?P\d+)/$',views.team_comparison_select),
+ url(r'^team-compare-select/team/(?P\d+)$',views.team_comparison_select),
url(r'^team-compare-select/$',views.team_comparison_select),
url(r'^workouts-join-select/team/(?P\d+)/(?P\d+-\d+-\d+)/(?P\d+-\d+-\d+)$',views.workouts_join_select),
url(r'^workouts-join$',views.workouts_join_view),
@@ -328,6 +333,7 @@ urlpatterns = [
url(r'^workout/(?P\d+)/runkeeperuploadw/$',views.workout_runkeeper_upload_view),
url(r'^workout/(?P\d+)/underarmouruploadw/$',views.workout_underarmour_upload_view),
url(r'^workout/(?P\d+)/tpuploadw/$',views.workout_tp_upload_view),
+ url(r'^multi-compare/workout/(?P\d+)$',views.multi_compare_view),
url(r'^multi-compare$',views.multi_compare_view),
url(r'^user-boxplot/user/(?P\d+)$',views.boxplot_view),
url(r'^user-boxplot$',views.boxplot_view),
diff --git a/rowers/views.py b/rowers/views.py
index 98b2d564..f0cda92f 100644
--- a/rowers/views.py
+++ b/rowers/views.py
@@ -5250,6 +5250,7 @@ def team_comparison_select(request,
successmessage='',
startdate=timezone.now()-datetime.timedelta(days=30),
enddate=timezone.now(),
+ id=0,
teamid=0):
try:
@@ -5371,7 +5372,7 @@ def team_comparison_select(request,
if rankingonly:
workouts = [w for w in workouts if w.rankingpiece]
-
+
query = request.GET.get('q')
if query:
query_list = query.split()
@@ -5382,8 +5383,22 @@ def team_comparison_select(request,
(Q(notes__icontains=q) for q in query_list))
)
+ if id:
+ firstworkout = get_workout(id)
+ if not checkworkoutuser(request.user,firstworkout):
+ raise PermissionDenied("You are not allowed to sue this workout")
+
+ firstworkoutquery = Workout.objects.filter(id=id)
+ workouts = firstworkoutquery | workouts
+ else:
+ firstworkout = None
+
form = WorkoutMultipleCompareForm()
form.fields["workouts"].queryset = workouts
+ if id:
+ form.fields["workouts"].initial = [firstworkout]
+
+
if theteam:
theid = theteam.id
@@ -5396,20 +5411,38 @@ def team_comparison_select(request,
messages.error(request,message)
r = getrower(request.user)
- breadcrumbs = [
- {
- 'url':'/rowers/list-workouts',
- 'name':'Workouts'
- },
- {
- 'url':reverse(team_comparison_select,kwargs={'teamid':teamid}),
- 'name': 'Compare Select'
- },
+ if id:
+ breadcrumbs = [
+ {
+ 'url':'/rowers/list-workouts',
+ 'name':'Workouts'
+ },
+ {
+ 'url':get_workout_default_page(request,id),
+ 'name': str(id)
+ },
+ {
+ 'url':reverse(team_comparison_select,kwargs={'id':id,'teamid':teamid}),
+ 'name':'Compare Select'
+ },
]
+ else:
+ breadcrumbs = [
+ {
+ 'url':'/rowers/list-workouts',
+ 'name':'Workouts'
+ },
+ {
+ 'url':reverse(team_comparison_select,kwargs={'teamid':teamid}),
+ 'name': 'Compare Select'
+ },
+
+ ]
return render(request, 'team_compare_select.html',
{'workouts': workouts,
+ 'workout':firstworkout,
'dateform':dateform,
'startdate':startdate,
'enddate':enddate,
@@ -5426,7 +5459,7 @@ def team_comparison_select(request,
# Team comparison
@login_required()
-def multi_compare_view(request):
+def multi_compare_view(request,id=0):
promember=0
if not request.user.is_anonymous():
r = getrower(request.user)
@@ -5542,7 +5575,10 @@ def multi_compare_view(request):
})
else:
- url = reverse(workouts_view)
+ url = reverse(team_comparison_select,
+ kwargs={
+ 'id':id,
+ 'teamid':0})
return HttpResponseRedirect(url)
# Multi Flex Chart with Grouping