From 7cba1e97ef7e5ab0e872be848a3dc9923caf2c01 Mon Sep 17 00:00:00 2001 From: Jens Kleineheismann Date: Wed, 21 Nov 2018 14:53:47 +0100 Subject: [PATCH] UPD: added event number to email subject. --- dav_events/emails.py | 50 +++++++++++++++++--------------------------- 1 file changed, 19 insertions(+), 31 deletions(-) diff --git a/dav_events/emails.py b/dav_events/emails.py index 5d0fceb..f18d5cb 100644 --- a/dav_events/emails.py +++ b/dav_events/emails.py @@ -16,13 +16,14 @@ class AbstractMail(object): app_config = apps.get_containing_app_config(__package__) return app_config.settings.email_sender - def _get_subject(self, **kwargs): - s = self._subject + def _get_subject(self, subject_fmt=None, **kwargs): + if subject_fmt is None: + subject_fmt = self._subject app_config = apps.get_containing_app_config(__package__) if app_config.settings.email_subject_prefix: - s = u'%s %s' % (app_config.settings.email_subject_prefix, s) - s = s.format(**kwargs) - return s + subject_fmt = u'%s %s' % (app_config.settings.email_subject_prefix, subject_fmt) + subject = subject_fmt.format(**kwargs) + return subject def _get_template(self): if not self._template_name: @@ -64,11 +65,14 @@ class AbstractEventMail(AbstractMail): self._recipient = recipient self._event = event - def _get_subject(self, **kwargs): - if 'number' not in kwargs: - kwargs['number'] = self._event.get_number() - s = super(AbstractEventMail, self)._get_subject(**kwargs) - return s + def _get_subject(self, subject_fmt=None, **kwargs): + if subject_fmt is None: + subject_fmt = self._subject + + 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): r = u'"{fullname}" <{email}>'.format(fullname=self._recipient.get_full_name(), @@ -83,7 +87,7 @@ class AbstractEventMail(AbstractMail): class EventUpdatedMail(AbstractEventMail): - _subject = u'{number}: Veranstaltung geändert' + _subject = u'Veranstaltung geändert' _template_name = 'dav_events/emails/event_updated.txt' def __init__(self, diff=None, editor=None, *args, **kwargs): @@ -99,15 +103,12 @@ class EventUpdatedMail(AbstractEventMail): class EventSubmittedMail(AbstractEventMail): + _subject = u'Veranstaltung eingereicht' _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): + _subject = u'Veranstaltung freigeben' _template_name = 'dav_events/emails/event_to_accept.txt' def __init__(self, accept_action=None, *args, **kwargs): @@ -119,22 +120,14 @@ class EventToAcceptMail(AbstractEventMail): context['accept_url'] = self._accept_action.get_absolute_url() return context - def _get_subject(self, **kwargs): - s = super(EventToAcceptMail, self)._get_subject(**kwargs) - s += u'Neue Veranstaltung freigeben' - return s - class EventAcceptedMail(AbstractEventMail): + _subject = u'Veranstaltung freigegeben' _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): + _subject = u'Veranstaltung veröffentlichen' _template_name = 'dav_events/emails/event_to_publish.txt' 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() return context - def _get_subject(self, **kwargs): - s = super(EventToPublishMail, self)._get_subject(**kwargs) - s += u'Veranstaltung veröffentlichen' - return s - class PasswordSetEmail(AbstractMail): _subject = u'Zugangsdaten'