datatracker/ietf/mailtrigger/migrations/0007_add_review_mailtriggers.py
Henrik Levkowetz 726fcbf27d Removed all __future__ imports.
- Legacy-Id: 17391
2020-03-05 23:53:42 +00:00

86 lines
3.2 KiB
Python

# Copyright The IETF Trust 2018-2020, All Rights Reserved
# -*- coding: utf-8 -*-
from django.db import migrations
def forward(apps, schema_editor):
MailTrigger = apps.get_model('mailtrigger','MailTrigger')
Recipient = apps.get_model('mailtrigger', 'Recipient')
review_assignment_reviewer = Recipient.objects.create(
slug="review_assignment_reviewer",
desc="The reviewer assigned to a review assignment",
template="{% if not skip_review_reviewer %}{{review_assignment.reviewer.email_address}}{% endif %}",
)
review_assignment_review_req_by = Recipient.objects.create(
slug="review_assignment_review_req_by",
desc="The requester of an assigned review",
template="{% if not skip_review_requested_by %}{{review_assignment.review_request.requested_by.email_address}}{% endif %}",
)
review_req_requested_by = Recipient.objects.create(
slug="review_req_requested_by",
desc="The requester of a review",
template="{% if not skip_review_requested_by %}{{review_req.requested_by.email_address}}{% endif %}",
)
review_req_reviewers = Recipient.objects.create(
slug="review_req_reviewers",
desc="All reviewers assigned to a review request",
template=None,
)
review_secretaries = Recipient.objects.create(
slug="review_secretaries",
desc="The secretaries of the review team of a review request or assignment",
template=None,
)
Recipient.objects.create(
slug="review_reviewer",
desc="A single reviewer",
template="{{reviewer.email_address}}",
)
review_assignment_changed = MailTrigger.objects.create(
slug="review_assignment_changed",
desc="Recipients for a change to a review assignment",
)
review_assignment_changed.to.set([review_assignment_review_req_by, review_assignment_reviewer,
review_secretaries])
review_req_changed = MailTrigger.objects.create(
slug="review_req_changed",
desc="Recipients for a change to a review request",
)
review_req_changed.to.set([review_req_requested_by, review_req_reviewers, review_secretaries])
review_availability_changed = MailTrigger.objects.create(
slug="review_availability_changed",
desc="Recipients for a change to a reviewer's availability",
)
review_availability_changed.to.set(
Recipient.objects.filter(slug__in=['review_reviewer', 'group_secretaries'])
)
def reverse(apps, schema_editor):
MailTrigger = apps.get_model('mailtrigger','MailTrigger')
Recipient = apps.get_model('mailtrigger', 'Recipient')
MailTrigger.objects.filter(slug__in=[
'review_assignment_changed', 'review_req_changed', 'review_availability_changed',
]).delete()
Recipient.objects.filter(slug__in=[
'review_assignment_reviewer', 'review_assignment_review_req_by', 'review_req_requested_by',
'review_req_reviewers', 'review_secretaries', 'review_reviewer',
]).delete()
class Migration(migrations.Migration):
dependencies = [
('mailtrigger', '0006_sub_new_wg_00'),
]
operations = [
migrations.RunPython(forward, reverse)
]