aboutsummaryrefslogtreecommitdiffstats
path: root/better-scrumdo.js
diff options
context:
space:
mode:
authorTeddy Wing2013-03-22 20:29:33 -0400
committerTeddy Wing2013-03-22 20:29:33 -0400
commit53bb3fe04864f713f43cde19dec442838e752ce3 (patch)
tree8a73d76d093deeae5796543020f3b0d8a44ef1ca /better-scrumdo.js
downloadScrumDo-Trellic-53bb3fe04864f713f43cde19dec442838e752ce3.tar.bz2
Initial commit. v0.0.1 functionality
Extension now includes everything I want in terms of reloading the ScrumDo board page. Additional features related to hotkeys to be added later on.
Diffstat (limited to 'better-scrumdo.js')
-rw-r--r--better-scrumdo.js56
1 files changed, 56 insertions, 0 deletions
diff --git a/better-scrumdo.js b/better-scrumdo.js
new file mode 100644
index 0000000..2ee70af
--- /dev/null
+++ b/better-scrumdo.js
@@ -0,0 +1,56 @@
+(function() {
+ var RELOAD_INTERVAL = 60000;
+ var last_tab_view_at = new Date();
+ var reload_interval_obj;
+
+ chrome.extension.onMessage.addListener(
+ function(request, sender, send_response) {
+ if (request.scrumdo_loaded) {
+ reload_page();
+
+ set_reload_interval();
+
+ send_response({ success: true });
+ }
+ }
+ );
+
+ chrome.extension.onMessage.addListener(
+ function(request, sender, send_response) {
+ if (request.scrumdo_unloaded) {
+ clear_reload_interval();
+
+ send_response({success: true});
+ }
+ }
+ );
+
+ var set_reload_interval = function() {
+ reload_interval_obj = window.setInterval(reload_page, RELOAD_INTERVAL);
+ };
+
+ var clear_reload_interval = function() {
+ window.clearInterval(reload_interval_obj);
+ };
+
+ var reload_page = function() {
+ now = new Date();
+
+ if (now - last_tab_view_at > RELOAD_INTERVAL) {
+ window.location.reload();
+
+ last_tab_view_at = new Date();
+ }
+ };
+
+ // Set initial reload interval
+ reload_interval_obj = window.setInterval(reload_page, RELOAD_INTERVAL);
+
+
+ // Conceptual Notes
+ // If tab is focused, setInterval
+ // If tab un-focuses, clearInterval();
+
+ // When tab is selected, if it has been longer than a minute since the last
+ // reload, do a reload
+})(); \ No newline at end of file