diff options
-rw-r--r-- | backend.php | 12 | ||||
-rw-r--r-- | tt-rss.js | 2 | ||||
-rw-r--r-- | viewfeed.js | 16 |
3 files changed, 21 insertions, 9 deletions
diff --git a/backend.php b/backend.php index b04b2619b..f83b71d5e 100644 --- a/backend.php +++ b/backend.php @@ -155,9 +155,9 @@ // in prefetch mode we only output requested cids, main article // just gets marked as read (it already exists in client cache) - if ($mode != "prefetch") { + if ($mode == "") { outputArticleXML($link, $id, $feed_id); - } else { + } else if ($mode == "prefetch") { catchupArticleById($link, $id, 0); } @@ -167,9 +167,11 @@ } } - print "<counters>"; - getAllCounters($link, $omode); - print "</counters>"; + if ($mode != "prefetch_old") { + print "<counters>"; + getAllCounters($link, $omode); + print "</counters>"; + } print "</reply>"; } @@ -50,7 +50,7 @@ function dlg_frefresh_callback() { if (getActiveFeedId() == _qfd_deleted_feed) { var h = document.getElementById("headlines-frame"); if (h) { - h.innerHTML = "<div class='whiteBox'>No feed selected.</div>"; + h.innerHTML = "<div class='whiteBox'>" + __('No feed selected.') + "</div>"; } } 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); } |