summaryrefslogtreecommitdiff
path: root/plugins/shorten_expanded
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2021-02-15 14:10:46 +0300
committerAndrew Dolgov <[email protected]>2021-02-15 14:10:46 +0300
commit82adb01307e108e8a2b4eeb900552160d730d0b7 (patch)
tree1048a18b3ad79a546e847ca52267249b6ab3b073 /plugins/shorten_expanded
parent916c21fe60490c50e9ae587b0a977302b9110800 (diff)
render enclosures on the client
Diffstat (limited to 'plugins/shorten_expanded')
-rw-r--r--plugins/shorten_expanded/init.js27
1 files changed, 13 insertions, 14 deletions
diff --git a/plugins/shorten_expanded/init.js b/plugins/shorten_expanded/init.js
index 30bfac6ba..181e426a4 100644
--- a/plugins/shorten_expanded/init.js
+++ b/plugins/shorten_expanded/init.js
@@ -1,3 +1,5 @@
+/* global Plugins, __, require, PluginHost */
+
const _shorten_expanded_threshold = 1.5; //window heights
Plugins.Shorten_Expanded = {
@@ -22,26 +24,23 @@ require(['dojo/_base/kernel', 'dojo/ready'], function (dojo, ready) {
window.setTimeout(function() {
if (row) {
- const c_inner = row.select(".content-inner")[0];
- const c_inter = row.select(".intermediate")[0];
+ const content = row.querySelector(".content-inner");
+ const attachments = row.querySelector(".attachments-inline");
- if (c_inner && c_inter &&
+ if (content && attachments &&
row.offsetHeight >= _shorten_expanded_threshold * window.innerHeight) {
- let tmp = document.createElement("div");
-
- c_inter.select("> *:not([class*='attachments'])").each(function(p) {
- p.parentNode.removeChild(p);
- tmp.appendChild(p);
- });
-
- c_inner.innerHTML = `<div class="content-shrink-wrap">
- ${c_inner.innerHTML}
- ${tmp.innerHTML}</div>
+ content.innerHTML = `
+ <div class="content-shrink-wrap">
+ ${content.innerHTML}
+ ${attachments.innerHTML}
+ </div>
<button dojoType="dijit.form.Button" class="alt-info expand-prompt" onclick="return Plugins.Shorten_Expanded.expand('${row.id}')" href="#">
${__("Click to expand article")}</button>`;
- dojo.parser.parse(c_inner);
+ attachments.innerHTML = "";
+
+ dojo.parser.parse(content);
}
}
}, 150);