/*
 * jQuery Timer Plugin
 * http://www.evanbot.com/article/jquery-timer-plugin/23
 *
 * @version      1.0
 * @copyright    2009 Evan Byrne (http://www.evanbot.com)
 */ 

/*
*jQuery.timer = function(time,func,callback){
*	var a = {timer:setTimeout(func,time),callback:null}
*	if(typeof(callback) == 'function'){a.callback = callback;}
*	return a;
*};
*
*jQuery.clearTimer = function(a){
*	clearTimeout(a.timer);
*	if(typeof(a.callback) == 'function'){a.callback();};
*	return this;
*};
*/

jQuery.timer = function (interval, callback)
{ 

var interval = interval || 100;

if (!callback)
return false;

_timer = function (interval, callback) {
this.stop = function () {
clearInterval(self.id);
};

this.internalCallback = function () {
callback(self);
};

this.reset = function (val) {
if (self.id)
clearInterval(self.id);

var val = val || 100;
this.id = setInterval(this.internalCallback, val);
};

this.interval = interval;
this.id = setInterval(this.internalCallback, this.interval);

var self = this;
};

return new _timer(interval, callback);
};
