diff options
Diffstat (limited to 'tt-rss.js')
-rw-r--r-- | tt-rss.js | 50 |
1 files changed, 50 insertions, 0 deletions
@@ -1250,3 +1250,53 @@ function showFeedsWithErrors() { displayDlg('feedUpdateErrors'); } +function handle_rpc_reply(transport, scheduled_call) { + try { + if (offline_mode) return false; + + if (!transport.responseText && db) { + offlineConfirmModeChange(); + return false; + } + + if (transport.responseXML) { + + if (!transport_error_check(transport)) return false; + + var message = transport.responseXML.getElementsByTagName("message")[0]; + + if (message) { + message = message.firstChild.nodeValue; + + if (message == "UPDATE_COUNTERS") { + setInitParam("last_article_id", -1); + _force_scheduled_update = true; + } + } + + var counters = transport.responseXML.getElementsByTagName("counters")[0]; + + if (counters) + parse_counters(counters, scheduled_call); + + var runtime_info = transport.responseXML.getElementsByTagName("runtime-info")[0]; + + if (runtime_info) + parse_runtime_info(runtime_info); + + if (feedsSortByUnread()) + resort_feedlist(); + + hideOrShowFeeds(getInitParam("hide_read_feeds") == 1); + + } else { + notify_error("Error communicating with server."); + } + + } catch (e) { + exception_error("handle_rpc_reply", e, transport); + } + + return true; +} + |