Esempio n. 1
0
    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)
Esempio n. 2
0
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
Esempio n. 3
0
    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)