From 8ff8056581426e4265beac2ce18e7fc45f82cf31 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 4 Mar 2014 18:22:29 +0000 Subject: [PATCH] Merged [7383] from jmh@joelhalpern.com: fixes ticket #924 Changes counting logic in ballots to use actual number of ADs. Causes ballot email to use utility to generate requirements text - Legacy-Id: 7404 Note: SVN reference [7383] has been migrated to Git commit 271c48c9c47bf63bee2289fad9224b624c388fba --- ietf/doc/mails.py | 2 ++ ietf/doc/utils.py | 4 +++- ietf/templates/doc/mail/issue_ballot_mail.txt | 3 +-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ietf/doc/mails.py b/ietf/doc/mails.py index 165895b45..165d2d120 100644 --- a/ietf/doc/mails.py +++ b/ietf/doc/mails.py @@ -12,6 +12,7 @@ from ietf.ipr.search import iprs_from_docs, related_docs from ietf.doc.models import WriteupDocEvent, BallotPositionDocEvent, LastCallDocEvent, DocAlias, ConsensusDocEvent, DocTagName from ietf.person.models import Person from ietf.group.models import Group, Role +from ietf.doc.utils import needed_ballot_positions def email_state_changed(request, doc, text): to = [x.strip() for x in doc.notify.replace(';', ',').split(',')] @@ -373,6 +374,7 @@ def generate_issue_ballot_mail(request, doc, ballot): last_call_expires=last_call_expires, approval_text=approval_text, ballot_writeup=ballot_writeup, + approvalneeds=needed_ballot_positions(doc, positions), ) ) diff --git a/ietf/doc/utils.py b/ietf/doc/utils.py index 4fda80615..235ff455b 100644 --- a/ietf/doc/utils.py +++ b/ietf/doc/utils.py @@ -79,7 +79,9 @@ def needed_ballot_positions(doc, active_positions): if doc.type_id == "draft" and doc.intended_std_level_id in ("bcp", "ps", "ds", "std"): # For standards-track, need positions from 2/3 of the # non-recused current IESG. - needed = int(math.ceil((len(active_positions) - len(recuse)) * 2.0/3.0)) + active = len(Person.objects.filter(role__name="ad", + role__group__state="active").distinct()) + needed = int(math.ceil((active - len(recuse)) * 2.0/3.0)) else: if len(yes) < 1: return " ".join(answer) diff --git a/ietf/templates/doc/mail/issue_ballot_mail.txt b/ietf/templates/doc/mail/issue_ballot_mail.txt index bf3c662b6..224e4d7a5 100644 --- a/ietf/templates/doc/mail/issue_ballot_mail.txt +++ b/ietf/templates/doc/mail/issue_ballot_mail.txt @@ -17,8 +17,7 @@ Subject: Evaluation: {{ doc.file_tag }} to {{ doc|std_level_prompt }} {% for fmt in inactive_ad_positions %}{{ fmt }} {% endfor %}{% endif %} -"Yes" or "No-Objection" positions from 2/3 of non-recused ADs, -with no "Discuss" positions, are needed for approval. +{{ approvalneeds }} DISCUSSES AND COMMENTS ======================