X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/d26d6a7fdcb2c6e26fd097532765b62fd17b429c..e17ce23224e5923b782f6323391bc40c801559e9:/src/librarian/elements/footnotes/__init__.py diff --git a/src/librarian/elements/footnotes/__init__.py b/src/librarian/elements/footnotes/__init__.py index d0a0bf1..433e881 100644 --- a/src/librarian/elements/footnotes/__init__.py +++ b/src/librarian/elements/footnotes/__init__.py @@ -1,3 +1,6 @@ +# -*- coding: utf-8 +from __future__ import unicode_literals + from ..base import WLElement @@ -46,6 +49,49 @@ class Footnote(WLElement): builder.end_element() builder.exit_fragment() + def epub_build(self, builder): + fn_no = builder.assign_footnote_number() + part_number = getattr( + builder, + 'chunk_counter', + 1 + ) + + builder.start_element( + 'a', + { + 'class': 'anchor', + 'id': f'anchor-{fn_no}', + 'href': f'annotations.xhtml#annotation-{fn_no}', + } + ) + builder.start_element('sup', {}) + builder.push_text(str(fn_no)) + builder.end_element() + builder.end_element() + + + builder.enter_fragment('footnotes') + builder.start_element('p', { + 'id': f'annotation-{fn_no}', + 'class': "annotation" + }) + builder.start_element('a', { + 'href': f"part{part_number}.xhtml#anchor-{fn_no}" + }) + builder.push_text(str(fn_no)) + builder.end_element() + builder.push_text('. ') + + super().epub_build(builder) + builder.push_text(' [' + self.qualifier + ']') + builder.end_element() + + builder.push_text('\n') + + builder.exit_fragment() + + class PA(Footnote): """Przypis autorski."""