diff options
author | Andrew Dolgov <[email protected]> | 2007-05-15 07:19:48 +0100 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2007-05-15 07:19:48 +0100 |
commit | addb5836949e27cd89f5a9254a33b3ad41982843 (patch) | |
tree | 9be433777feccab264775d93fcf41eca5bb01eeb /viewfeed.js | |
parent | 7289eacf91a2082bdc42123e0b81031a8b380f4c (diff) |
prefetch old articles when necessary
Diffstat (limited to 'viewfeed.js')
-rw-r--r-- | viewfeed.js | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/viewfeed.js b/viewfeed.js index 91b042689..f60783514 100644 --- a/viewfeed.js +++ b/viewfeed.js @@ -50,11 +50,12 @@ function headlines_callback() { if (counters) { debug("parsing piggybacked counters: " + counters); parse_counters(counters, false); + } else { + debug("counters container not found in reply"); } } else { debug("headlines_callback: returned no XML object"); - f.innerHTML = xmlhttp.responseText; - update_all_counters(); + f.innerHTML = "<div class='whiteBox'>" + __('Could not update headlines (missing XML object)') + "</div>"; } if (typeof correctPNG != 'undefined') { @@ -122,6 +123,7 @@ function article_callback() { } else { debug("article_callback: returned no XML object"); + f.innerHTML = "<div class='whiteBox'>" + __('Could not display article (missing XML object)') + "</div>"; } } catch (e) { exception_error("article_callback", e); @@ -144,7 +146,7 @@ function article_callback() { debug("parsing piggybacked counters: " + counters); parse_counters(counters, false); } else { - update_all_counters(); + debug("counters container not found in reply"); } } @@ -253,6 +255,14 @@ function view(id, feed_id, skip_history) { } else if (cached_article) { + query = query + "&mode=prefetch_old"; + + debug(query); + + xmlhttp.open("GET", query, true); + xmlhttp.onreadystatechange=article_callback; + xmlhttp.send(null); + render_article(cached_article); } |