summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2018-12-04 10:19:24 +0300
committerAndrew Dolgov <[email protected]>2018-12-04 10:19:24 +0300
commit4a0b644f616c096a87a1de2e697e5af9af8b1c4d (patch)
treea67f499e43697b6d7dcc7c8db334f1a176674b03 /js
parentdcd9914079cdbf73653d8a07df283734601ae1ef (diff)
Headlines.onRowChecked: fix possible desync in checkbox and row selected state
Diffstat (limited to 'js')
-rwxr-xr-xjs/Headlines.js15
1 files changed, 12 insertions, 3 deletions
diff --git a/js/Headlines.js b/js/Headlines.js
index fbe1bd98a..ad1d8f749 100755
--- a/js/Headlines.js
+++ b/js/Headlines.js
@@ -753,10 +753,19 @@ define(["dojo/_base/declare"], function (declare) {
return rv;
},
onRowChecked: function (elem) {
- // account for dojo checkboxes
- elem = elem.domNode || elem;
+ // do not allow unchecking active article checkbox
+ if (row.hasClassName("active")) {
+ elem.attr("checked", 1);
+ return;
+ }
+
+ const row = elem.domNode.up("div[id*=RROW]");
- elem.up("div[id*=RROW]").toggleClassName("Selected");
+ if (elem.attr("checked")) {
+ row.addClassName("Selected");
+ } else {
+ row.removeClassName("Selected");
+ }
this.updateSelectedPrompt();
},