diff --git a/secretary.py b/secretary.py
index ffad3d5..2a21714 100644
--- a/secretary.py
+++ b/secretary.py
@@ -29,7 +29,6 @@ import re
import sys
import logging
import zipfile
-import jinja2
from os import path
from mimetypes import guess_type, guess_extension
from uuid import uuid4
@@ -135,27 +134,18 @@ class Renderer(object):
self.environment = environment
else:
self.environment = Environment(undefined=UndefinedSilently,
- autoescape=True,
- finalize=self.finalize_value)
+ autoescape=True)
# Register filters
self.environment.filters['pad'] = pad_string
self.environment.filters['markdown'] = self.markdown_filter
self.environment.filters['image'] = self.image_filter
- self.environment.globals['SafeValue'] = jinja2.Markup
+ self.environment.globals['SafeValue'] = Markup
self.media_path = kwargs.pop('media_path', '')
self.media_callback = self.fs_loader
self._compile_tags_expressions()
- @jinja2.evalcontextfilter
- def finalize_value(self, value, *args):
- """Escapes variables values."""
- if isinstance(value, Markup):
- return value
-
- return Markup(self.get_escaped_var_value(value))
-
def media_loader(self, callback):
"""This sets the the media loader. A user defined function which
loads media. The function should take a template value, optionals
@@ -449,21 +439,6 @@ class Renderer(object):
return xml_text
- @staticmethod
- def get_escaped_var_value(value):
- """
- Encodes XML reserved chars in value (eg. &, <, >) and also replaces
- the control chars \n and \t control chars to their ODF counterparts.
- """
- value = Markup.escape(value)
- return (
- value.replace('\n', Markup(''))
- .replace('\t', Markup(''))
- .replace('\x0b', '')
- .replace('\x0c', '')
- )
-
-
def add_media_to_archive(self, media, mime, name=''):
"""
Adds to "Pictures" archive folder the file in `media` and register
diff --git a/test_secretary.py b/test_secretary.py
index d3883e9..5be7722 100644
--- a/test_secretary.py
+++ b/test_secretary.py
@@ -63,24 +63,3 @@ class RenderTestCase(TestCase):
def test_create_text_span_node(self):
assert self.engine.create_text_span_node(self.document, 'text').toxml() == 'text'
-
-
-class EscapingVariablesValues(TestCase):
- """
- Test encoding of line feed and tab variables valuess
- """
- def test_encode_linefeed_char(self):
- xml = 'This\nLF'
- expected = 'ThisLF'
- assert (Renderer.get_escaped_var_value(xml) == expected)
-
- def test_encode_linefeed_char(self):
- xml = 'This\tTab char'
- expected = 'ThisTab char'
- assert (Renderer.get_escaped_var_value(xml) == expected)
-
- def test_escape_xml_reserved_chars(self):
- ''' Should also escape minor and mayor signs '''
- xml = '1 is > than 0 & -1 is <'
- expected = '1 is > than 0 & -1 is <'
- assert (Renderer.get_escaped_var_value(xml) == expected)