From 7427b450d70d89ccb0e9023a4cea8fab7646742f Mon Sep 17 00:00:00 2001 From: echicken <echicken@bbs.electronicchicken.com> Date: Thu, 8 Oct 2020 00:36:08 -0400 Subject: [PATCH] block-sender button handling --- webv4/root/js/forum.js | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/webv4/root/js/forum.js b/webv4/root/js/forum.js index 679dd5a97f..e11ecdcc27 100644 --- a/webv4/root/js/forum.js +++ b/webv4/root/js/forum.js @@ -352,18 +352,19 @@ function onThreadStats(data) { /* Fetch a private mail message's body (with links to attachments) where 'id' is the message number. Output it to an element with id 'message-<id>'. */ async function getMailBody(id) { - if (!$('#message-' + id).attr('hidden')) { - $('#message-' + id).attr('hidden', true); - } else if ($('#message-' + id).html() != '') { - $('#message-' + id).attr('hidden', false); + const tgt = `#message-${id}`; + if (!$(tgt).attr('hidden')) { + $(tgt).attr('hidden', true); + } else if ($(tgt).html() != '') { + $(tgt).attr('hidden', false); } else { - const data = await v4_get('./api/forum.ssjs?call=get-mail-body&number=' + id); + const data = await v4_get(`./api/forum.ssjs?call=get-mail-body&number=${id}`); var str = data.body; if (data.inlines && data.inlines.length > 0) { - str += '<br>Inline attachments: ' + data.inlines.join('<br>') + '<br>'; + str += `<br>Inline attachments: ${data.inlines.join('<br>')}<br>`; } if (data.attachments && data.attachments.length > 0) { - str += '<br>Attachments: ' + data.attachments.join('<br>') + '<br>'; + str += `<br>Attachments: ${data.attachments.join('<br>')}<br>`; } str += '<button class="btn btn-default icon" ' + @@ -377,11 +378,17 @@ async function getMailBody(id) { 'title="Delete this message" onclick="deleteMessage(\'mail\',' + id + ')">' + '<span class="glyphicon glyphicon-trash"></span>' + '</button>'; - $('#message-' + id).html(str); - $('#message-' + id).attr('hidden', false); + if (data.buttons) str += data.buttons.join(''); + $(tgt).html(str); + $(tgt).attr('hidden', false); } } +async function blockSender(id, from, from_net) { + const data = await v4_get(`./api/forum.ssjs?call=block-sender&from=${from}&from_net=${from_net}`); + if (!data.err) $(`#bsb-${id}`).attr('disabled', true); +} + async function setScanCfg(sub, cfg) { var opts = [ 'scan-cfg-off', 'scan-cfg-new', 'scan-cfg-youonly' ]; const data = await v4_get('./api/forum.ssjs?call=set-scan-cfg&sub=' + sub + '&cfg=' + cfg); -- GitLab