diff options
author | Andrew Dolgov <[email protected]> | 2021-04-22 10:43:34 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2021-04-22 10:45:27 +0300 |
commit | df145c8064a43218def12ed05d1398977f042744 (patch) | |
tree | 310b64766fdab013e2f899eb5e1d7ceda61d5391 /js/Article.js | |
parent | c6befcddb74c6a4b507d6b8b687c43e5ad0c4d82 (diff) |
* cdm: render enclosures into content element
* deprecate cdm.intermediate
* implement lazy-load for rendered enclosures
* simplify pack/unpack logic for articles
Diffstat (limited to 'js/Article.js')
-rw-r--r-- | js/Article.js | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/js/Article.js b/js/Article.js index 16abfbfee..3b23d1d59 100644 --- a/js/Article.js +++ b/js/Article.js @@ -255,12 +255,12 @@ const Article = { return comments; }, unpack: function(row) { - if (row.hasAttribute("data-content")) { + if (row.getAttribute("data-is-packed") == "1") { console.log("unpacking: " + row.id); const container = row.querySelector(".content-inner"); - container.innerHTML = row.getAttribute("data-content").trim(); + container.innerHTML = row.getAttribute("data-content").trim() + row.getAttribute("data-rendered-enclosures").trim(); dojo.parser.parse(container); @@ -272,16 +272,15 @@ const Article = { if (App.isCombinedMode() && App.byId("main").hasClassName("expandable")) row.setAttribute("data-content-original", row.getAttribute("data-content")); - row.removeAttribute("data-content"); + row.setAttribute("data-is-packed", "0"); PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED_CDM, row); } }, pack: function(row) { - if (row.hasAttribute("data-content-original")) { + if (row.getAttribute("data-is-packed") != "1") { console.log("packing", row.id); - row.setAttribute("data-content", row.getAttribute("data-content-original")); - row.removeAttribute("data-content-original"); + row.setAttribute("data-is-packed", "1"); row.querySelector(".content-inner").innerHTML = `<div class="text-center text-muted"> ${__("Loading, please wait...")} |