From 9b4415fe5166590591f16a89663ddefed2e77530 Mon Sep 17 00:00:00 2001 From: Ole Laursen <olau@iola.dk> Date: Mon, 23 Apr 2012 20:14:04 +0000 Subject: [PATCH] Fix problem with direct replyto path in liaison form not using role emails (reported by Stephanie McCammon). - Legacy-Id: 4310 --- ietf/liaisons/formsREDESIGN.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/ietf/liaisons/formsREDESIGN.py b/ietf/liaisons/formsREDESIGN.py index 91a689611..06d999edc 100644 --- a/ietf/liaisons/formsREDESIGN.py +++ b/ietf/liaisons/formsREDESIGN.py @@ -16,7 +16,7 @@ from ietf.liaisons.widgets import (FromWidget, ReadOnlyWidget, ButtonWidget, from ietf.liaisons.models import LiaisonStatement, LiaisonStatementPurposeName from ietf.liaisons.proxy import LiaisonDetailProxy from ietf.group.models import Group -from ietf.person.models import Person +from ietf.person.models import Person, Email from ietf.doc.models import Document @@ -313,6 +313,14 @@ class IncomingLiaisonForm(LiaisonForm): self.fields['from_field'].choices = [('sdo_%s' % i.pk, i.name) for i in sdos.order_by("name")] self.fields['from_field'].widget.submitter = unicode(self.person) + def set_replyto_field(self): + e = Email.objects.filter(person=self.person, role__group__state="active", role__name__in=["liaiman", "auth"]) + if e: + addr = e[0].address + else: + addr = self.person.email_address() + self.fields['replyto'].initial = addr + def set_organization_field(self): self.fields['organization'].choices = self.hm.get_all_incoming_entities() @@ -360,6 +368,14 @@ class OutgoingLiaisonForm(LiaisonForm): self.fields['from_field'].widget.submitter = unicode(self.person) self.fieldsets[0] = ('From', ('from_field', 'replyto', 'approved')) + def set_replyto_field(self): + e = Email.objects.filter(person=self.person, role__group__state="active", role__name__in=["ad", "chair"]) + if e: + addr = e[0].address + else: + addr = self.person.email_address() + self.fields['replyto'].initial = addr + def set_organization_field(self): # If the user is a liaison manager and is nothing more, reduce the To field to his SDOs if not self.hm.get_entities_for_person(self.person) and is_sdo_liaison_manager(self.person):