bug fixes for bulk actions
This commit is contained in:
@@ -3600,6 +3600,8 @@ class Workout(models.Model):
|
|||||||
)
|
)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
stri = self.name
|
stri = self.name
|
||||||
|
except AttributeError:
|
||||||
|
return "No workout"
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
stri = u'{d} {n} {dist}m {duration} {workouttype} {boattype} {ownerfirst} {ownerlast}'.format(
|
stri = u'{d} {n} {dist}m {duration} {workouttype} {boattype} {ownerfirst} {ownerlast}'.format(
|
||||||
|
|||||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
@@ -2039,14 +2039,17 @@ def workouts_setrpe_view(request,userid=0):
|
|||||||
@login_required()
|
@login_required()
|
||||||
def workouts_bulk_actions(request):
|
def workouts_bulk_actions(request):
|
||||||
r = getrower(request.user)
|
r = getrower(request.user)
|
||||||
action = request.session['action']
|
action = request.session.get('action','export')
|
||||||
workoutids = request.session['ids']
|
workoutids = request.session.get('ids',[])
|
||||||
workouts = []
|
workouts = []
|
||||||
|
exportchoice = 'strava'
|
||||||
try:
|
try:
|
||||||
for encid in workoutids:
|
for encid in workoutids:
|
||||||
w = get_workout_by_opaqueid(request, encid)
|
w = get_workout_by_opaqueid(request, encid)
|
||||||
if w.user == r:
|
if w.user == r:
|
||||||
workouts.append(w)
|
workouts.append(w)
|
||||||
|
else:
|
||||||
|
messages.error(request,'Bulk actions are not accessible to coaches')
|
||||||
except KeyError:
|
except KeyError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@@ -2055,6 +2058,9 @@ def workouts_bulk_actions(request):
|
|||||||
form = WorkoutMultipleCompareForm(request.POST)
|
form = WorkoutMultipleCompareForm(request.POST)
|
||||||
if form.is_valid() and actionform.is_valid():
|
if form.is_valid() and actionform.is_valid():
|
||||||
workouts = form.cleaned_data['workouts']
|
workouts = form.cleaned_data['workouts']
|
||||||
|
if len(workouts) == 0:
|
||||||
|
url = reverse('workouts_view')
|
||||||
|
return HttpResponseRedirect(url)
|
||||||
action = actionform.cleaned_data['action']
|
action = actionform.cleaned_data['action']
|
||||||
if action == 'remove':
|
if action == 'remove':
|
||||||
for w in workouts:
|
for w in workouts:
|
||||||
@@ -2075,7 +2081,10 @@ def workouts_bulk_actions(request):
|
|||||||
destination=destination))
|
destination=destination))
|
||||||
url = reverse('workouts_view')
|
url = reverse('workouts_view')
|
||||||
return HttpResponseRedirect(url)
|
return HttpResponseRedirect(url)
|
||||||
|
else:
|
||||||
|
if len(workouts) == 0:
|
||||||
|
url = reverse(workouts_view)
|
||||||
|
return HttpResponseRedirect(url)
|
||||||
else:
|
else:
|
||||||
exportchoice = ExportChoices()
|
exportchoice = ExportChoices()
|
||||||
actionform = WorkoutBulkActions()
|
actionform = WorkoutBulkActions()
|
||||||
@@ -2084,7 +2093,6 @@ def workouts_bulk_actions(request):
|
|||||||
form.fields["workouts"].queryset = Workout.objects.filter(id__in=[w.id for w in workouts])
|
form.fields["workouts"].queryset = Workout.objects.filter(id__in=[w.id for w in workouts])
|
||||||
form.fields["workouts"].initial = workouts
|
form.fields["workouts"].initial = workouts
|
||||||
|
|
||||||
|
|
||||||
return render(request,'workout_bulk_actions.html',
|
return render(request,'workout_bulk_actions.html',
|
||||||
{'action':action,
|
{'action':action,
|
||||||
'exportchoice':exportchoice,
|
'exportchoice':exportchoice,
|
||||||
|
|||||||
Reference in New Issue
Block a user