From 24b83240e0b9f3b6cb1db0b95ea10cfc509c43ea Mon Sep 17 00:00:00 2001
From: Robert Sparks <rjsparks@nostrum.com>
Date: Sat, 3 Nov 2018 00:16:41 +0000
Subject: [PATCH] Tune the recipients when a teams settings or a reviewer
 indicate ADs should be notified about a review. Commit ready for merge.  -
 Legacy-Id: 15677

---
 ietf/mailtrigger/migrations/0003_add_review_notify_ad.py | 7 ++++++-
 ietf/mailtrigger/models.py                               | 9 +++++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/ietf/mailtrigger/migrations/0003_add_review_notify_ad.py b/ietf/mailtrigger/migrations/0003_add_review_notify_ad.py
index b91588efa..60211ffdc 100644
--- a/ietf/mailtrigger/migrations/0003_add_review_notify_ad.py
+++ b/ietf/mailtrigger/migrations/0003_add_review_notify_ad.py
@@ -13,12 +13,16 @@ def forward(apps, schema_editor):
         desc = "The reviewed document's responsible area director",
         template = '{% if review_req.doc.ad %}{{review_req.doc.ad.email_address}}{% endif %}'
     )
+    Recipient.objects.create(
+        slug = 'review_team_ads',
+        desc = "The ADs of the team reviewing the document"
+    )
 
     review_notify_ad = MailTrigger.objects.create(
         slug = 'review_notify_ad',
         desc = 'Recipients when a team notifies area directors when a review with one of a certain set of results (typically results indicating problem) is submitted',
     )
-    review_notify_ad.to.set(Recipient.objects.filter(slug='review_doc_ad'))
+    review_notify_ad.to.set(Recipient.objects.filter(slug__in=['review_doc_ad','review_team_ads']))
 
 
 def reverse(apps, schema_editor):
@@ -27,6 +31,7 @@ def reverse(apps, schema_editor):
 
     MailTrigger.objects.filter(slug='review_notify_ad').delete()
     Recipient.objects.filter(slug='review_doc_ad').delete()
+    Recipient.objects.filter(slug='review_team_ads').delete()
 
 class Migration(migrations.Migration):
 
diff --git a/ietf/mailtrigger/models.py b/ietf/mailtrigger/models.py
index d990f2004..b1c86213c 100644
--- a/ietf/mailtrigger/models.py
+++ b/ietf/mailtrigger/models.py
@@ -316,3 +316,12 @@ class Recipient(models.Model):
             session = kwargs['session']
             addrs.append(session.requested_by.role_email('chair').address)
         return addrs
+
+    def gather_review_team_ads(self, **kwargs):
+        addrs=[]
+        if 'review_req' in kwargs:
+            review_req = kwargs['review_req']
+            if review_req.team.parent:
+                for role in review_req.team.parent.role_set.filter(name='ad'):
+                    addrs.append(role.email.address)
+        return addrs