From 4ef6cd75435d34512428f2cb10e30eeda6cb2ec0 Mon Sep 17 00:00:00 2001 From: Ole Laursen Date: Thu, 28 Jun 2012 13:58:34 +0000 Subject: [PATCH] Add option to reject review milestone, not only accept it, for ADs - Legacy-Id: 4542 --- ietf/templates/wginfo/edit_milestones.html | 5 ++++- ietf/templates/wginfo/milestone_form.html | 8 +++----- ietf/wginfo/milestones.py | 14 ++++++++++---- ietf/wginfo/tests.py | 2 +- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/ietf/templates/wginfo/edit_milestones.html b/ietf/templates/wginfo/edit_milestones.html index 8667e39ed..a8a17caa7 100644 --- a/ietf/templates/wginfo/edit_milestones.html +++ b/ietf/templates/wginfo/edit_milestones.html @@ -16,7 +16,10 @@ td.due { width: 5em; } .edit-milestone input[type=checkbox] { vertical-align: middle; margin: 0 0.2em 0 0.8em;} .edit-milestone .resolved label { vertical-align: middle; } .edit-milestone .delete label { vertical-align: middle; } -.edit-milestone .accept label { vertical-align: middle; } +.edit-milestone .accept ul { display: inline-block; margin: 0; padding: 0; } +.edit-milestone .accept ul li { list-style: none; display: inline-block; margin: 0; padding: 0; padding-left: 0.4em; } +.edit-milestone .accept ul li label { vertical-align: middle; } +.edit-milestone .accept ul li input { margin: 0; padding: 0; vertical-align: middle; } .edit-milestone .docs td { vertical-align: top; } ul.errorlist { border-width: 0px; padding: 0px; margin: 0px; display: inline-block; } diff --git a/ietf/templates/wginfo/milestone_form.html b/ietf/templates/wginfo/milestone_form.html index f08c898c5..83ddcc82c 100644 --- a/ietf/templates/wginfo/milestone_form.html +++ b/ietf/templates/wginfo/milestone_form.html @@ -34,11 +34,9 @@ {% if form.needs_review %} Review: - This milestone is not public yet, awaiting AD acceptance. - - {% if not needs_review %} - {{ form.accept }} {{ form.accept.label_tag }} - {% endif %} + + This milestone is not active yet, awaiting + AD acceptance{% if needs_review %}.{% else %}: {{ form.accept }}{% endif %} {% endif %} diff --git a/ietf/wginfo/milestones.py b/ietf/wginfo/milestones.py index d8f3a9c11..c281313e5 100644 --- a/ietf/wginfo/milestones.py +++ b/ietf/wginfo/milestones.py @@ -36,7 +36,8 @@ class MilestoneForm(forms.Form): docs = forms.CharField(max_length=10000, required=False) - accept = forms.BooleanField(required=False, initial=False) + accept = forms.ChoiceField(choices=(("accept", "Accept"), ("reject", "Reject and delete"), ("noaction", "No action")), + required=False, initial="noaction", widget=forms.RadioSelect) expanded_for_editing = forms.BooleanField(required=False, initial=False, widget=forms.HiddenInput) @@ -169,11 +170,16 @@ def edit_milestones(request, acronym, milestone_set="current"): changes = ['Changed %s' % named_milestone] - if m.state_id == "review" and not needs_review and c["accept"]: + if m.state_id == "review" and not needs_review and c["accept"] != "noaction": if not history: history = save_milestone_in_history(m) - m.state_id = "active" - changes.append("changed state from review to active") + + if c["accept"] == "accept": + m.state_id = "active" + changes.append("changed state from review to active, accepting new milestone") + elif c["accept"] == "reject": + m.state_id = "deleted" + changes.append("changed state from review to deleted, rejecting new milestone") if c["desc"] != m.desc and not needs_review: diff --git a/ietf/wginfo/tests.py b/ietf/wginfo/tests.py index 04a5a8385..e676dfa41 100644 --- a/ietf/wginfo/tests.py +++ b/ietf/wginfo/tests.py @@ -393,7 +393,7 @@ class MilestoneTestCase(django.test.TestCase): 'm1-due': m1.due.strftime("%Y-%m-%d"), 'm1-resolved': m1.resolved, 'm1-docs': ",".join(m1.docs.values_list("name", flat=True)), - 'm1-accept': "checked", + 'm1-accept': "accept", }) self.assertEquals(r.status_code, 302)