[z3-checkins] r53354 - in z3/deliverance/trunk: . deliverance

wiggy at codespeak.net wiggy at codespeak.net
Fri Apr 4 20:56:43 CEST 2008


Author: wiggy
Date: Fri Apr  4 20:56:41 2008
New Revision: 53354

Added:
   z3/deliverance/trunk/deliverance/serializers.py   (contents, props changed)
Modified:
   z3/deliverance/trunk/CHANGES.txt
   z3/deliverance/trunk/deliverance/wsgimiddleware.py
Log:
Set me up the serializer

Modified: z3/deliverance/trunk/CHANGES.txt
==============================================================================
--- z3/deliverance/trunk/CHANGES.txt	(original)
+++ z3/deliverance/trunk/CHANGES.txt	Fri Apr  4 20:56:41 2008
@@ -3,6 +3,7 @@
 
 After 0.1.2
 -----------
+- Add a new serializers file with HTML4 and XHTML serializers.
 
 - (wsgimiddleware) Expose all middleware constructor arguments via
   Paste config.

Added: z3/deliverance/trunk/deliverance/serializers.py
==============================================================================
--- (empty file)
+++ z3/deliverance/trunk/deliverance/serializers.py	Fri Apr  4 20:56:41 2008
@@ -0,0 +1,12 @@
+from lxml import etree
+from htmlserialize import tostring
+
+def HTML4(content):
+    return tostring(content,
+                    doctype_pair=("-//W3C//DTD HTML 4.01 Transitional//EN",
+                                  "http://www.w3.org/TR/html4/loose.dtd"))
+
+def XHTML(content):
+    return '<?xml version="1.0"?>' + \
+            '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'+ \
+            etree.tostring(content)

Modified: z3/deliverance/trunk/deliverance/wsgimiddleware.py
==============================================================================
--- z3/deliverance/trunk/deliverance/wsgimiddleware.py	(original)
+++ z3/deliverance/trunk/deliverance/wsgimiddleware.py	Fri Apr  4 20:56:41 2008
@@ -13,7 +13,6 @@
 from paste.wsgilib import intercept_output
 from paste.request import construct_url
 from paste.response import header_value, replace_header
-from htmlserialize import tostring
 from deliverance.utils import bool_from_string
 from deliverance.utils import DeliveranceError
 from deliverance.utils import DELIVERANCE_ERROR_PAGE
@@ -43,10 +42,6 @@
 
 IGNORE_URL_PATTERN = re.compile("^.*\.(%s)$" % '|'.join(IGNORE_EXTENSIONS))
 
-def _toHTML(content):
-    return tostring(content,
-                    doctype_pair=("-//W3C//DTD HTML 4.01 Transitional//EN",
-                                  "http://www.w3.org/TR/html4/loose.dtd"))
 
 class DeliveranceMiddleware(object):
     """
@@ -98,7 +93,8 @@
 
         self._is_internal_uri = resolve_callable(is_internal_uri)
         if serializer is None:
-            serializer = _toHTML
+            from deliverance.serializers import HTML4
+            serializer = HTML4
         self.serializer = serializer
 
     def get_renderer(self, environ):


More information about the z3-checkins mailing list