Improve default subject logic for importer warning emails
This commit is contained in:
parent
e2b3e91ee5
commit
ef92bec06e
|
@ -157,10 +157,16 @@ class ImporterEmail(Email):
|
|||
def get_handler(self, config):
|
||||
return load_object(self.handler_spec)(config)
|
||||
|
||||
def get_default_subject(self):
|
||||
def get_default_subject(self, **data):
|
||||
host_title = data.get('host_title')
|
||||
local_title = data.get('local_title')
|
||||
if not (host_title and local_title):
|
||||
handler = self.get_handler(self.config)
|
||||
return "Changes for {} -> {}".format(
|
||||
handler.host_title, handler.local_title)
|
||||
if not host_title:
|
||||
host_title = handler.host_title
|
||||
if not local_title:
|
||||
local_title = handler.local_title
|
||||
return "Changes for {} -> {}".format(host_title, local_title)
|
||||
|
||||
def sample_data(self, request):
|
||||
handler = self.get_handler(request.rattail_config)
|
||||
|
|
|
@ -396,10 +396,10 @@ class Email(object):
|
|||
prefix = "[STAGE] {}".format(prefix)
|
||||
return prefix
|
||||
|
||||
def get_default_subject(self):
|
||||
def get_default_subject(self, **data):
|
||||
return self.default_subject
|
||||
|
||||
def get_subject_template(self):
|
||||
def get_subject_template(self, **data):
|
||||
"""
|
||||
Returns the template to be used to build the subject.
|
||||
"""
|
||||
|
@ -409,7 +409,7 @@ class Email(object):
|
|||
return template
|
||||
|
||||
# or if this email defines a custom default, use that
|
||||
default = self.get_default_subject()
|
||||
default = self.get_default_subject(**data)
|
||||
if default != self.universal_subject:
|
||||
return default
|
||||
|
||||
|
@ -425,7 +425,7 @@ class Email(object):
|
|||
:rtype: str
|
||||
"""
|
||||
if template is UNSPECIFIED:
|
||||
template = self.get_subject_template()
|
||||
template = self.get_subject_template(**data)
|
||||
if template and render:
|
||||
return Template(template).render(**data)
|
||||
return template
|
||||
|
|
Loading…
Reference in a new issue