Skip to content

Instantly share code, notes, and snippets.

@davidguttman
Created October 14, 2010 21:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save davidguttman/627112 to your computer and use it in GitHub Desktop.
Save davidguttman/627112 to your computer and use it in GitHub Desktop.
function Refresher (opts) {
if (! (this instanceof arguments.callee)) {
return new arguments.callee(arguments);
}
var self = this;
self.settings = {
interval: opts.interval || 5*60*1000
};
self.refreshees = {};
self.add_refreshee = function(refreshee, callback, timer) {
self.refreshees[refreshee] = {callback: callback};
};
self.refresh = function() {
$.each(self.refreshees, function(i, refreshee) {
refreshee.callback();
});
};
function refresh_loop() {
setTimeout(function() {
self.refresh();
refresh_loop();
}, self.settings.interval);
}
refresh_loop();
// setInterval(function() {
// self.refresh();
// }, self.settings.interval);
return self;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment