Prettier authors on covers.
[librarian.git] / librarian / html.py
index 67f0061..096e399 100644 (file)
@@ -38,14 +38,14 @@ def html_has_content(text):
 def transform_abstrakt(abstrakt_element):
     style_filename = get_stylesheet('legacy')
     style = etree.parse(style_filename)
-    xml = etree.tostring(abstrakt_element)
-    document = etree.parse(six.BytesIO(xml.replace('abstrakt', 'dlugi_cytat')))  # HACK
+    xml = etree.tostring(abstrakt_element, encoding='unicode')
+    document = etree.parse(six.StringIO(xml.replace('abstrakt', 'dlugi_cytat')))  # HACK
     result = document.xslt(style)
-    html = re.sub('<a name="sec[0-9]*"/>', '', etree.tostring(result))
+    html = re.sub('<a name="sec[0-9]*"/>', '', etree.tostring(result, encoding='unicode'))
     return re.sub('</?blockquote[^>]*>', '', html)
 
 
-def transform(wldoc, stylesheet='legacy', options=None, flags=None):
+def transform(wldoc, stylesheet='legacy', options=None, flags=None, css=None):
     """Transforms the WL document to XHTML.
 
     If output_filename is None, returns an XML,
@@ -71,7 +71,10 @@ def transform(wldoc, stylesheet='legacy', options=None, flags=None):
         if not options:
             options = {}
         options.setdefault('gallery', "''")
-        result = document.transform(style, **options)
+
+        css = css or 'https://static.wolnelektury.pl/css/compressed/book_text.css'
+        css = "'%s'" % css
+        result = document.transform(style, css=css, **options)
         del document  # no longer needed large object :)
 
         if html_has_content(result):