diff --git a/backend.php b/backend.php index 39324673..634d5ae3 100644 --- a/backend.php +++ b/backend.php @@ -301,6 +301,7 @@ $feed_id = db_escape_string($_GET["feed"]); $cids = split(",", db_escape_string($_GET["cids"])); $mode = db_escape_string($_GET["mode"]); + $omode = db_escape_string($_GET["omode"]); print ""; @@ -319,6 +320,10 @@ } } + print ""; + getAllCounters($link, $omode); + print ""; + print ""; } diff --git a/viewfeed.js b/viewfeed.js index 4cba45ef..88448f31 100644 --- a/viewfeed.js +++ b/viewfeed.js @@ -123,7 +123,14 @@ function article_callback() { setTimeout('updateFeedList(false, false)', 50); _reload_feedlist_after_view = false; } else { - update_all_counters(); + var counters = xmlhttp.responseXML.getElementsByTagName("counters")[0]; + + if (counters) { + debug("parsing piggybacked counters: " + counters); + parse_counters(counters, false); + } else { + update_all_counters(); + } } notify(""); @@ -194,6 +201,14 @@ function view(id, feed_id, skip_history) { debug("additional ids: " + cids_to_request.toString()); + /* additional info for piggyback counters */ + + if (tagsAreDisplayed()) { + query = query + "&omode=lt"; + } else { + query = query + "&omode=flc"; + } + var date = new Date(); var timestamp = Math.round(date.getTime() / 1000); query = query + "&ts=" + timestamp;