diff --git a/copyparty/httpcli.py b/copyparty/httpcli.py
index 8d8ec9bc..38f3d85c 100644
--- a/copyparty/httpcli.py
+++ b/copyparty/httpcli.py
@@ -1275,13 +1275,6 @@ class HttpCli(object):
if self.writable:
perms.append("write")
- if is_ls:
- [x.pop(k) for k in ["name", "dt"] for y in [dirs, files] for x in y]
- ret = {"dirs": dirs, "files": files, "srvinf": srv_info, "perms": perms}
- ret = json.dumps(ret)
- self.reply(ret.encode("utf-8", "replace"), mime="application/json")
- return True
-
logues = [None, None]
for n, fn in enumerate([".prologue.html", ".epilogue.html"]):
fn = os.path.join(abspath, fn)
@@ -1289,6 +1282,19 @@ class HttpCli(object):
with open(fsenc(fn), "rb") as f:
logues[n] = f.read().decode("utf-8")
+ if is_ls:
+ [x.pop(k) for k in ["name", "dt"] for y in [dirs, files] for x in y]
+ ret = {
+ "dirs": dirs,
+ "files": files,
+ "srvinf": srv_info,
+ "perms": perms,
+ "logues": logues,
+ }
+ ret = json.dumps(ret)
+ self.reply(ret.encode("utf-8", "replace"), mime="application/json")
+ return True
+
ts = ""
# ts = "?{}".format(time.time())
@@ -1301,8 +1307,7 @@ class HttpCli(object):
ts=ts,
perms=json.dumps(perms),
have_up2k_idx=self.args.e2d,
- prologue=logues[0],
- epilogue=logues[1],
+ logues=logues,
title=html_escape(self.vpath),
srv_info=srv_info,
)
diff --git a/copyparty/web/browser.html b/copyparty/web/browser.html
index 57e36ad2..5bf98cf5 100644
--- a/copyparty/web/browser.html
+++ b/copyparty/web/browser.html
@@ -38,9 +38,7 @@
{%- endfor %}
- {%- if prologue %}
-
{{ prologue }}
- {%- endif %}
+ {{ logues[0] }}
- {%- if epilogue %}
- {{ epilogue }}
- {%- endif %}
+ {{ logues[1] }}
diff --git a/copyparty/web/browser.js b/copyparty/web/browser.js
index 02e6b7b8..804b7871 100644
--- a/copyparty/web/browser.js
+++ b/copyparty/web/browser.js
@@ -712,15 +712,9 @@ function autoplay_blocked() {
treetab.style.display = 'table';
- var pro = ebi('pro');
- if (pro)
- treefiles.appendChild(pro);
-
+ treefiles.appendChild(ebi('pro'));
treefiles.appendChild(ebi('files'));
-
- var epi = ebi('epi');
- if (epi)
- treefiles.appendChild(epi);
+ treefiles.appendChild(ebi('epi'));
localStorage.setItem('entreed', 'tree');
get_tree("", get_vpath());
@@ -872,11 +866,8 @@ function autoplay_blocked() {
apply_perms(res.perms);
despin('#files');
- var o = ebi('pro');
- if (o) o.parentNode.removeChild(o);
-
- o = ebi('epi');
- if (o) o.parentNode.removeChild(o);
+ ebi('pro').innerHTML = res.logues ? res.logues[0] || "" : "";
+ ebi('epi').innerHTML = res.logues ? res.logues[1] || "" : "";
reload_tree();
reload_browser();
@@ -915,15 +906,9 @@ function autoplay_blocked() {
ev(e);
var treetab = ebi('treetab');
- var pro = ebi('pro');
- if (pro)
- treetab.parentNode.insertBefore(pro, treetab);
-
+ treetab.parentNode.insertBefore(ebi('pro'), treetab);
treetab.parentNode.insertBefore(ebi('files'), treetab.nextSibling);
-
- var epi = ebi('epi');
- if (epi)
- treetab.parentNode.insertBefore(epi, ebi('files').nextSibling);
+ treetab.parentNode.insertBefore(ebi('epi'), ebi('files').nextSibling);
ebi('path').style.display = 'inline-block';
treetab.style.display = 'none';