From 11952627f35004b0078b47e07b117aa9e381243e Mon Sep 17 00:00:00 2001 From: Ryan Cross Date: Sat, 16 Jul 2016 12:33:36 +0000 Subject: [PATCH 1/3] Change where interim meeting announcement request email gets sent. Commit ready for merge - Legacy-Id: 11667 --- ietf/meeting/helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ietf/meeting/helpers.py b/ietf/meeting/helpers.py index e73adcae5..437cc0728 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, cc_list) = gather_address_lists('session_requested',group=group,person=requester) + to_email = settings.INTERIM_ANNOUNCE_FROM_EMAIL 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' From b195beb3add7eaf95ac4ddfcaccc144947dbed8d Mon Sep 17 00:00:00 2001 From: Ryan Cross Date: Sat, 16 Jul 2016 15:50:16 +0000 Subject: [PATCH 2/3] A refactor to give secretariat a broader selection of groups to choose from when scheduling non-working group sessions. Commit ready for merge. - Legacy-Id: 11686 --- ietf/secr/meetings/forms.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ietf/secr/meetings/forms.py b/ietf/secr/meetings/forms.py index 9d646e976..8da16e687 100644 --- a/ietf/secr/meetings/forms.py +++ b/ietf/secr/meetings/forms.py @@ -180,7 +180,10 @@ class TimeSlotForm(forms.Form): class NonSessionForm(TimeSlotForm): short = forms.CharField(max_length=32,label='Short Name',help_text='Enter an abbreviated session name (used for material file names)',required=False) type = forms.ModelChoiceField(queryset=TimeSlotTypeName.objects.filter(used=True).exclude(slug__in=('session',)),empty_label=None) - group = forms.ModelChoiceField(queryset=Group.objects.filter(acronym__in=('edu','ietf','iepg','tools','iesg','iab','iaoc')),help_text='Required for Session types: other, plenary',required=False) + group = forms.ModelChoiceField( + queryset=Group.objects.filter(type__in=['ietf','team'],state='active'), + help_text='Required for Session types: other, plenary', + required=False) show_location = forms.BooleanField(required=False) def clean(self): From 3da2d4f67b3f6720ed4532dd24782e4a543abb6d Mon Sep 17 00:00:00 2001 From: Ryan Cross Date: Mon, 18 Jul 2016 08:15:13 +0000 Subject: [PATCH 3/3] 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."""