Merged in [15152] from rjsparks@nostrum.com:
Send email when the responsible AD for a conflict review is changed. Include the stream manager and stream steering group when the responsible AD changes or when the telechat date changes. Fixes #2497.
- Legacy-Id: 15156
Note: SVN reference [15152] has been migrated to Git commit 6b779e9d4c
This commit is contained in:
commit
1420c79ab1
|
@ -88,6 +88,22 @@ def change_state(request, name, option=None):
|
|||
help_url=reverse('ietf.doc.views_help.state_help', kwargs=dict(type="conflict-review")),
|
||||
))
|
||||
|
||||
def send_conflict_review_ad_changed_email(request, review, event):
|
||||
addrs = gather_address_lists('conflrev_ad_changed', doc=review).as_strings(compact=False)
|
||||
msg = render_to_string("doc/conflict_review/changed_ad.txt",
|
||||
dict(frm = settings.DEFAULT_FROM_EMAIL,
|
||||
to = addrs.to,
|
||||
cc = addrs.cc,
|
||||
by = request.user.person,
|
||||
event = event,
|
||||
review = review,
|
||||
reviewed_doc = review.relateddocument_set.get(relationship__slug='conflrev').target.document,
|
||||
review_url = settings.IDTRACKER_BASE_URL+review.get_absolute_url(),
|
||||
)
|
||||
)
|
||||
send_mail_preformatted(request,msg)
|
||||
|
||||
|
||||
def send_conflict_review_started_email(request, review):
|
||||
addrs = gather_address_lists('conflrev_requested',doc=review).as_strings(compact=False)
|
||||
msg = render_to_string("doc/conflict_review/review_started.txt",
|
||||
|
@ -234,6 +250,7 @@ def edit_ad(request, name):
|
|||
c.save()
|
||||
|
||||
review.save_with_history([c])
|
||||
send_conflict_review_ad_changed_email(request, review, c)
|
||||
|
||||
return redirect('ietf.doc.views_doc.document_main', name=review.name)
|
||||
|
||||
|
|
39
ietf/mailtrigger/migrations/0002_conflrev_changes.py
Normal file
39
ietf/mailtrigger/migrations/0002_conflrev_changes.py
Normal file
|
@ -0,0 +1,39 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.13 on 2018-05-21 12:07
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
def forward(apps, schema_editor):
|
||||
MailTrigger = apps.get_model('mailtrigger','MailTrigger')
|
||||
Recipient = apps.get_model('mailtrigger', 'Recipient')
|
||||
|
||||
conflrev_ad_changed = MailTrigger.objects.create(
|
||||
slug = 'conflrev_ad_changed',
|
||||
desc = 'Recipients when the responsible AD for a conflict review is changed',
|
||||
)
|
||||
conflrev_ad_changed.to.set(Recipient.objects.filter(slug='iesg-secretary'))
|
||||
conflrev_ad_changed.cc.set(Recipient.objects.filter(slug__in=[
|
||||
'conflict_review_steering_group',
|
||||
'conflict_review_stream_manager',
|
||||
'doc_affecteddoc_authors',
|
||||
'doc_affecteddoc_group_chairs',
|
||||
'doc_affecteddoc_notify',
|
||||
'doc_notify',
|
||||
'iesg',
|
||||
]))
|
||||
|
||||
|
||||
def reverse(apps, schema_editor):
|
||||
MailTrigger = apps.get_model('mailtrigger','MailTrigger')
|
||||
MailTrigger.objects.filter(slug='conflrev_ad_changed').delete()
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('mailtrigger', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(forward, reverse)
|
||||
]
|
|
@ -2438,7 +2438,8 @@
|
|||
"cc": [],
|
||||
"desc": "Recipients when a ballot is issued",
|
||||
"to": [
|
||||
"iesg"
|
||||
"iesg",
|
||||
"iesg_secretary"
|
||||
]
|
||||
},
|
||||
"model": "mailtrigger.mailtrigger",
|
||||
|
@ -2523,6 +2524,23 @@
|
|||
"model": "mailtrigger.mailtrigger",
|
||||
"pk": "charter_state_edit_admin_needed"
|
||||
},
|
||||
{
|
||||
"fields": {
|
||||
"cc": [
|
||||
"conflict_review_steering_group",
|
||||
"conflict_review_stream_manager",
|
||||
"doc_affecteddoc_authors",
|
||||
"doc_affecteddoc_group_chairs",
|
||||
"doc_affecteddoc_notify",
|
||||
"doc_notify",
|
||||
"iesg"
|
||||
],
|
||||
"desc": "Recipients when the responsible AD for a conflict review is changed",
|
||||
"to": []
|
||||
},
|
||||
"model": "mailtrigger.mailtrigger",
|
||||
"pk": "conflrev_ad_changed"
|
||||
},
|
||||
{
|
||||
"fields": {
|
||||
"cc": [
|
||||
|
@ -10072,7 +10090,7 @@
|
|||
"fields": {
|
||||
"command": "xym",
|
||||
"switch": "--version",
|
||||
"time": "2018-05-03T00:07:54.849",
|
||||
"time": "2018-05-21T00:08:52.105",
|
||||
"used": true,
|
||||
"version": "xym 0.4"
|
||||
},
|
||||
|
@ -10083,7 +10101,7 @@
|
|||
"fields": {
|
||||
"command": "pyang",
|
||||
"switch": "--version",
|
||||
"time": "2018-05-03T00:07:55.605",
|
||||
"time": "2018-05-21T00:08:53.585",
|
||||
"used": true,
|
||||
"version": "pyang 1.7.5"
|
||||
},
|
||||
|
@ -10094,9 +10112,9 @@
|
|||
"fields": {
|
||||
"command": "yanglint",
|
||||
"switch": "--version",
|
||||
"time": "2018-05-03T00:07:55.737",
|
||||
"time": "2018-05-21T00:08:53.827",
|
||||
"used": true,
|
||||
"version": "yanglint 0.14.78"
|
||||
"version": "yanglint 0.14.80"
|
||||
},
|
||||
"model": "utils.versioninfo",
|
||||
"pk": 3
|
||||
|
@ -10105,7 +10123,7 @@
|
|||
"fields": {
|
||||
"command": "xml2rfc",
|
||||
"switch": "--version",
|
||||
"time": "2018-05-03T00:07:56.594",
|
||||
"time": "2018-05-21T00:08:54.971",
|
||||
"used": true,
|
||||
"version": "xml2rfc 2.9.6"
|
||||
},
|
||||
|
|
14
ietf/templates/doc/conflict_review/changed_ad.txt
Normal file
14
ietf/templates/doc/conflict_review/changed_ad.txt
Normal file
|
@ -0,0 +1,14 @@
|
|||
{% load mail_filters %}{% autoescape off %}To: {{to}}{% if cc %}
|
||||
Cc: {{cc}}
|
||||
{% endif %}From: {{ frm }}
|
||||
Subject: Conflict Review AD changed for {{reviewed_doc.name}}
|
||||
|
||||
{{ by.name }} has set the responsible AD for the conflict review of:
|
||||
{{ reviewed_doc.name }}
|
||||
{{ reviewed_doc.title }}
|
||||
|
||||
{{event.desc}}
|
||||
|
||||
The conflict review is being tracked at <{{ review_url }}>
|
||||
|
||||
{% endautoescape%}
|
Loading…
Reference in a new issue