diff --git a/backend.php b/backend.php index cee8c26ce..b83c4ff2a 100644 --- a/backend.php +++ b/backend.php @@ -222,13 +222,14 @@ // in prefetch mode we only output requested cids, main article // just gets marked as read (it already exists in client cache) + $feed_id = false; + if ($mode == "") { outputArticleXML($link, $id, false); } else if ($mode == "zoom") { outputArticleXML($link, $id, false, true, true); } else { catchupArticleById($link, $id, 0); - ccache_update($link, $feed_id, $_SESSION["uid"]); } if (!$_SESSION["bw_limit"]) { @@ -241,7 +242,7 @@ // if (get_pref($link, "SYNC_COUNTERS") || ($mode == "prefetch" && $csync)) { - if (time() - $_SESSION["view:counters_stamp"] > 3 && $mode == "prefetch") { + if (time() - $_SESSION["view:counters_stamp"] > 5 && $mode == "prefetch") { print ""; getAllCounters($link, $omode); print ""; @@ -365,7 +366,7 @@ // } if (get_pref($link, 'COMBINED_DISPLAY_MODE') || $subop || - time() - $_SESSION["viewfeed:counters_stamp"] > 60) { + time() - $_SESSION["viewfeed:counters_stamp"] > 5) { if (!$offset) { print ""; getAllCounters($link, $omode, $feed); diff --git a/functions.php b/functions.php index 5fefe6bee..464a2cbdd 100644 --- a/functions.php +++ b/functions.php @@ -4044,6 +4044,9 @@ unread = NOT unread,last_read = NOW() WHERE ref_id = '$id' AND owner_uid = " . $_SESSION["uid"]); } + + $feed_id = getArticleFeed($link, $id); + ccache_update($link, $feed_id, $_SESSION["uid"]); } function make_guid_from_title($title) { @@ -6469,4 +6472,15 @@ db_query($link, "COMMIT"); } + + function getArticleFeed($link, $id) { + $result = db_query($link, "SELECT feed_id FROM ttrss_user_entries + WHERE ref_id = '$id'"); + + if (db_num_rows($result) != 0) { + return db_fetch_result($result, 0, "feed_id"); + } else { + return 0; + } + } ?>