diff options
Diffstat (limited to 'js')
-rwxr-xr-x | js/functions.js | 61 | ||||
-rwxr-xr-x | js/prefs.js | 6 | ||||
-rw-r--r-- | js/tt-rss.js | 2 | ||||
-rwxr-xr-x | js/viewfeed.js | 8 |
4 files changed, 28 insertions, 49 deletions
diff --git a/js/functions.js b/js/functions.js index ce6d7aca9..033933794 100755 --- a/js/functions.js +++ b/js/functions.js @@ -53,8 +53,8 @@ Array.prototype.remove = function(s) { } }; -const ListUtils = { - onChecked: function(elem) { +const Lists = { + onRowChecked: function(elem) { // account for dojo checkboxes elem = elem.domNode || elem; @@ -62,11 +62,23 @@ const ListUtils = { } }; +const Tables = { + onRowChecked: function(elem) { + // account for dojo checkboxes + elem = elem.domNode || elem; + + elem.up("tr").toggleClassName("Selected"); + } +} + const Utils = { _rpc_seq: 0, hotkey_prefix: 0, hotkey_prefix_pressed: false, hotkey_prefix_timeout: 0, + urlParam: function(param) { + return String(window.location.href).parseQuery()[param]; + }, next_seq: function() { this._rpc_seq += 1; return this._rpc_seq; @@ -988,43 +1000,6 @@ function getCookie(name) { return unescape(dc.substring(begin + prefix.length, end)); } -function toggleSelectRowById(sender, id) { - const row = $(id); - return toggleSelectRow(sender, row); -} - -/* this is for dijit Checkbox */ -function toggleSelectRow2(sender, row, is_cdm) { - - if (!row) - if (!is_cdm) - row = sender.domNode.parentNode.parentNode; - else - row = sender.domNode.parentNode.parentNode.parentNode; // oh ffs - - if (sender.checked && !row.hasClassName('Selected')) - row.addClassName('Selected'); - else - row.removeClassName('Selected'); - - if (typeof Headlines != "undefined") - Headlines.updateSelectedPrompt(); -} - - -function toggleSelectRow(sender, row) { - - if (!row) row = sender.parentNode.parentNode; - - if (sender.checked && !row.hasClassName('Selected')) - row.addClassName('Selected'); - else - row.removeClassName('Selected'); - - if (typeof Headlines != "undefined") - Headlines.updateSelectedPrompt(); -} - // noinspection JSUnusedGlobalSymbols function displayIfChecked(checkbox, elemId) { if (checkbox.checked) { @@ -1034,10 +1009,6 @@ function displayIfChecked(checkbox, elemId) { } } -function getURLParam(param){ - return String(window.location.href).parseQuery()[param]; -} - // noinspection JSUnusedGlobalSymbols function closeInfoBox() { const dialog = dijit.byId("infoBox"); @@ -1140,7 +1111,7 @@ const Filters = { new dijit.form.CheckBox({ onChange: function () { - ListUtils.onChecked(this); + Lists.onRowChecked(this); }, }, cb); @@ -1189,7 +1160,7 @@ const Filters = { new dijit.form.CheckBox({ onChange: function () { - ListUtils.onChecked(this); + Lists.onRowChecked(this); }, }, cb); diff --git a/js/prefs.js b/js/prefs.js index 40068b95c..f12c31441 100755 --- a/js/prefs.js +++ b/js/prefs.js @@ -69,17 +69,17 @@ const App = { Utils.setLoadingProgress(50); notify(""); - let tab = getURLParam('tab'); + let tab = Utils.urlParam('tab'); if (tab) { tab = dijit.byId(tab + "Tab"); if (tab) dijit.byId("pref-tabs").selectChild(tab); } - const method = getURLParam('method'); + const method = Utils.urlParam('method'); if (method == 'editFeed') { - const param = getURLParam('methodparam'); + const param = Utils.urlParam('methodparam'); window.setTimeout(function () { CommonDialogs.editFeed(param) diff --git a/js/tt-rss.js b/js/tt-rss.js index b337e0ae5..71bb2337a 100644 --- a/js/tt-rss.js +++ b/js/tt-rss.js @@ -414,7 +414,7 @@ const App = { if (!row.hasClassName("active")) cb.attr("checked", !cb.attr("checked")); - toggleSelectRowById(cb, "RROW-" + id); + Headlines.onRowChecked(cb); return false; } } diff --git a/js/viewfeed.js b/js/viewfeed.js index 93bc56c9d..e7703ed55 100755 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -1109,6 +1109,14 @@ const Headlines = { return rv; }, + onRowChecked: function(elem) { + // account for dojo checkboxes + elem = elem.domNode || elem; + + elem.up("div[id*=RROW]").toggleClassName("Selected"); + + this.updateSelectedPrompt(); + }, select: function(mode) { // mode = all,none,unread,invert,marked,published let query = "#headlines-frame > div[id*=RROW]"; |