From 3da2d4f67b3f6720ed4532dd24782e4a543abb6d Mon Sep 17 00:00:00 2001
From: Ryan Cross <rcross@amsl.com>
Date: Mon, 18 Jul 2016 08:15:13 +0000
Subject: [PATCH] Changed send_interim_announcement_request() to use new
 mailtrigger interim_approved.  Commit ready for merge.  - Legacy-Id: 11698

---
 .../migrations/0005_interim_trigger.py        | 43 +++++++++++++++++++
 ietf/meeting/helpers.py                       |  5 ++-
 2 files changed, 46 insertions(+), 2 deletions(-)
 create mode 100644 ietf/mailtrigger/migrations/0005_interim_trigger.py

diff --git a/ietf/mailtrigger/migrations/0005_interim_trigger.py b/ietf/mailtrigger/migrations/0005_interim_trigger.py
new file mode 100644
index 000000000..69c98e43d
--- /dev/null
+++ b/ietf/mailtrigger/migrations/0005_interim_trigger.py
@@ -0,0 +1,43 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+def make_mailtriggers(apps):
+    Recipient = apps.get_model('mailtrigger','Recipient')
+    MailTrigger = apps.get_model('mailtrigger','MailTrigger')
+
+    def mt_factory(slug,desc,to_slugs,cc_slugs=[]):
+
+        # Try to protect ourselves from typos
+        all_slugs = to_slugs[:]
+        all_slugs.extend(cc_slugs)
+        for recipient_slug in all_slugs:
+            try:
+                Recipient.objects.get(slug=recipient_slug)
+            except Recipient.DoesNotExist:
+                print "****Some rule tried to use",recipient_slug
+                raise
+
+        m = MailTrigger.objects.create(slug=slug, desc=desc)
+        m.to = Recipient.objects.filter(slug__in=to_slugs)
+        m.cc = Recipient.objects.filter(slug__in=cc_slugs)
+
+    mt_factory(slug='interim_approved',
+               desc="Recipients when an interim meeting is approved "
+                    "and an announcement needs to be sent",
+               to_slugs=['iesg_secretary'],
+               cc_slugs=[]
+              )
+
+def forward(apps, schema_editor):
+    make_mailtriggers(apps)
+
+
+class Migration(migrations.Migration):
+    dependencies = [
+        ('mailtrigger', '0004_auto_20160516_1659'),
+    ]
+
+    operations = [migrations.RunPython(forward)]
diff --git a/ietf/meeting/helpers.py b/ietf/meeting/helpers.py
index 437cc0728..23c604772 100644
--- a/ietf/meeting/helpers.py
+++ b/ietf/meeting/helpers.py
@@ -567,7 +567,7 @@ def send_interim_announcement_request(meeting):
     interim meeting which includes the link to send the official announcement"""
     group = meeting.session_set.first().group
     requester = meeting.session_set.first().requested_by
-    to_email = settings.INTERIM_ANNOUNCE_FROM_EMAIL
+    (to_email, cc_list) = gather_address_lists('interim_approved')
     from_email = ('"IETF Meeting Session Request Tool"','session_request_developers@ietf.org')
     subject = '{group} - Interim Meeting Approved'.format(group=group.acronym)
     template = 'meeting/interim_announcement_request.txt'
@@ -578,7 +578,8 @@ def send_interim_announcement_request(meeting):
               from_email,
               subject,
               template,
-              context,)
+              context,
+              cc_list)
 
 def send_interim_cancellation_notice(meeting):
     """Sends an email that a scheduled interim meeting has been cancelled."""