UPD: added event number to email subject.

This commit is contained in:
2018-11-21 14:53:47 +01:00
parent e58bd61947
commit 7cba1e97ef

View File

@@ -16,13 +16,14 @@ class AbstractMail(object):
app_config = apps.get_containing_app_config(__package__) app_config = apps.get_containing_app_config(__package__)
return app_config.settings.email_sender return app_config.settings.email_sender
def _get_subject(self, **kwargs): def _get_subject(self, subject_fmt=None, **kwargs):
s = self._subject if subject_fmt is None:
subject_fmt = self._subject
app_config = apps.get_containing_app_config(__package__) app_config = apps.get_containing_app_config(__package__)
if app_config.settings.email_subject_prefix: if app_config.settings.email_subject_prefix:
s = u'%s %s' % (app_config.settings.email_subject_prefix, s) subject_fmt = u'%s %s' % (app_config.settings.email_subject_prefix, subject_fmt)
s = s.format(**kwargs) subject = subject_fmt.format(**kwargs)
return s return subject
def _get_template(self): def _get_template(self):
if not self._template_name: if not self._template_name:
@@ -64,11 +65,14 @@ class AbstractEventMail(AbstractMail):
self._recipient = recipient self._recipient = recipient
self._event = event self._event = event
def _get_subject(self, **kwargs): def _get_subject(self, subject_fmt=None, **kwargs):
if 'number' not in kwargs: if subject_fmt is None:
kwargs['number'] = self._event.get_number() subject_fmt = self._subject
s = super(AbstractEventMail, self)._get_subject(**kwargs)
return s if self._event.number:
subject_fmt = u'%s: %s' % (self._event.number, subject_fmt)
return super(AbstractEventMail, self)._get_subject(subject_fmt=subject_fmt, **kwargs)
def _get_recipients(self): def _get_recipients(self):
r = u'"{fullname}" <{email}>'.format(fullname=self._recipient.get_full_name(), r = u'"{fullname}" <{email}>'.format(fullname=self._recipient.get_full_name(),
@@ -83,7 +87,7 @@ class AbstractEventMail(AbstractMail):
class EventUpdatedMail(AbstractEventMail): class EventUpdatedMail(AbstractEventMail):
_subject = u'{number}: Veranstaltung geändert' _subject = u'Veranstaltung geändert'
_template_name = 'dav_events/emails/event_updated.txt' _template_name = 'dav_events/emails/event_updated.txt'
def __init__(self, diff=None, editor=None, *args, **kwargs): def __init__(self, diff=None, editor=None, *args, **kwargs):
@@ -99,15 +103,12 @@ class EventUpdatedMail(AbstractEventMail):
class EventSubmittedMail(AbstractEventMail): class EventSubmittedMail(AbstractEventMail):
_subject = u'Veranstaltung eingereicht'
_template_name = 'dav_events/emails/event_submitted.txt' _template_name = 'dav_events/emails/event_submitted.txt'
def _get_subject(self, **kwargs):
s = super(EventSubmittedMail, self)._get_subject(**kwargs)
s += u'Neue Veranstaltung eingereicht'
return s
class EventToAcceptMail(AbstractEventMail): class EventToAcceptMail(AbstractEventMail):
_subject = u'Veranstaltung freigeben'
_template_name = 'dav_events/emails/event_to_accept.txt' _template_name = 'dav_events/emails/event_to_accept.txt'
def __init__(self, accept_action=None, *args, **kwargs): def __init__(self, accept_action=None, *args, **kwargs):
@@ -119,22 +120,14 @@ class EventToAcceptMail(AbstractEventMail):
context['accept_url'] = self._accept_action.get_absolute_url() context['accept_url'] = self._accept_action.get_absolute_url()
return context return context
def _get_subject(self, **kwargs):
s = super(EventToAcceptMail, self)._get_subject(**kwargs)
s += u'Neue Veranstaltung freigeben'
return s
class EventAcceptedMail(AbstractEventMail): class EventAcceptedMail(AbstractEventMail):
_subject = u'Veranstaltung freigegeben'
_template_name = 'dav_events/emails/event_accepted.txt' _template_name = 'dav_events/emails/event_accepted.txt'
def _get_subject(self, **kwargs):
s = super(EventAcceptedMail, self)._get_subject(**kwargs)
s += u'Veranstaltung wurde freigegeben'
return s
class EventToPublishMail(AbstractEventMail): class EventToPublishMail(AbstractEventMail):
_subject = u'Veranstaltung veröffentlichen'
_template_name = 'dav_events/emails/event_to_publish.txt' _template_name = 'dav_events/emails/event_to_publish.txt'
def __init__(self, confirm_publication_action=None, *args, **kwargs): def __init__(self, confirm_publication_action=None, *args, **kwargs):
@@ -146,11 +139,6 @@ class EventToPublishMail(AbstractEventMail):
context['confirm_publication_url'] = self._confirm_publication_action.get_absolute_url() context['confirm_publication_url'] = self._confirm_publication_action.get_absolute_url()
return context return context
def _get_subject(self, **kwargs):
s = super(EventToPublishMail, self)._get_subject(**kwargs)
s += u'Veranstaltung veröffentlichen'
return s
class PasswordSetEmail(AbstractMail): class PasswordSetEmail(AbstractMail):
_subject = u'Zugangsdaten' _subject = u'Zugangsdaten'