]> git.wh0rd.org - tt-rss.git/blobdiff - tt-rss.js
various category/feed id clash fixes
[tt-rss.git] / tt-rss.js
index bbe91ee03bc6996d665932bf5b6fbcb2650eaa8b..9ac5220fea88ecca931b6d4d2e4b298101b21083 100644 (file)
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -6,15 +6,17 @@ var global_unread = -1;
 var active_title_text = "";
 var current_subtitle = "";
 var daemon_enabled = false;
+var daemon_refresh_only = false;
 var _qfd_deleted_feed = 0;
 var firsttime_update = true;
 var last_refetch = 0;
 var cookie_lifetime = 0;
 var active_feed_id = 0;
+var active_feed_is_cat = false;
 
 var xmlhttp = Ajax.getTransport();
 
-var init_params = new Array();
+var init_params = new Object();
 
 function toggleTags() {
        display_tags = !display_tags;
@@ -81,7 +83,7 @@ function refetch_callback() {
 
                        debug("refetch_callback: done");
 
-                       if (!daemon_enabled) {
+                       if (!daemon_enabled && !daemon_refresh_only) {
                                notify("All feeds updated.");
                                updateTitle("");
                        } else {
@@ -145,7 +147,7 @@ function backend_sanity_check_callback() {
 
 function scheduleFeedUpdate(force) {
 
-       if (!daemon_enabled) {
+       if (!daemon_enabled && !daemon_refresh_only) {
                notify("Updating feeds, please wait.", true);
                updateTitle("Updating");
        }
@@ -189,7 +191,7 @@ function scheduleFeedUpdate(force) {
                xmlhttp.send(null);
        } else {
                debug("xmlhttp busy");
-               printLockingError();
+               //printLockingError();
        }   
 }
 
@@ -237,20 +239,20 @@ function catchupAllFeeds() {
 
 }
 
-function viewCurrentFeed(skip, subop) {
+function viewCurrentFeed(subop) {
 
        if (getActiveFeedId()) {
-               viewfeed(getActiveFeedId(), skip, subop);
+               viewfeed(getActiveFeedId(), subop);
        } else {
                disableContainerChildren("headlinesToolbar", false, document);
-               viewfeed(-1, skip, subop); // FIXME
+               viewfeed(-1, subop); // FIXME
        }
        return false; // block unneeded form submits
 }
 
-function viewfeed(feed, skip, subop) {
+function viewfeed(feed, subop) {
        var f = window.frames["feeds-frame"];
-       f.viewfeed(feed, skip, subop);
+       f.viewfeed(feed, subop);
 }
 
 function timeout() {
@@ -268,7 +270,7 @@ function resetSearch() {
 
        if (searchbox.value != "" && getActiveFeedId()) {       
                searchbox.value = "";
-               viewfeed(getActiveFeedId(), 0, "");
+               viewfeed(getActiveFeedId(), "");
        }
 }
 
@@ -365,9 +367,20 @@ function resize_feeds_frame() {
        var f = document.getElementById("feeds-frame");
        var tf = document.getElementById("mainFooter");
        var th = document.getElementById("mainHeader");
-                
-       f.style.height = document.body.scrollHeight - tf.scrollHeight - 
-               th.scrollHeight - 50 + "px";
+
+       var footer_height = 0;
+       var header_height = 0;
+
+       if (tf) {
+               footer_height = tf.scrollHeight;
+       }
+
+       if (th) {
+               header_height = th.scrollHeight;
+       }       
+        
+       f.style.height = document.body.scrollHeight - footer_height - 
+               header_height - 50 + "px";
 }
 
 function init_second_stage() {
@@ -386,7 +399,8 @@ function init_second_stage() {
                dropboxSelect(tb.view_mode, getInitParam("toolbar_view_mode"));
                dropboxSelect(tb.limit, getInitParam("toolbar_limit"));
 
-               daemon_enabled = getInitParam("daemon_enabled");
+               daemon_enabled = getInitParam("daemon_enabled") == 1;
+               daemon_refresh_only = getInitParam("daemon_refresh_only") == 1;
 
                // FIXME should be callled after window resize
 
@@ -420,7 +434,7 @@ function quickMenuGo(opid) {
                }
        
                if (opid == "qmcSearch") {
-                       displayDlg("search", getActiveFeedId());
+                       displayDlg("search", getActiveFeedId() + ":" + activeFeedIsCat());
                        return;
                }
        
@@ -542,3 +556,19 @@ function parse_runtime_info(elem) {
                param = param.nextSibling;
        }
 }
+
+function catchupCurrentFeed() {
+
+       var fn = getFeedName(getActiveFeedId(), active_feed_is_cat);
+       
+       var str = "Mark all articles in " + fn + " as read?";
+
+/*     if (active_feed_is_cat) {
+               str = "Mark all articles in this category as read?";
+       } */
+
+       if (confirm(str)) {
+               return viewCurrentFeed(0, 'MarkAllRead')
+       }
+}
+