From e0998414d827d84f92ebff4f8f80f48390d9f8e7 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 17 May 2006 14:20:00 +0100 Subject: finalize changes for open-next-unread-feed-on-catchup (closes #63) --- feedlist.js | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) (limited to 'feedlist.js') diff --git a/feedlist.js b/feedlist.js index 7bdf63a06..f1038d613 100644 --- a/feedlist.js +++ b/feedlist.js @@ -28,7 +28,7 @@ function viewCategory(cat) { viewfeed(cat, 0, '', false, true); } -function viewfeed(feed, skip, subop, doc, is_cat) { +function viewfeed(feed, skip, subop, doc, is_cat, subop_param) { try { if (!doc) doc = parent.document; @@ -91,9 +91,14 @@ function viewfeed(feed, skip, subop, doc, is_cat) { } setActiveFeedId(feed); + + var query = "backend.php?op=viewfeed&feed=" + param_escape(feed) + + "&skip=" + param_escape(skip) + "&subop=" + param_escape(subop) + + "&view=" + param_escape(view_mode) + "&limit=" + limit + + "&smode=" + param_escape(search_mode); if (subop == "MarkAllRead") { - + var feedr = document.getElementById("FEEDR-" + feed); var feedctr = document.getElementById("FEEDCTR-" + feed); @@ -105,13 +110,18 @@ function viewfeed(feed, skip, subop, doc, is_cat) { feedr.className = feedr.className.replace("Unread", ""); } } + + var feedlist = document.getElementById('feedList'); + + var next_unread_feed = getRelativeFeedId(feedlist, + getActiveFeedId(), "next", true); + + if (next_unread_feed) { + query = query + "&nuf=" + param_escape(next_unread_feed); + setActiveFeedId(next_unread_feed); + } } - var query = "backend.php?op=viewfeed&feed=" + param_escape(feed) + - "&skip=" + param_escape(skip) + "&subop=" + param_escape(subop) + - "&view=" + param_escape(view_mode) + "&limit=" + limit + - "&smode=" + param_escape(search_mode); - if (search_query != "") { query = query + "&search=" + param_escape(search_query); searchbox.value = ""; @@ -137,7 +147,7 @@ function viewfeed(feed, skip, subop, doc, is_cat) { // cleanSelectedList("feedList"); - var feedr = document.getElementById("FEEDR-" + feed); + var feedr = document.getElementById("FEEDR-" + getActiveFeedId()); if (feedr && !feedr.className.match("Selected")) { feedr.className = feedr.className + "Selected"; } -- cgit v1.2.3