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);
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";
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];
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();
{
"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" },
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();
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'];
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();
<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=""/>