]> git.wh0rd.org - tt-rss.git/commitdiff
notifier: fix icons; support single-user mode
authorAndrew Dolgov <fox@bah.org.ru>
Fri, 19 Feb 2010 20:33:15 +0000 (23:33 +0300)
committerAndrew Dolgov <fox@bah.org.ru>
Fri, 19 Feb 2010 20:33:15 +0000 (23:33 +0300)
utils/notifier/background.html
utils/notifier/images/alert.png [changed mode: 0644->0755]
utils/notifier/images/alert2.png [deleted file]
utils/notifier/images/error.png [changed mode: 0644->0755]
utils/notifier/manifest.json
utils/notifier/options.html

index fdca37e90fdc8814dbde6a5fd0d04f482fcd6a52..bee00560b4e45fa3321e41d42f936e81b278e628 100644 (file)
@@ -14,6 +14,9 @@ function param_escape(arg) {
 function update() {
        var d = new Date();
        var login = localStorage["login"];
+       var single_user = localStorage["single_user"];
+
+       if (single_user == "1") login = "admin";
 
        var requestUrl = localStorage["site_url"] + "/backend.php";
        var params = "op=getUnread&fresh=1&login=" + param_escape(login);
@@ -33,6 +36,12 @@ function update() {
                        var badge = new Object();
                        var badge_color = new Object();
 
+                       // init stuff
+                       icon.path = "images/normal.png";
+                       title.title = "";       
+                       badge.text = "";
+                       badge_color.color = [0, 0, 0, 0];
+
                        var show_badge = localStorage["show_badge"] == "1";
                        var show_fresh = localStorage["show_fresh"] == "1";
                
@@ -41,21 +50,24 @@ function update() {
 
                                var unread = parseInt(response[0]);
 
-                               var fresh;
+                               if (isNaN(unread)) unread = 0;
 
+                               var fresh;
+       
                                if (response.length == 2)
                                        fresh = parseInt(response[1]);
                                else
                                        fresh = 0;
 
+                               if (isNaN(fresh)) fresh = 0;
+
                                if (unread > 0) {
                                        icon.path = "images/alert.png";
                                        title.title = "You have %s unread articles.".replace("%s", unread);
 
-                                       if (show_fresh) {
+                                       if (show_fresh && fresh > 0) {
                                                badge.text = fresh + "";
                                                badge_color.color = [0, 200, 0, 255];
-
                                        } else {
                                                badge.text = unread + "";
                                                badge_color.color = [255, 0, 0, 255];
@@ -67,12 +79,9 @@ function update() {
                                        var errorMsg = xhr.responseText.split(";")[1];
 
                                        title.title = "Error: %s.".replace("%s", errorMsg.trim());
-                                       badge.text = "";
 
                                } else {
-                                       icon.path = "images/normal.png";
                                        title.title = "You have no unread articles.";
-                                       badge.text = "";
                                }
 
                                localStorage["last_updated"] = d.getTime();
old mode 100644 (file)
new mode 100755 (executable)
index 7922898..f021b76
Binary files a/utils/notifier/images/alert.png and b/utils/notifier/images/alert.png differ
diff --git a/utils/notifier/images/alert2.png b/utils/notifier/images/alert2.png
deleted file mode 100644 (file)
index 450c8ee..0000000
Binary files a/utils/notifier/images/alert2.png and /dev/null differ
old mode 100644 (file)
new mode 100755 (executable)
index 17eadd9..b9d7be0
Binary files a/utils/notifier/images/error.png and b/utils/notifier/images/error.png differ
index 9142910ceadd4058837f8eb4234d1fec324ad2b0..191842a3e81a0db757dfaf83ced0c0f257fae556 100644 (file)
@@ -1,7 +1,7 @@
 {
   "name": "Tiny Tiny RSS Notifier",
   "background_page": "background.html",
-  "version": "0.3",
+  "version": "0.4",
   "description": "This extension displays the number of unread articles in your Tiny Tiny RSS installation",
   "options_page": "options.html",
   "icons": { "48": "images/icon.png", "128": "images/icon.png" },
index 014c2a3c72916936e744073047aa386945226130..af7de024404a5ce1f037fb8e21e639751db04f26 100644 (file)
@@ -39,6 +39,7 @@ function save() {
 
        localStorage['show_badge'] = (f.show_badge.checked) ? "1" : "0";
        localStorage['show_fresh'] = (f.show_fresh.checked) ? "1" : "0";
+       localStorage['single_user'] = (f.single_user.checked) ? "1" : "0";
 
        var d = new Date();
 
@@ -49,6 +50,12 @@ function save() {
        return false;
 }
 
+function single_user_toggle() {
+       var f = document.forms['options'];
+
+       f.login.disabled = f.single_user.checked;
+}
+
 function init() {
        var f = document.forms['options'];
 
@@ -77,6 +84,13 @@ function init() {
        else
                f.show_fresh.checked = false;
 
+       if (localStorage['single_user'])
+               f.single_user.checked = localStorage['single_user'] == "1";
+       else
+               f.single_user.checked = false;
+
+       single_user_toggle();
+
        var last_updated = $('last_updated');
 
        var d = new Date();
@@ -141,6 +155,12 @@ fieldset span.note {
                        <input name="login" size="30" value=""/>
                </fieldset>
 
+               <fieldset>
+                       <label>Single-user mode:</label>
+                       <input name="single_user" onchange="single_user_toggle()" 
+                               type="checkbox"  value="1"/>
+               </fieldset>
+
                <fieldset>
                        <label>Update interval (in minutes):</label>
                        <input name="update_interval" size="30" value=""/>