From 180596783340af54224a8a09e76e0e91b887360b Mon Sep 17 00:00:00 2001 From: Gregory Soutade Date: Mon, 6 Apr 2020 10:31:28 +0200 Subject: [PATCH] Update post/_createPost to not simply append post content, but replace dyn:post node --- dynastie/generators/generator.py | 3 +-- dynastie/generators/post.py | 11 +++++------ 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/dynastie/generators/generator.py b/dynastie/generators/generator.py index d843a9c..76971f5 100755 --- a/dynastie/generators/generator.py +++ b/dynastie/generators/generator.py @@ -261,12 +261,11 @@ class DynastieGenerator: return root blockname = block.getAttribute('name') for target_block in target_blocks: - if blockname != target_block.getAttribute('name'): continue for child in target_block.childNodes: - block.parentNode.insertBefore(child.cloneNode(True),block) + block.parentNode.insertBefore(child.cloneNode(True), block) block_found = True break block.parentNode.removeChild(block) diff --git a/dynastie/generators/post.py b/dynastie/generators/post.py index 5627b93..e101302 100755 --- a/dynastie/generators/post.py +++ b/dynastie/generators/post.py @@ -146,15 +146,14 @@ class Post(Index): self.replaceByText(dom, root, node, value) return None - def _createPost(self, post, dom, post_elem, root): + def _createPost(self, post, dom, root, node): self.cur_post_obj = post posts = [post] - self.createPost(posts, dom, post_elem, root) + post_elem = self.createElement(dom, 'post') + post_elem = self.createPost(posts, dom, post_elem, node) # Post are appended by index. Remove template - post_nodes = dom.getElementsByTagNameNS(self.URI, 'post') - post_elem = post_nodes[0] - post_elem.parentNode.removeChild(post_elem) + root.replaceChild(post_elem, node) title_nodes = dom.getElementsByTagName('title') @@ -164,7 +163,7 @@ class Post(Index): node.removeChild(node.childNodes[0]) node.appendChild(dom.createTextNode(post.title)) - return node + return post_elem def _generate(self, blog, src, output, posts): from dynastie.search import Search