summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--functions.js25
-rw-r--r--viewfeed.js9
2 files changed, 34 insertions, 0 deletions
diff --git a/functions.js b/functions.js
index d8f7a235c..47374ea4e 100644
--- a/functions.js
+++ b/functions.js
@@ -1687,3 +1687,28 @@ function labelTest() {
}
}
+function isCdmMode() {
+ return !document.getElementById("headlinesList");
+}
+
+function getSelectedArticleIds2() {
+ var rows = new Array();
+ var cdm_mode = isCdmMode();
+
+ if (cdm_mode) {
+ rows = cdmGetSelectedArticles();
+ } else {
+ rows = getSelectedTableRowIds("headlinesList", "RROW", "RCHK");
+ }
+
+ var ids = new Array();
+
+ for (var i = 0; i < rows.length; i++) {
+ var chk = document.getElementById("RCHK-" + rows[i]);
+ if (chk && chk.checked) {
+ ids.push(rows[i]);
+ }
+ }
+
+ return ids;
+}
diff --git a/viewfeed.js b/viewfeed.js
index a1c999308..6a20ae335 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -109,8 +109,17 @@ function headlines_callback2(transport, active_feed_id, is_cat, feed_cur_page) {
if (!c) {
c = document.getElementById("headlinesInnerContainer");
}
+
+ var ids = getSelectedArticleIds2();
c.innerHTML = c.innerHTML + headlines.firstChild.nodeValue;
+
+ debug("restore selected ids: " + ids);
+
+ for (var i = 0; i < ids.length; i++) {
+ markHeadline(ids[i]);
+ }
+
} else {
debug("no new headlines received");
}