def add_score(request, event_id, team_id, hole_id): event = Event.objects.filter(team__users=request.user, id=event_id)[0] team = Team.objects.get(event=event, id=team_id) if can_edit_team_score(request, team): hole = Hole.objects.get(id=hole_id, course=event.course) score = Score.objects.create(team=team, hole=hole, score=0) return redirect(reverse('edit-score', args=[event.id, team.id, score.id])) else: return redirect(reverse('not-allowed'))
def edit_score(request, event_id, team_id, score_id): event = Event.objects.filter(team__users=request.user, id=event_id)[0] team = Team.objects.get(event=event, id=team_id) if can_edit_team_score(request, team): score = Score.objects.get(team=team, id=score_id) if request.method == 'POST': form = EditScoreForm(request.POST, instance=score) if form.is_valid(): form.save() messages.info(request, 'Saved') return redirect(reverse('scores', args=[event.id, team.id])) else: form = EditScoreForm(instance=score) return render(request, 'edit-score.html', {'score': score, 'event': event, 'team': team, 'form': form}) else: return redirect(reverse('not-allowed'))