X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/3a0c83394d5783715fab2be29fa1a9cfc3574e28..72e0675156f925cf91d6cf1a3da4799a1f28b02a:/src/librarian/html.py diff --git a/src/librarian/html.py b/src/librarian/html.py index c2f41c0..456f281 100644 --- a/src/librarian/html.py +++ b/src/librarian/html.py @@ -39,7 +39,7 @@ def transform_abstrakt(abstrakt_element): style = etree.parse(style_filename) xml = etree.tostring(abstrakt_element, encoding='unicode') document = etree.parse(io.StringIO( - xml.replace('abstrakt', 'dlugi_cytat') + xml.replace('', '', @@ -49,6 +49,10 @@ def transform_abstrakt(abstrakt_element): def add_image_sizes(tree, gallery_path, gallery_url, base_url): widths = [360, 600, 1200, 1800, 2400] + try: + os.makedirs(gallery_path) + except: + pass for i, ilustr in enumerate(tree.findall('//ilustr')): rel_path = ilustr.attrib['src'] @@ -111,6 +115,7 @@ def transform(wldoc, stylesheet='legacy', options=None, flags=None, css=None, ga document.clean_ed_note() document.clean_ed_note('abstrakt') document.fix_pa_akap() + document.hebr_protect() if not options: options = {} @@ -307,7 +312,8 @@ def any_ancestor(element, test): def add_anchors(root): - counter = 1 + link_prefix = "f" + counter = {"f": 1} visible_counter = 1 for element in root.iterdescendants(): def f(e): @@ -325,18 +331,21 @@ def add_anchors(root): visible_counter = int(element.get('data-start')) except ValueError: visible_counter = 1 + if element.get("data-link"): + link_prefix = element.get("data-link") + counter[link_prefix] = 1 if any_ancestor(element, f): continue if element.tag == 'div' and 'verse' in element.get('class', ''): if visible_counter == 1 or visible_counter % 5 == 0: - add_anchor(element, "f%d" % counter, link_text=visible_counter) - counter += 1 + add_anchor(element, "%s%d" % (link_prefix, counter[link_prefix]), link_text=visible_counter) + counter[link_prefix] += 1 visible_counter += 1 elif 'paragraph' in element.get('class', ''): - add_anchor(element, "f%d" % counter, link_text=visible_counter) - counter += 1 + add_anchor(element, "%s%d" % (link_prefix, counter[link_prefix]), link_text=visible_counter) + counter[link_prefix] += 1 visible_counter += 1