var _feed_cur_page = 0;
var _infscroll_disable = 0;
var _infscroll_request_sent = 0;
+var _search_query = false;
var counter_timeout_id = false;
function viewfeed(feed, subop, is_cat, offset) {
try {
if (is_cat == undefined) is_cat = false;
+ if (subop == undefined) subop = '';
// if (!offset) page_offset = 0;
_infscroll_request_sent = timestamp;
}
- enableHotkeys();
hideAuxDlg();
- closeInfoBox();
Form.enable("main_toolbar_form");
var query = "?op=viewfeed&feed=" + feed + "&" +
toolbar_query + "&subop=" + param_escape(subop);
- if ($("search_form")) {
- var search_query = Form.serialize("search_form");
- query = query + "&" + search_query;
- $("search_form").query.value = "";
- closeInfoBox(true);
+ if (_search_query) {
force_nocache = true;
+ query = query + "&" + _search_query;
+ _search_query = false;
}
// console.log("IS_CAT_STORED: " + activeFeedIsCat() + ", IS_CAT: " + is_cat);
var show_next_feed = getInitParam("on_catchup_show_next_feed") == "1";
if (show_next_feed) {
- // TODO: implement show_next_feed handling
+ var tree = dijit.byId("feedTree");
+ var nuf = tree.model.getNextUnreadFeed(feed, is_cat);
+
+ if (nuf) {
+ var nuf_id = tree.model.store.getValue(nuf, 'bare_id');
+
+ query = query + "&nuf=" + param_escape(nuf_id);
+ }
}
}
console.log(query);
- var container = $("headlinesInnerContainer");
-
var unread_ctr = -1;
if (!is_cat) unread_ctr = getFeedUnread(feed);
hideOrShowFeeds(getInitParam("hide_read_feeds") == 1);
+ setTimeout("timeout()", 5000);
+
} catch (e) {
exception_error("feedlist/init", e);
}
parameters: query,
onComplete: function(transport) {
try {
- handle_rpc_reply(transport);
+ handle_rpc_json(transport);
} catch (e) {
exception_error("viewfeed/getcounters", e);
}
}
}
-function parse_counters(reply, scheduled_call) {
+function parse_counters(elems, scheduled_call) {
try {
var feeds_found = 0;
- var elems = JSON.parse(reply.firstChild.nodeValue);
-
for (var l = 0; l < elems.length; l++) {
var id = elems[l].id
var has_img = elems[l].has_img;
var updated = elems[l].updated;
var title = elems[l].title;
-
+
if (id == "global-unread") {
global_unread = ctr;
updateTitle();
var treeItem;
- if (id == getActiveFeedId() && ctr > getFeedUnread(id) && scheduled_call) {
+ // TODO: enable new content notification for categories
+
+ if (!activeFeedIsCat() && id == getActiveFeedId()
+ && ctr > getFeedUnread(id) && scheduled_call) {
displayNewContentPrompt(id);
}
setFeedUnread(id, (kind == "cat"), ctr);
if (kind != "cat") {
- //setFeedValue(id, false, 'error', error);
+ setFeedValue(id, false, 'error', error);
setFeedValue(id, false, 'updated', updated);
if (id > 0) {
hideOrShowFeeds(getInitParam("hide_read_feeds") == 1);
- var feeds_stored = number_of_feeds;
-
- if (feeds_stored != feeds_found) {
- number_of_feeds = feeds_found;
-
- if (feeds_stored != 0 && feeds_found != 0) {
- console.log("Subscribed feed number changed, refreshing feedlist");
- setTimeout('updateFeedList()', 50);
- }
- }
-
} catch (e) {
exception_error("parse_counters", e);
}