|
5 | 5 | import datetime |
6 | 6 |
|
7 | 7 | from django.conf import settings |
8 | | -from django.db.models import Q |
9 | 8 | from django.db.models.query import EmptyQuerySet |
10 | 9 | from django.forms import ValidationError |
11 | 10 | from django.utils.html import strip_tags, escape |
12 | 11 |
|
13 | 12 | from ietf.doc.models import Document, DocHistory, State |
14 | 13 | from ietf.doc.models import DocAlias, RelatedDocument, BallotType, DocReminder |
15 | 14 | from ietf.doc.models import DocEvent, BallotDocEvent, NewRevisionDocEvent, StateDocEvent |
16 | | -from ietf.doc.models import save_document_in_history, STATUSCHANGE_RELATIONS |
| 15 | +from ietf.doc.models import save_document_in_history |
17 | 16 | from ietf.name.models import DocReminderTypeName, DocRelationshipName |
18 | 17 | from ietf.group.models import Role |
19 | | -from ietf.person.models import Email |
20 | 18 | from ietf.ietfauth.utils import has_role |
21 | 19 | from ietf.utils import draft, markup_txt |
22 | 20 | from ietf.utils.mail import send_mail |
@@ -543,41 +541,9 @@ def check_common_doc_name_rules(name): |
543 | 541 | raise ValidationError(errors) |
544 | 542 |
|
545 | 543 | def get_initial_notify(doc,extra=None): |
546 | | - # set change state notice to something sensible |
| 544 | + # With the mailtoken based changes, a document's notify should start empty |
547 | 545 | receivers = [] |
548 | 546 |
|
549 | | - if doc.type.slug=='draft': |
550 | | - if doc.group.type_id in ("individ", "area"): |
551 | | - for a in doc.authors.all(): |
552 | | - receivers.append(a.address) |
553 | | - else: |
554 | | - receivers.append("%s-chairs@%s" % (doc.group.acronym, settings.DRAFT_ALIAS_DOMAIN)) |
555 | | - for editor in Email.objects.filter(role__name="editor", role__group=doc.group): |
556 | | - receivers.append(editor.address) |
557 | | - |
558 | | - receivers.append("%s@%s" % (doc.name, settings.DRAFT_ALIAS_DOMAIN)) |
559 | | - receivers.append("%s.ad@%s" % (doc.name, settings.DRAFT_ALIAS_DOMAIN)) |
560 | | - receivers.append("%s.shepherd@%s" % (doc.name, settings.DRAFT_ALIAS_DOMAIN)) |
561 | | - |
562 | | - elif doc.type.slug=='charter': |
563 | | - receivers.extend([role.person.formatted_email() for role in doc.group.role_set.filter(name__slug__in=['ad','chair','secr','techadv'])]) |
564 | | - |
565 | | - else: |
566 | | - pass |
567 | | - |
568 | | - for relation in doc.relateddocument_set.filter(Q(relationship='conflrev')|Q(relationship__in=STATUSCHANGE_RELATIONS)): |
569 | | - if relation.relationship.slug=='conflrev': |
570 | | - doc_to_review = relation.target.document |
571 | | - receivers.extend([x.person.formatted_email() for x in Role.objects.filter(group__acronym=doc_to_review.stream.slug,name='chair')]) |
572 | | - receivers.append("%s@%s" % (doc_to_review.name, settings.DRAFT_ALIAS_DOMAIN)) |
573 | | - elif relation.relationship.slug in STATUSCHANGE_RELATIONS: |
574 | | - affected_doc = relation.target.document |
575 | | - if affected_doc.notify: |
576 | | - receivers.extend(affected_doc.notify.split(',')) |
577 | | - |
578 | | - if doc.shepherd: |
579 | | - receivers.append(doc.shepherd.email_address()) |
580 | | - |
581 | 547 | if extra: |
582 | 548 | if isinstance(extra,basestring): |
583 | 549 | extra = extra.split(', ') |
|
0 commit comments