var Countdown=new Class({options:{countplus:true,days:true,hours:true,minutes:true,seconds:true,target:false,formatDays:'%days% days ',formatHours:'%hours% hours ',formatMinutes:'%minutes% mins ',formatSeconds:'%seconds% secs',message:'Expired',onTick:Class.empty,onComplete:Class.empty},initialize:function(a,b){this.setOptions(b);this.el=a;this.now=Math.round($time()/1000);this.target=new Date(a.innerHTML).getTime()/1000;if(this.target=='NaN'){return}if(!this.target){return}this.remaining=this.target-this.now;if(this.remaining<0&&this.options.countplus==false){this.done();return}this.tick()},tick:function(){var a=this.remaining;this.getTime();this.display(this.time);if(this.remaining<=0&&this.options.countplus==false){this.done();return}if(a!=this.remaining){this.fireEvent('onTick',this.time)}(function(){this.tick()}.bind(this)).delay(500)},getTime:function(){var a=86400;var b=3600;var c=60;this.remaining=this.target-Math.round($time()/1000);if(this.remaining<=0){this.remaining=this.target-Math.round($time()/1000);this.remaining=this.remaining*(-1);var d=this.options.days?Math.floor(this.remaining/a):0;var e=this.options.hours?Math.floor((this.remaining-(d*a))/b):0;var f=this.options.minutes?Math.floor((this.remaining-(d*a)-(e*b))/c):0;var g=this.options.seconds?this.remaining-(d*a)-(e*b)-(f*c):0}else{var d=this.options.days?Math.floor(this.remaining/a):0;var e=this.options.hours?Math.floor((this.remaining-(d*a))/b):0;var f=this.options.minutes?Math.floor((this.remaining-(d*a)-(e*b))/c):0;var g=this.options.seconds?this.remaining-(d*a)-(e*b)-(f*c):0}this.time={days:d,hours:e,minutes:f,seconds:g}},display:function(){this.el.set("html",this.format())},format:function(){var a='';if(this.time.days>0){a+=this.options.formatDays.replace('%days%',this.time.days)}if(this.time.days>0||this.time.hours>0){a+=this.options.formatHours.replace('%hours%',this.time.hours)}if(this.time.days>0||this.time.hours>0||this.time.minutes>0){a+=this.options.formatMinutes.replace('%minutes%',this.time.minutes)}a+=this.options.formatSeconds.replace('%seconds%',this.time.seconds);return a},done:function(){this.el.setHTML(this.options.message);this.fireEvent('onComplete',this.options.message)}});Countdown.implement(new Options);Countdown.implement(new Events);
