headline caching fixes

This commit is contained in:
Andrew Dolgov 2007-11-21 10:05:04 +01:00
parent 01b1c32d33
commit 5d17ead9b2
4 changed files with 12 additions and 7 deletions

View File

@ -226,12 +226,13 @@
$topmost_article_ids = $ret[0]; $topmost_article_ids = $ret[0];
$headlines_count = $ret[1]; $headlines_count = $ret[1];
$returned_feed = $ret[2];
print "]]></headlines>"; print "]]></headlines>";
print "<headlines-count value=\"$headlines_count\"/>"; print "<headlines-count value=\"$headlines_count\"/>";
$headlines_unread = getFeedUnread($link, $feed); $headlines_unread = getFeedUnread($link, $returned_feed);
print "<headlines-unread value=\"$headlines_unread\"/>"; print "<headlines-unread value=\"$headlines_unread\"/>";

View File

@ -171,7 +171,7 @@ function viewfeed(feed, subop, is_cat, subop_param, skip_history, offset) {
} }
} }
f.innerHTML = cache_find("F:" + feed); f.innerHTML = cache_find_param("F:" + feed, unread_ctr);
var query = "backend.php?op=rpc&subop=getAllCounters"; var query = "backend.php?op=rpc&subop=getAllCounters";

View File

@ -4952,7 +4952,7 @@
print "</div>"; print "</div>";
} }
return array($topmost_article_ids, $headlines_count); return array($topmost_article_ids, $headlines_count, $feed);
} }
// from here: http://www.roscripts.com/Create_tag_cloud-71.html // from here: http://www.roscripts.com/Create_tag_cloud-71.html

View File

@ -1196,7 +1196,7 @@ function cdmWatchdog() {
function cache_inject(id, article, param) { function cache_inject(id, article, param) {
if (!cache_check(id, param)) { if (!cache_check_param(id, param)) {
debug("cache_article: miss: " + id + " [p=" + param + "]"); debug("cache_article: miss: " + id + " [p=" + param + "]");
var cache_obj = new Array(); var cache_obj = new Array();
@ -1221,10 +1221,10 @@ function cache_find(id) {
return false; return false;
} }
function cache_get_param(id) { function cache_find_param(id, param) {
for (var i = 0; i < article_cache.length; i++) { for (var i = 0; i < article_cache.length; i++) {
if (article_cache[i]["id"] == id) { if (article_cache[i]["id"] == id && article_cache[i]["param"] == param) {
return article_cache[i]["param"]; return article_cache[i]["data"];
} }
} }
return false; return false;
@ -1241,6 +1241,10 @@ function cache_check(id) {
function cache_check_param(id, param) { function cache_check_param(id, param) {
for (var i = 0; i < article_cache.length; i++) { for (var i = 0; i < article_cache.length; i++) {
// debug("cache_check_param " + article_cache[i]["id"] + ":" +
// article_cache[i]["param"] + " vs " + id + ":" + param);
if (article_cache[i]["id"] == id && article_cache[i]["param"] == param) { if (article_cache[i]["id"] == id && article_cache[i]["param"] == param) {
return true; return true;
} }