Plugins.Share = { shareArticle: function(id) { if (dijit.byId("shareArticleDlg")) dijit.byId("shareArticleDlg").destroyRecursive(); const query = "backend.php?op=pluginhandler&plugin=share&method=shareArticle¶m=" + encodeURIComponent(id); const dialog = new dijit.Dialog({ id: "shareArticleDlg", title: __("Share article by URL"), style: "width: 600px", newurl: function () { if (confirm(__("Generate new share URL for this article?"))) { Notify.progress("Trying to change URL...", true); const query = {op: "pluginhandler", plugin: "share", method: "newkey", id: id}; xhrJson("backend.php", query, (reply) => { if (reply) { const new_link = reply.link; const e = $('gen_article_url'); if (new_link) { e.innerHTML = e.innerHTML.replace(/\&key=.*$/, "&key=" + new_link); e.href = e.href.replace(/\&key=.*$/, "&key=" + new_link); new Effect.Highlight(e); const img = $("SHARE-IMG-" + id); img.addClassName("shared"); Notify.close(); } else { Notify.error("Could not change URL."); } } }); } }, unshare: function () { if (confirm(__("Remove sharing for this article?"))) { const query = {op: "pluginhandler", plugin: "share", method: "unshare", id: id}; xhrPost("backend.php", query, () => { try { const img = $("SHARE-IMG-" + id); if (img) { img.removeClassName("shared"); img.up("div[id*=RROW]").removeClassName("shared"); } dialog.hide(); } catch (e) { console.error(e); } }); } }, href: query }); dialog.show(); const img = $("SHARE-IMG-" + id); img.addClassName("shared"); } };