From fdcdf2de7cd4ef53f6cfd77469166ef36ea2c3c7 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 22 Nov 2007 08:35:50 +0100 Subject: [PATCH] update cache when viewing unread articles --- viewfeed.js | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/viewfeed.js b/viewfeed.js index f42f677e..4f40f8fb 100644 --- a/viewfeed.js +++ b/viewfeed.js @@ -247,30 +247,38 @@ function showArticleInHeadlines(id) { var article_is_unread = crow.className.match("Unread"); crow.className = crow.className.replace("Unread", ""); - + + selectTableRowsByIdPrefix('headlinesList', 'RROW-', 'RCHK-', false); + markHeadline(id); + var upd_img_pic = document.getElementById("FUPDPIC-" + id); - - if (upd_img_pic && upd_img_pic.src.match("updated.png")) { - upd_img_pic.src = "images/blank_icon.gif"; - var cache_prefix = ""; + var cache_prefix = ""; - if (activeFeedIsCat()) { - cache_prefix = "C:"; - } else { - cache_prefix = "F:"; - } + if (activeFeedIsCat()) { + cache_prefix = "C:"; + } else { + cache_prefix = "F:"; + } + + if (upd_img_pic && upd_img_pic.src.match("updated.png")) { + upd_img_pic.src = "images/blank_icon.gif"; cache_invalidate(cache_prefix + getActiveFeedId()); cache_inject(cache_prefix + getActiveFeedId(), document.getElementById("headlines-frame").innerHTML, get_feed_unread(getActiveFeedId())); - + + } else if (article_is_unread) { + + cache_invalidate(cache_prefix + getActiveFeedId()); + + cache_inject(cache_prefix + getActiveFeedId(), + document.getElementById("headlines-frame").innerHTML, + get_feed_unread(getActiveFeedId())-1); + } - - selectTableRowsByIdPrefix('headlinesList', 'RROW-', 'RCHK-', false); - markHeadline(id); } catch (e) { exception_error("showArticleInHeadlines", e); -- 2.39.5