]> git.wh0rd.org - tt-rss.git/commitdiff
start work on showing number of unread articles in title
authorAndrew Dolgov <fox@bah.spb.su>
Sun, 23 Oct 2005 15:40:55 +0000 (16:40 +0100)
committerAndrew Dolgov <fox@bah.spb.su>
Sun, 23 Oct 2005 15:40:55 +0000 (16:40 +0100)
backend.php
tt-rss.js

index 6f5e2dd5962ee9fee3efc0d1b70bf5a81e7419cc..495cebe722ff0a9f66ec744804e4b54c39b2ad1c 100644 (file)
 
        /* FIXME this needs reworking */
 
+       function getGlobalCounters($link) {
+               $result = db_query($link, "SELECT count(id) as c_id FROM ttrss_entries
+                       WHERE unread = true");
+               $c_id = db_fetch_result($result, 0, "c_id");
+               print "<counter id='global-unread' counter='$c_id'/>";
+       }
+
        function getTagCounters($link) {
                $result = db_query($link, "SELECT tag_name,count(ttrss_entries.id) AS count
                        FROM ttrss_tags,ttrss_entries WHERE
                        getLabelCounters($link);
                        getFeedCounters($link);
                        getTagCounters($link);
+                       getGlobalCounters($link);
                        print "</rpc-reply>";
-
                }
 
                if ($subop == "mark") {
                        if (strchr($omode, "l")) getLabelCounters($link);
                        if (strchr($omode, "f")) getFeedCounters($link);
                        if (strchr($omode, "t")) getTagCounters($link);
+                       getGlobalCounters($link);
                        print "</rpc-reply>";
                }
                
index a760c4c12c979fb1b5af6e0bb2a3103df6f56b79..a27e8dee53f3576789ed0199fa748951dcbb3bab 100644 (file)
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -13,6 +13,8 @@ var search_mode = "";
 
 var display_tags = false;
 
+var global_unread = 0;
+
 /*@cc_on @*/
 /*@if (@_jscript_version >= 5)
 // JScript gives us Conditional compilation, we can cope with old IE versions.
@@ -68,8 +70,7 @@ function feedlist_callback() {
 function refetch_callback() {
        if (xmlhttp.readyState == 4) {
 
-               document.title = "Tiny Tiny RSS";
-               notify("All feeds updated.");
+//             document.title = "Tiny Tiny RSS";
 
                if (!xmlhttp.responseXML) {
                        notify("refetch_callback: backend did not return valid XML");
@@ -93,6 +94,13 @@ function refetch_callback() {
                        var feedu = f_document.getElementById("FEEDU-" + id);
                        var feedr = f_document.getElementById("FEEDR-" + id);
 
+/*                     TODO figure out how to update this from viewfeed.js->view()
+                       disabled for now...
+
+                       if (id == "global-unread") {
+                               global_unread = ctr;
+                       } */
+
                        if (feedctr && feedu && feedr) {
 
                                feedu.innerHTML = ctr;
@@ -108,6 +116,10 @@ function refetch_callback() {
                                }
                        }
                }  
+
+               updateTitle("");
+               notify("All feeds updated.");
+
        }
 }
 
@@ -129,7 +141,9 @@ function scheduleFeedUpdate(force) {
 
        notify("Updating feeds in background...");
 
-       document.title = "Tiny Tiny RSS - Updating...";
+//     document.title = "Tiny Tiny RSS - Updating...";
+
+       updateTitle("Updating...");
 
        var query_str = "backend.php?op=rpc&subop=";
 
@@ -181,6 +195,9 @@ function catchupAllFeeds() {
 
        feeds_frame.src = query_str;
 
+       global_unread = 0;
+       updateTitle();
+
 }
 
 function viewCurrentFeed(skip, subop) {
@@ -341,6 +358,19 @@ function localHotkeyHandler(keycode) {
 
 }
 
+function updateTitle(s) {
+       var tmp = "Tiny Tiny RSS";
+       
+       if (global_unread > 0) {
+               tmp = tmp + " (" + global_unread + ")";
+       }
+
+       if (s) {
+               tmp = tmp + " - " + s;
+       }
+       document.title = tmp;
+}
+
 function genericSanityCheck() {
 
        if (!xmlhttp) {