Changes to unapproved milestones (e.g. attaching a draft) will not trigger a mail to the WG. Fixes #1818. Commit ready for merge.

- Legacy-Id: 10346
This commit is contained in:
Suresh Krishnan 2015-10-31 08:42:37 +00:00
parent 0b829e6ef2
commit e454031b47
2 changed files with 6 additions and 4 deletions

View file

@ -32,7 +32,7 @@ def email_personnel_change(request, group, text, changed_personnel):
send_mail_text(request, to, None, full_subject, text, cc=cc)
def email_milestones_changed(request, group, changes):
def email_milestones_changed(request, group, changes, states):
def wrap_up_email(addrs, text):
subject = u"Milestones changed for %s %s" % (group.acronym, group.type.name)
@ -52,9 +52,8 @@ def email_milestones_changed(request, group, changes):
# then send only the approved milestones to those who shouldn't be
# bothered with milestones pending approval
review_re = re.compile("Added .* for review, due")
addrs = gather_address_lists('group_approved_milestones_edited',group=group)
msg = u"\n\n".join(c + "." for c in changes if not review_re.match(c))
msg = u"\n\n".join(c + "." for c,s in zip(changes,states) if not s == "review")
if (addrs.to or addrs.cc) and msg:
wrap_up_email(addrs, msg)

View file

@ -276,6 +276,7 @@ def edit_milestones(request, acronym, group_type=None, milestone_set="current"):
set_attributes_from_form(f, f.milestone)
elif action == "save" and not form_errors:
changes = []
states = []
for f in forms:
change = save_milestone_form(f)
@ -290,9 +291,11 @@ def edit_milestones(request, acronym, group_type=None, milestone_set="current"):
by=request.user.person, desc=change, milestone=f.milestone)
changes.append(change)
states.append(f.milestone.state_id)
if milestone_set == "current":
email_milestones_changed(request, group, changes)
email_milestones_changed(request, group, changes, states)
if milestone_set == "charter":
return redirect('doc_view', name=group.charter.canonical_name())