summaryrefslogtreecommitdiff
path: root/js/feedlist.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/feedlist.js')
-rw-r--r--js/feedlist.js89
1 files changed, 33 insertions, 56 deletions
diff --git a/js/feedlist.js b/js/feedlist.js
index e227c9386..51082f827 100644
--- a/js/feedlist.js
+++ b/js/feedlist.js
@@ -88,8 +88,6 @@ function viewfeed(feed, method, is_cat, offset, background, infscroll_req) {
_infscroll_request_sent = timestamp;
}
-
- hideAuxDlg();
}
Form.enable("main_toolbar_form");
@@ -125,24 +123,23 @@ function viewfeed(feed, method, is_cat, offset, background, infscroll_req) {
Form.enable("main_toolbar_form");
- if (!offset)
- if (!is_cat) {
- if (!setFeedExpandoIcon(feed, is_cat, 'images/indicator_white.gif'))
- notify_progress("Loading, please wait...", true);
- } else {
+ if (!setFeedExpandoIcon(feed, is_cat,
+ (is_cat) ? 'images/indicator_tiny.gif' : 'images/indicator_white.gif'))
notify_progress("Loading, please wait...", true);
- }
}
query += "&cat=" + is_cat;
console.log(query);
+ setActiveFeedId(feed, is_cat);
+
new Ajax.Request("backend.php", {
parameters: query,
onComplete: function(transport) {
setFeedExpandoIcon(feed, is_cat, 'images/blank_icon.gif');
headlines_callback2(transport, offset, background, infscroll_req);
+ PluginHost.run(PluginHost.HOOK_FEED_LOADED, [feed, is_cat]);
} });
} catch (e) {
@@ -154,7 +151,8 @@ function feedlist_init() {
try {
console.log("in feedlist init");
- hideOrShowFeeds(getInitParam("hide_read_feeds") == 1);
+ loading_set_progress(50);
+
document.onkeydown = hotkey_handler;
setTimeout("hotkey_prefix_timeout()", 5*1000);
@@ -211,23 +209,6 @@ function request_counters(force) {
}
}
-function displayNewContentPrompt(id) {
- try {
-
- var msg = "<a href='#' onclick='viewCurrentFeed()'>" +
- __("New articles available in this feed (click to show)") + "</a>";
-
- msg = msg.replace("%s", getFeedName(id));
-
- $('auxDlg').innerHTML = msg;
-
- new Effect.Appear('auxDlg', {duration : 0.5});
-
- } catch (e) {
- exception_error("displayNewContentPrompt", e);
- }
-}
-
function parse_counters(elems, scheduled_call) {
try {
for (var l = 0; l < elems.length; l++) {
@@ -250,10 +231,6 @@ function parse_counters(elems, scheduled_call) {
continue;
}
- if (id == getActiveFeedId() && ctr > getFeedUnread(id) && scheduled_call) {
- displayNewContentPrompt(id);
- }
-
if (getFeedUnread(id, (kind == "cat")) != ctr ||
(kind == "cat")) {
}
@@ -408,8 +385,8 @@ function getNextUnreadFeed(feed, is_cat) {
}
}
-function catchupCurrentFeed() {
- return catchupFeed(getActiveFeedId(), activeFeedIsCat());
+function catchupCurrentFeed(mode) {
+ catchupFeed(getActiveFeedId(), activeFeedIsCat(), mode);
}
function catchupFeedInGroup(id) {
@@ -428,11 +405,26 @@ function catchupFeedInGroup(id) {
}
}
-function catchupFeed(feed, is_cat) {
+function catchupFeed(feed, is_cat, mode) {
try {
if (is_cat == undefined) is_cat = false;
- var str = __("Mark all articles in %s as read?");
+ var str = false;
+
+ switch (mode) {
+ case "1day":
+ str = __("Mark all articles in %s older than 1 day as read?");
+ break;
+ case "1week":
+ str = __("Mark all articles in %s older than 1 week as read?");
+ break;
+ case "2week":
+ str = __("Mark all articles in %s older than 2 weeks as read?");
+ break;
+ default:
+ str = __("Mark all articles in %s as read?");
+ }
+
var fn = getFeedName(feed, is_cat);
str = str.replace("%s", fn);
@@ -441,20 +433,8 @@ function catchupFeed(feed, is_cat) {
return;
}
- var max_id = 0;
-
- if (feed == getActiveFeedId() && is_cat == activeFeedIsCat()) {
- $$("#headlines-frame > div[id*=RROW]").each(
- function(child) {
- var id = parseInt(child.id.replace("RROW-", ""));
-
- if (id > max_id) max_id = id;
- }
- );
- }
-
var catchup_query = "?op=rpc&method=catchupFeed&feed_id=" +
- feed + "&is_cat=" + is_cat + "&max_id=" + max_id;
+ feed + "&is_cat=" + is_cat + "&mode=" + mode;
console.log(catchup_query);
@@ -465,15 +445,6 @@ function catchupFeed(feed, is_cat) {
onComplete: function(transport) {
handle_rpc_json(transport);
- if (feed == getActiveFeedId() && is_cat == activeFeedIsCat()) {
-
- $$("#headlines-frame > div[id*=RROW][class*=Unread]").each(
- function(child) {
- child.removeClassName("Unread");
- }
- );
- }
-
var show_next_feed = getInitParam("on_catchup_show_next_feed") == "1";
if (show_next_feed) {
@@ -482,6 +453,10 @@ function catchupFeed(feed, is_cat) {
if (nuf) {
viewfeed(nuf, '', is_cat);
}
+ } else {
+ if (feed == getActiveFeedId() && is_cat == activeFeedIsCat()) {
+ viewCurrentFeed();
+ }
}
notify("");
@@ -518,3 +493,5 @@ function decrementFeedCounter(feed, is_cat) {
exception_error("decrement_feed_counter", e);
}
}
+
+