summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
Diffstat (limited to 'js')
-rwxr-xr-xjs/functions.js61
-rwxr-xr-xjs/prefs.js6
-rw-r--r--js/tt-rss.js2
-rwxr-xr-xjs/viewfeed.js8
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]";