<script type="text/javascript">
var last_updated = 0;
+var feeds_last_updated = 0;
var prefs_last_updated = 0;
function param_escape(arg) {
return escape(arg);
}
+function update_feeds() {
+
+ console.log("feeds update");
+
+ var requestUrl = localStorage["site_url"] + "/public.php?op=globalUpdateFeeds";
+
+ var xhr = new XMLHttpRequest();
+
+ xhr.open("POST", requestUrl, true);
+ xhr.send();
+
+ var d = new Date();
+ localStorage["last_feeds_updated"] = d.getTime();
+}
+
function update() {
+ console.log("update");
+
var d = new Date();
var login = localStorage["login"];
var single_user = localStorage["single_user"];
var xhr = new XMLHttpRequest();
-
xhr.open("POST", requestUrl, true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.send(params);
var update_interval;
var prefs_updated;
+ var feeds_update_interval = 30 * 60 * 1000;
if (localStorage["update_interval"])
update_interval = localStorage["update_interval"] * 60 * 1000;
prefs_updated != prefs_last_updated) {
last_updated = d.getTime();
- prefs_last_updated = prefs_updated;
try {
update();
} catch (e) {
- //
+ console.warn(e);
+ }
+ }
+
+ if (localStorage['update_feeds'] == 1 && (d.getTime() > feeds_last_updated + feeds_update_interval || prefs_updated != prefs_last_updated)) {
+
+ feeds_last_updated = d.getTime();
+
+ try {
+ update_feeds();
+ } catch (e) {
+ console.warn(e);
}
+
}
+ prefs_last_updated = prefs_updated;
+
window.setTimeout("timeout()", 1000);
}
{
"name": "Tiny Tiny RSS Notifier",
"background_page": "background.html",
- "version": "0.4.2",
+ "version": "0.5",
"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";
+ localStorage['update_feeds'] = (f.update_feeds.checked) ? "1" : "0";
var d = new Date();
else
f.single_user.checked = false;
+ if (localStorage['update_feeds'])
+ f.update_feeds.checked = localStorage['update_feeds'] == "1";
+ else
+ f.update_feeds.checked = false;
+
single_user_toggle();
var last_updated = $('last_updated');
d.setTime(localStorage["last_updated"]);
-
last_updated.innerHTML = d;
+
+ var feeds_last_updated = $('feeds-last-updated');
+
+ d.setTime(localStorage["last_feeds_updated"]);
+
+ feeds_last_updated.innerHTML = d;
}
</script>
<span class="note">(requires Tiny Tiny RSS 1.4.1 or trunk)</span>
</fieldset>
+ <fieldset>
+ <label>Periodically try to update tt-rss feeds:</label>
+ <input name="update_feeds" type="checkbox" value="1"/>
+ <span class="note">Please use this as a last resort method only in case you can't update your feeds <a target="_blank" href="http://tt-rss.org/wiki/UpdatingFeeds">in any other way</a>. Last updated: <span id='feeds-last-updated'>N/A</span></span>
+ </fieldset>
+
<input type="submit" value="Save"/>
</form>
- <p>Copyright © 2010
+ <p>Copyright © 2010-2012
<a target="_blank" href="http://tt-rss.org">Andrew Dolgov</a>.
Licensed under GNU GPL version 2.</p>