finalize changes for open-next-unread-feed-on-catchup (closes #63)

This commit is contained in:
Andrew Dolgov 2006-05-17 14:20:00 +01:00
parent e52d6bc4be
commit e0998414d8
2 changed files with 31 additions and 16 deletions

View file

@ -664,6 +664,7 @@
$view_mode = db_escape_string($_GET["view"]);
$limit = db_escape_string($_GET["limit"]);
$cat_view = db_escape_string($_GET["cat"]);
$next_unread_feed = db_escape_string($_GET["nuf"]);
if (!$skip) $skip = 0;
@ -688,6 +689,18 @@
type=\"text/css\" href=\"tt-rss_compact.css\"/>";
}
if ($subop == "ForceUpdate" && sprintf("%d", $feed) > 0) {
update_generic_feed($link, $feed, $cat_view);
}
if ($subop == "MarkAllRead") {
catchup_feed($link, $feed, $cat_view);
if (get_pref($link, 'ON_CATCHUP_SHOW_NEXT_FEED')) {
$feed = $next_unread_feed;
}
}
if (preg_match("/^-?[0-9][0-9]*$/", $feed) != false) {
$result = db_query($link, "SELECT rtl_content FROM ttrss_feeds
@ -726,14 +739,6 @@
window.onload = init;
</script>";
if ($subop == "ForceUpdate" && sprintf("%d", $feed) > 0) {
update_generic_feed($link, $feed, $cat_view);
}
if ($subop == "MarkAllRead") {
catchup_feed($link, $feed, $cat_view);
}
$search = db_escape_string($_GET["search"]);
$search_mode = db_escape_string($_GET["smode"]);

View file

@ -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";
}