Some prelim work on builder api.
[librarian.git] / src / librarian / elements / poetry / wers_wciety.py
index 8ac2bb3..cb5f25e 100644 (file)
@@ -1,20 +1,30 @@
+# This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
+#
 from .wers import Wers
 
 
 class WersWciety(Wers):
 from .wers import Wers
 
 
 class WersWciety(Wers):
+    HTML_CLASS = Wers.HTML_CLASS + ' verse-indent'
+
     @property
     def typ(self):
         v = self.attrib.get('typ')
         return int(v) if v else 1
 
     @property
     def typ(self):
         v = self.attrib.get('typ')
         return int(v) if v else 1
 
-    def _txt_build_inner(self, builder):
+    def txt_build_inner(self, builder):
         ## Temporary legacy compatibility fix.
         typ = min(self.typ, 2)
 
         builder.push_text('  ' * self.typ, prepared=True)
         ## Temporary legacy compatibility fix.
         typ = min(self.typ, 2)
 
         builder.push_text('  ' * self.typ, prepared=True)
-        super(WersWciety, self)._txt_build_inner(builder)
+        super().txt_build_inner(builder)
 
     def get_html_attr(self, builder):
 
     def get_html_attr(self, builder):
-        attr = super(WersWciety, self).get_html_attr(builder)
-        attr['style'] = "padding-left: {}em".format(self.typ)
+        attr = super().get_html_attr(builder)
+        attr['class'] += f" verse-indent-{self.typ}"
+        return attr
+
+    def get_epub_attr(self, builder):
+        attr = super().get_html_attr(builder)
+        attr['style'] = "margin-left: {}em".format(self.typ)
         return attr
         return attr