try {
if (!getActiveFeedId()) return;
- notify_progress("Loading, please wait...");
-
viewfeed(getActiveFeedId(), undefined, undefined, undefined,
undefined, _feed_cur_page+1);
// if (!offset) page_offset = 0;
+ var force_nocache = false;
+
var page_offset = 0;
if (offset > 0) {
var toolbar_form = document.forms["main_toolbar_form"];
var toolbar_query = Form.serialize("main_toolbar_form");
- if (document.forms["main_toolbar_form"].query) {
+ if (toolbar_form.query) {
+ if (toolbar_form.query.value != "") {
+ force_nocache = true;
+ }
toolbar_form.query.value = "";
}
var search_query = Form.serialize("search_form");
query = query + "&" + search_query;
closeInfoBox(true);
+ force_nocache = true;
}
// debug("IS_CAT_STORED: " + activeFeedIsCat() + ", IS_CAT: " + is_cat);
if (next_unread_feed && show_next_feed && !activeFeedIsCat()) {
query = query + "&nuf=" + param_escape(next_unread_feed);
- setActiveFeedId(next_unread_feed);
+ //setActiveFeedId(next_unread_feed);
+ feed = next_unread_feed;
}
}
query = query + "&omode=flc";
}
- if (!page_offset) {
- notify_progress("Loading, please wait...", true);
- }
-
var container = document.getElementById("headlinesInnerContainer");
- if (container && page_offset == 0) {
+ if (container && page_offset == 0 && !isCdmMode()) {
new Effect.Fade(container, {duration: 1, to: 0.01,
- queue: { position:'end', scope: 'FeED-' + feed, limit: 1 } } );
+ queue: { position:'end', scope: 'FEEDL-' + feed, limit: 1 } } );
}
- new Ajax.Request(query, {
- onComplete: function(transport) {
- headlines_callback2(transport, feed, is_cat, page_offset);
- } });
+ var unread_ctr = get_feed_unread(feed);
+ var cache_check = false;
+
+ if (unread_ctr != -1 && !page_offset && !force_nocache && !subop) {
+
+ var cache_prefix = "";
+
+ if (is_cat) {
+ cache_prefix = "C:";
+ } else {
+ cache_prefix = "F:";
+ }
+
+ cache_check = cache_check_param(cache_prefix + feed, unread_ctr);
+ debug("headline cache check: " + cache_check);
+ }
+
+ if (cache_check) {
+ var f = document.getElementById("headlines-frame");
+
+ clean_feed_selections();
+
+ setActiveFeedId(feed);
+
+ if (is_cat != undefined) {
+ active_feed_is_cat = is_cat;
+ }
+
+ if (!is_cat) {
+ var feedr = document.getElementById("FEEDR-" + feed);
+ if (feedr && !feedr.className.match("Selected")) {
+ feedr.className = feedr.className + "Selected";
+ }
+ }
+
+ f.innerHTML = cache_find_param(cache_prefix + feed, unread_ctr);
+
+ var query = "backend.php?op=rpc&subop=getAllCounters";
+
+ if (tagsAreDisplayed()) {
+ query = query + "&omode=tl";
+ } else {
+ query = query + "&omode=flc";
+ }
+
+ new Ajax.Request(query, {
+ onComplete: function(transport) {
+ try {
+ all_counters_callback2(transport);
+ } catch (e) {
+ exception_error("viewfeed/getcounters", e);
+ }
+ } });
+
+ } else {
+
+ if (!page_offset) {
+ notify_progress("Loading, please wait...", true);
+ }
+
+ new Ajax.Request(query, {
+ onComplete: function(transport) {
+ headlines_callback2(transport, feed, is_cat, page_offset);
+ } });
+ }
} catch (e) {
exception_error("viewfeed", e);
var elem = effect.element;
var cat = elem.id.replace("FCATLIST-", "");
var cap = document.getElementById("FCAP-" + cat);
-
+
if (Element.visible(elem)) {
- cap.innerHTML = cap.innerHTML.replace("...", "");
+ cap.innerHTML = cap.innerHTML.replace("…", "");
} else {
- if (cap.innerHTML.lastIndexOf("...") != cap.innerHTML.length-3) {
- cap.innerHTML = cap.innerHTML + "...";
+ if (cap.innerHTML.lastIndexOf("…") != cap.innerHTML.length-3) {
+ cap.innerHTML = cap.innerHTML + "…";
}
}
debug("some feed is open on feedlist refresh, reloading");
setTimeout("viewCurrentFeed()", 100);
} else {
- setTimeout("viewfeed(-3)", 100);
+ if (getInitParam("cdm_auto_catchup") != 1) {
+ setTimeout("viewfeed(-3)", 100);
+ }
+ }
+
+ if (getInitParam("theme") == "") {
+ setTimeout("hide_footer()", 5000);
}
} catch (e) {
exception_error("feedlist/init", e);
}
}
+
+function hide_footer_af(effect) {
+ try {
+ var c = document.getElementById("content-frame");
+
+ if (c) {
+ c.style.bottom = "0px";
+ } else {
+ var h = document.getElementById("headlines-frame");
+
+ if (h) {
+ h.style.bottom = "0px";
+ }
+ }
+
+ } catch (e) {
+ exception_error("hide_footer_af", e);
+ }
+}
+
+function hide_footer() {
+ try {
+ if (Element.visible("footer")) {
+ new Effect.Fade("footer", { afterFinish: hide_footer_af });
+ }
+ } catch (e) {
+ exception_error("hide_footer", e);
+ }
+}