-{% load i18n extra_tags email_tags %}\r
-\r
-{% declare %}\r
- prefix = settings.EMAIL_SUBJECT_PREFIX\r
- app_name = settings.APP_SHORT_NAME\r
- question_author = question.author.username\r
- app_url = settings.APP_URL\r
- question_url = question.get_absolute_url()\r
- question_title = question.title\r
- question_tags = question.tagnames\r
-{% enddeclare %}\r
-\r
-{% email %}\r
- {% subject %}{% blocktrans %}{{ prefix }} New question on {{ app_name }}{% endblocktrans %}{% endsubject %}\r
-\r
- {% htmlcontent notifications/base.html %}\r
- <p style="{{ p_style }}">\r
- {% blocktrans %}\r
- {{ question_author }} has just posted a new question on {{ app_name }}, with title\r
- <a style="{{ a_style }}" href="{{ app_url }}{{ question_url }}">{{ question_title }}</a> and tagged <em>{{ question_tags }}</em>:\r
- {% endblocktrans %}\r
- </p>\r
-\r
- <blockquote>\r
- {{ question.html|safe }}\r
- </blockquote>\r
-\r
- <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p> \r
- {% endhtmlcontent %}\r
-\r
-{% textcontent notifications/base_text.html %}\r
- {% blocktrans %}\r
- {{ question_author }} has just posted a new question on {{ app_name }}, with title\r
- "{{ question_title }}" and tagged {{ question_tags }}:\r
- {% endblocktrans %}\r
-\r
- {{ question.body|safe }}\r
-\r
- {% trans "Don't forget to come over and cast your vote." %}\r
-{% endtextcontent %}\r
-\r
-{% endemail %}\r
-\r
+{% load i18n extra_tags email_tags %}
+
+{% declare %}
+ prefix = html.mark_safe(smart_str(settings.EMAIL_SUBJECT_PREFIX))
+ app_name = smart_str(settings.APP_SHORT_NAME)
+ safe_app_name = html.mark_safe(smart_str(settings.APP_SHORT_NAME))
+ question_author = html.mark_safe(smart_str(question.author.username))
+ question_url = smart_str(settings.APP_URL + question.get_absolute_url())
+ question_title = html.mark_safe(smart_str(question.title))
+ question_tags = html.mark_safe(smart_str(question.tagnames))
+ safe_body = html.html2text(smart_str(question.html))
+ author_link = html.objlink(smart_str(question.author), style=settings.EMAIL_ANCHOR_STYLE)
+ question_link = html.objlink(smart_str(question), style=settings.EMAIL_ANCHOR_STYLE)
+ tag_links = html.mark_safe(smart_str(" ".join([html.objlink(t, style=settings.EMAIL_ANCHOR_STYLE) for t in question.tags.all()])))
+{% enddeclare %}
+
+{% email %}
+ {% subject %}{% blocktrans %}{{ prefix }} New question: {{ question_title }} on {{ safe_app_name }}{% endblocktrans %}{% endsubject %}
+
+ {% htmlcontent notifications/base.html %}
+ <p style="{{ p_style }}">
+ {% blocktrans %}
+ {{ author_link }} has just posted a new question on {{ app_name }}, entitled
+ {{ question_link }}
+ and tagged "<em>{{ tag_links }}</em>". Here's what it says:
+ {% endblocktrans %}
+ </p>
+
+ <blockquote>
+ {{ question.html|safe }}
+ </blockquote>
+
+ <p style="{{ p_style }}">{% trans "Don't forget to come over and cast your vote." %}</p>
+ {% endhtmlcontent %}
+
+{% textcontent notifications/base_text.html %}
+{% blocktrans %}
+{{ question_author }} has just posted a new question on {{ safe_app_name }}, entitled
+"{{ question_title }}" and tagged {{ question_tags }}:
+{% endblocktrans %}
+{{ safe_body }}
+
+{% trans "Don't forget to come over and cast your vote." %}
+{% endtextcontent %}
+
+{% endemail %}
+