From 9bbabd9c692b430d52dd9323691d9a28ea482252 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89lie=20Bouttier?= Date: Sat, 6 Sep 2014 22:47:16 -0700 Subject: [PATCH] improve cancel label/milestone creation behaviour --- templates/tracker/label_edit.html | 2 +- templates/tracker/milestone_edit.html | 2 +- tracker/views.py | 28 +++++++++++++++++++++------ 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/templates/tracker/label_edit.html b/templates/tracker/label_edit.html index 0ee09d8..9976de5 100644 --- a/templates/tracker/label_edit.html +++ b/templates/tracker/label_edit.html @@ -30,7 +30,7 @@ {% csrf_token %} {% buttons %} - Cancel + Cancel {% endbuttons %} diff --git a/templates/tracker/milestone_edit.html b/templates/tracker/milestone_edit.html index 780691f..92c115c 100644 --- a/templates/tracker/milestone_edit.html +++ b/templates/tracker/milestone_edit.html @@ -41,7 +41,7 @@ {% csrf_token %} {% buttons %} - Cancel + Cancel {% endbuttons %} diff --git a/tracker/views.py b/tracker/views.py index 6700c3a..60c0eed 100644 --- a/tracker/views.py +++ b/tracker/views.py @@ -615,6 +615,9 @@ def label_edit(request, project, id=None): label = get_object_or_404(Label, project=project, id=id) else: label = None + issue = request.GET.get('issue') + if issue: + issue = get_object_or_404(Issue, project=project, id=issue) form = LabelForm(request.POST or None, instance=label) @@ -641,17 +644,22 @@ def label_edit(request, project, id=None): label.save() messages.success(request, 'Label added successfully.') - issue = request.GET.get('issue') if issue: - return redirect('add-label-to-issue', project.name, - issue, label.id) + return redirect('add-label-to-issue', + project.name, issue.id, label.id) return redirect('list-label', project.name) + if issue: + cancel = reverse('show-issue', args=[project.name, issue.id]) + else: + cancel = reverse('list-label', args=[project.name]) + c = { 'project': project, 'form': form, 'label': label, + 'cancel': cancel, } return render(request, 'tracker/label_edit.html', c) @@ -705,6 +713,9 @@ def milestone_edit(request, project, name=None): milestone = get_object_or_404(Milestone, project=project, name=name) else: milestone = None + issue = request.GET.get('issue') + if issue: + issue = get_object_or_404(Issue, project=project, id=issue) form = MilestoneForm(request.POST or None, instance=milestone) @@ -740,17 +751,22 @@ def milestone_edit(request, project, name=None): milestone.save() messages.success(request, 'Milestone added successfully.') - issue = request.GET.get('issue') if issue: - return redirect('add-milestone-to-issue', project.name, issue, - milestone.name) + return redirect('add-milestone-to-issue', + project.name, issue.id, milestone.name) return redirect('list-milestone', project.name) + if issue: + cancel = reverse('show-issue', args=[project.name, issue.id]) + else: + cancel = reverse('list-milestone', args=[project.name]) + c = { 'project': project, 'form': form, 'milestone': milestone, + 'cancel': cancel, } return render(request, 'tracker/milestone_edit.html', c)