task page: delete mock results
[qcg-portal.git] / qcg / templatetags / qcg_utils.py
index a1b6b52..e176eb3 100644 (file)
@@ -1,8 +1,9 @@
 from datetime import datetime, timedelta
+from xml.dom import minidom
 
 from django import template
 from django.conf import settings
-from django.utils.html import format_html, format_html_join
+from django.utils.html import format_html, format_html_join, conditional_escape
 from django.utils.timesince import timesince
 from django.utils.timezone import now
 
@@ -40,3 +41,9 @@ def get_params_as_hidden(context, *params):
 def bootstrap_checkbox(field, label_class=settings.BOOTSTRAP3['horizontal_label_class'],
                        field_class=settings.BOOTSTRAP3['horizontal_field_class']):
     return {'field': field, 'label_class': label_class, 'field_class': field_class}
+
+
+@register.filter(needs_autoescape=True)
+def format_xml(string, autoescape=None):
+    esc = conditional_escape if autoescape else lambda x: x
+    return esc(minidom.parseString(string).toprettyxml(indent='    '))