def __init__(self, recipient, html_template, text_template=None, subject='', from_email=None, subject_template=None, extra_context={}, language=None, attachments={}): self.recipient = recipient if not email_settings.USE_DEBUG_EMAIL \ else email_settings.DEBUG_EMAIL_ADDRESS self.language = language if language else translation.get_language() self.attachments = attachments self.from_email = from_email with switch_language(self.language): self.context = { 'site': Site.objects.get_current(), } self.context.update(extra_context) self.subject = self._render_template(subject_template).strip() if subject_template \ else force_text(subject) self.html_message = self._render_template(html_template) self.text_message = self._render_template(text_template) if text_template \ else html2text.html2text(self.html_message)
def trans_current_url(context, langcode): """ Returns the current URL translated in the passed language. """ request = context.get('request') # Reverses the current URL in the considered language resolver_match = request.resolver_match args = resolver_match.args kwargs = resolver_match.kwargs.copy() with switch_language(langcode): i18n_url = reverse( ':'.join([resolver_match.namespace, resolver_match.url_name]), args=args, kwargs=kwargs) return i18n_url
def __init__( self, recipient, html_template, text_template=None, subject='', from_email=None, subject_template=None, extra_context={}, language=None, attachments={}): self.recipient = recipient if not email_settings.USE_DEBUG_EMAIL \ else email_settings.DEBUG_EMAIL_ADDRESS self.language = language if language else translation.get_language() self.attachments = attachments self.from_email = from_email with switch_language(self.language): self.context = { 'site': Site.objects.get_current(), } self.context.update(extra_context) self.subject = self._render_template(subject_template).strip() if subject_template \ else force_text(subject) self.html_message = self._render_template(html_template) self.text_message = self._render_template(text_template) if text_template \ else html2text.html2text(self.html_message)