(function(a){function k(){this.regional=[];this.regional[""]={labels:["Years","Months","Weeks","Days","Hours","Minutes","Seconds"],labels1:["Year","Month","Week","Day","Hour","Minute","Second"],compactLabels:["y","m","w","d"],whichLabels:null,timeSeparator:":",isRTL:false};this._defaults={until:null,since:null,timezone:null,serverSync:null,format:"dHMS",layout:"",compact:false,significant:0,description:"",expiryUrl:"",expiryText:"",alwaysExpire:false,onExpiry:null,onTick:null,tickInterval:1};a.extend(this._defaults,this.regional[""]);this._serverSyncs=[]}var i="countdown",b=0,d=1,h=2,g=3,e=4,f=5,c=6;a.extend(k.prototype,{markerClassName:"hasCountdown",_timer:setInterval(function(){a.countdown._updateTargets()},980),_timerTargets:[],setDefaults:function(a){this._resetExtraLabels(this._defaults,a);j(this._defaults,a||{})},UTCDate:function(c,a,e,h,d,f,g,i){if(typeof a=="object"&&a.constructor==Date){i=a.getMilliseconds();g=a.getSeconds();f=a.getMinutes();d=a.getHours();h=a.getDate();e=a.getMonth();a=a.getFullYear()}var b=new Date;b.setUTCFullYear(a);b.setUTCDate(1);b.setUTCMonth(e||0);b.setUTCDate(h||1);b.setUTCHours(d||0);b.setUTCMinutes((f||0)-(Math.abs(c)<30?c*60:c));b.setUTCSeconds(g||0);b.setUTCMilliseconds(i||0);return b},periodsToSeconds:function(a){return a[0]*31557600+a[1]*2629800+a[2]*604800+a[3]*86400+a[4]*3600+a[5]*60+a[6]},_settingsCountdown:function(d,b){if(!b)return a.countdown._defaults;var c=a.data(d,i);return b=="all"?c.options:c.options[b]},_attachCountdown:function(b,d){var c=a(b);if(c.hasClass(this.markerClassName))return;c.addClass(this.markerClassName);var e={options:a.extend({},d),_periods:[0,0,0,0,0,0,0]};a.data(b,i,e);this._changeCountdown(b)},_addTarget:function(a){!this._hasTarget(a)&&this._timerTargets.push(a)},_hasTarget:function(b){return a.inArray(b,this._timerTargets)>-1},_removeTarget:function(b){this._timerTargets=a.map(this._timerTargets,function(a){return a==b?null:a})},_updateTargets:function(){for(var a=this._timerTargets.length-1;a>=0;a--)this._updateCountdown(this._timerTargets[a])},_updateCountdown:function(c,b){var h=a(c);b=b||a.data(c,i);if(!b)return;h.html(this._generateHTML(b));h[(this._get(b,"isRTL")?"add":"remove")+"Class"]("countdown_rtl");var k=this._get(b,"onTick");if(k){var j=b._hold!="lap"?b._periods:this._calculatePeriods(b,b._show,this._get(b,"significant"),new Date),d=this._get(b,"tickInterval");(d==1||this.periodsToSeconds(j)%d==0)&&k.apply(c,[j])}var l=b._hold!="pause"&&(b._since?b._now.getTime()<b._since.getTime():b._now.getTime()>=b._until.getTime());if(l&&!b._expiring){b._expiring=true;if(this._hasTarget(c)||this._get(b,"alwaysExpire")){this._removeTarget(c);var g=this._get(b,"onExpiry");g&&g.apply(c,[]);var e=this._get(b,"expiryText");if(e){var m=this._get(b,"layout");b.options.layout=e;this._updateCountdown(c,b);b.options.layout=m}var f=this._get(b,"expiryUrl");if(f)window.location=f}b._expiring=false}else b._hold=="pause"&&this._removeTarget(c);a.data(c,i,b)},_changeCountdown:function(d,c,f){c=c||{};if(typeof c=="string"){var g=c;c={};c[g]=f}var b=a.data(d,i);if(b){this._resetExtraLabels(b.options,c);j(b.options,c);this._adjustSettings(d,b);a.data(d,i,b);var e=new Date;(b._since&&b._since<e||b._until&&b._until>e)&&this._addTarget(d);this._updateCountdown(d,b)}},_resetExtraLabels:function(c,d){var b=false;for(var a in d)if(a!="whichLabels"&&a.match(/[Ll]abels/)){b=true;break}if(b)for(var a in c)if(a.match(/[Ll]abels[0-9]/))c[a]=null},_adjustSettings:function(i,a){for(var e,c=this._get(a,"serverSync"),b=0,g=null,f=0;f<this._serverSyncs.length;f++)if(this._serverSyncs[f][0]==c){g=this._serverSyncs[f][1];break}if(g!=null){b=c?g:0;e=new Date}else{var h=c?c.apply(i,[]):null;e=new Date;b=h?e.getTime()-h.getTime():0;this._serverSyncs.push([c,b])}var d=this._get(a,"timezone");d=d==null?-e.getTimezoneOffset():d;a._since=this._get(a,"since");if(a._since!=null){a._since=this.UTCDate(d,this._determineTime(a._since,null));a._since&&b&&a._since.setMilliseconds(a._since.getMilliseconds()+b)}a._until=this.UTCDate(d,this._determineTime(this._get(a,"until"),e));b&&a._until.setMilliseconds(a._until.getMilliseconds()+b);a._show=this._determineShow(a)},_destroyCountdown:function(b){var c=a(b);if(!c.hasClass(this.markerClassName))return;this._removeTarget(b);c.removeClass(this.markerClassName).empty();a.removeData(b,i)},_pauseCountdown:function(a){this._hold(a,"pause")},_lapCountdown:function(a){this._hold(a,"lap")},_resumeCountdown:function(a){this._hold(a,null)},_hold:function(d,e){var b=a.data(d,i);if(b){if(b._hold=="pause"&&!e){b._periods=b._savePeriods;var c=b._since?"-":"+";b[b._since?"_since":"_until"]=this._determineTime(c+b._periods[0]+"y"+c+b._periods[1]+"o"+c+b._periods[2]+"w"+c+b._periods[3]+"d"+c+b._periods[4]+"h"+c+b._periods[5]+"m"+c+b._periods[6]+"s");this._addTarget(d)}b._hold=e;b._savePeriods=e=="pause"?b._periods:null;a.data(d,i,b);this._updateCountdown(d,b)}},_getTimesCountdown:function(c){var b=a.data(c,i);return!b?null:!b._hold?b._periods:this._calculatePeriods(b,b._show,this._get(b,"significant"),new Date)},_get:function(c,b){return c.options[b]!=null?c.options[b]:a.countdown._defaults[b]},_determineTime:function(b,f){var d=function(b){var a=new Date;a.setTime(a.getTime()+b*1e3);return a},e=function(e){e=e.toLowerCase();var d=new Date,g=d.getFullYear(),f=d.getMonth(),c=d.getDate(),k=d.getHours(),i=d.getMinutes(),j=d.getSeconds(),h=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g,b=h.exec(e);while(b){switch(b[2]||"s"){case"s":j+=parseInt(b[1],10);break;case"m":i+=parseInt(b[1],10);break;case"h":k+=parseInt(b[1],10);break;case"d":c+=parseInt(b[1],10);break;case"w":c+=parseInt(b[1],10)*7;break;case"o":f+=parseInt(b[1],10);c=Math.min(c,a.countdown._getDaysInMonth(g,f));break;case"y":g+=parseInt(b[1],10);c=Math.min(c,a.countdown._getDaysInMonth(g,f))}b=h.exec(e)}return new Date(g,f,c,k,i,j,0)},c=b==null?f:typeof b=="string"?e(b):typeof b=="number"?d(b):b;c&&c.setMilliseconds(0);return c},_getDaysInMonth:function(b,a){return 32-(new Date(b,a,32)).getDate()},_normalLabels:function(a){return a},_generateHTML:function(i){var m=this._get(i,"significant");i._periods=i._hold?i._periods:this._calculatePeriods(i,i._show,m,new Date);for(var s=false,v=0,p=m,k=a.extend({},i._show),j=b;j<=c;j++){s|=i._show[j]=="?"&&i._periods[j]>0;k[j]=i._show[j]=="?"&&!s?null:i._show[j];v+=k[j]?1:0;p-=i._periods[j]>0?1:0}for(var n=[false,false,false,false,false,false,false],j=c;j>=b;j--)if(i._show[j])if(i._periods[j])n[j]=true;else{n[j]=p>0;p--}var q=this._get(i,"compact"),x=this._get(i,"layout"),w=q?this._get(i,"compactLabels"):this._get(i,"labels"),u=this._get(i,"whichLabels")||this._normalLabels,r=this._get(i,"timeSeparator"),t=this._get(i,"description")||"",o=function(b){var c=a.countdown._get(i,"compactLabels"+u(i._periods[b]));return k[b]?i._periods[b]+(c?c[b]:w[b])+" ":""},l=function(b){var c=a.countdown._get(i,"labels"+u(i._periods[b]));return!m&&k[b]||m&&n[b]?'<span class="countdown_section"><span class="countdown_amount">'+i._periods[b]+"</span><br/>"+(c?c[b]:w[b])+"</span>":""};return x?this._buildLayout(i,k,x,q,m,n):(q?'<span class="countdown_row countdown_amount'+(i._hold?" countdown_holding":"")+'">'+o(b)+o(d)+o(h)+o(g)+(k[e]?this._minDigits(i._periods[e],2):"")+(k[f]?(k[e]?r:"")+this._minDigits(i._periods[f],2):"")+(k[c]?(k[e]||k[f]?r:"")+this._minDigits(i._periods[c],2):""):'<span class="countdown_row countdown_show'+(m||v)+(i._hold?" countdown_holding":"")+'">'+l(b)+l(d)+l(h)+l(g)+l(e)+l(f)+l(c))+"</span>"+(t?'<span class="countdown_row countdown_descr">'+t+"</span>":"")},_buildLayout:function(i,u,t,o,n,q){for(var s=this._get(i,o?"compactLabels":"labels"),r=this._get(i,"whichLabels")||this._normalLabels,k=function(b){return(a.countdown._get(i,(o?"compactLabels":"labels")+r(i._periods[b]))||s)[b]},j=function(b,a){return Math.floor(b/a)%10},v={desc:this._get(i,"description"),sep:this._get(i,"timeSeparator"),yl:k(b),yn:i._periods[b],ynn:this._minDigits(i._periods[b],2),ynnn:this._minDigits(i._periods[b],3),y1:j(i._periods[b],1),y10:j(i._periods[b],10),y100:j(i._periods[b],100),y1000:j(i._periods[b],1e3),ol:k(d),on:i._periods[d],onn:this._minDigits(i._periods[d],2),onnn:this._minDigits(i._periods[d],3),o1:j(i._periods[d],1),o10:j(i._periods[d],10),o100:j(i._periods[d],100),o1000:j(i._periods[d],1e3),wl:k(h),wn:i._periods[h],wnn:this._minDigits(i._periods[h],2),wnnn:this._minDigits(i._periods[h],3),w1:j(i._periods[h],1),w10:j(i._periods[h],10),w100:j(i._periods[h],100),w1000:j(i._periods[h],1e3),dl:k(g),dn:i._periods[g],dnn:this._minDigits(i._periods[g],2),dnnn:this._minDigits(i._periods[g],3),d1:j(i._periods[g],1),d10:j(i._periods[g],10),d100:j(i._periods[g],100),d1000:j(i._periods[g],1e3),hl:k(e),hn:i._periods[e],hnn:this._minDigits(i._periods[e],2),hnnn:this._minDigits(i._periods[e],3),h1:j(i._periods[e],1),h10:j(i._periods[e],10),h100:j(i._periods[e],100),h1000:j(i._periods[e],1e3),ml:k(f),mn:i._periods[f],mnn:this._minDigits(i._periods[f],2),mnnn:this._minDigits(i._periods[f],3),m1:j(i._periods[f],1),m10:j(i._periods[f],10),m100:j(i._periods[f],100),m1000:j(i._periods[f],1e3),sl:k(c),sn:i._periods[c],snn:this._minDigits(i._periods[c],2),snnn:this._minDigits(i._periods[c],3),s1:j(i._periods[c],1),s10:j(i._periods[c],10),s100:j(i._periods[c],100),s1000:j(i._periods[c],1e3)},l=t,m=b;m<=c;m++){var p="yowdhms".charAt(m),w=new RegExp("\\{"+p+"<\\}(.*)\\{"+p+">\\}","g");l=l.replace(w,!n&&u[m]||n&&q[m]?"$1":"")}a.each(v,function(b,c){var a=new RegExp("\\{"+b+"\\}","g");l=l.replace(a,c)});return l},_minDigits:function(a,b){a=""+a;if(a.length>=b)return a;a="0000000000"+a;return a.substr(a.length-b)},_determineShow:function(j){var a=this._get(j,"format"),i=[];i[b]=a.match("y")?"?":a.match("Y")?"!":null;i[d]=a.match("o")?"?":a.match("O")?"!":null;i[h]=a.match("w")?"?":a.match("W")?"!":null;i[g]=a.match("d")?"?":a.match("D")?"!":null;i[e]=a.match("h")?"?":a.match("H")?"!":null;i[f]=a.match("m")?"?":a.match("M")?"!":null;i[c]=a.match("s")?"?":a.match("S")?"!":null;return i},_calculatePeriods:function(l,o,q,i){l._now=i;l._now.setMilliseconds(0);var k=new Date(l._now.getTime());if(l._since)if(i.getTime()<l._since.getTime())l._now=i=k;else i=l._since;else{k.setTime(l._until.getTime());if(i.getTime()>l._until.getTime())l._now=i=k}var j=[0,0,0,0,0,0,0];if(o[b]||o[d]){var t=a.countdown._getDaysInMonth(i.getFullYear(),i.getMonth()),v=a.countdown._getDaysInMonth(k.getFullYear(),k.getMonth()),x=k.getDate()==i.getDate()||k.getDate()>=Math.min(t,v)&&i.getDate()>=Math.min(t,v),w=function(a){return(a.getHours()*60+a.getMinutes())*60+a.getSeconds()},y=Math.max(0,(k.getFullYear()-i.getFullYear())*12+k.getMonth()-i.getMonth()+(k.getDate()<i.getDate()&&!x||x&&w(k)<w(i)?-1:0));j[b]=o[b]?Math.floor(y/12):0;j[d]=o[d]?y-j[b]*12:0;i=new Date(i.getTime());var A=i.getDate()==t,s=a.countdown._getDaysInMonth(i.getFullYear()+j[b],i.getMonth()+j[d]);i.getDate()>s&&i.setDate(s);i.setFullYear(i.getFullYear()+j[b]);i.setMonth(i.getMonth()+j[d]);A&&i.setDate(s)}var n=Math.floor((k.getTime()-i.getTime())/1e3),p=function(a,b){j[a]=o[a]?Math.floor(n/b):0;n-=j[a]*b};p(h,604800);p(g,86400);p(e,3600);p(f,60);p(c,1);if(n>0&&!l._since)for(var z=[1,12,4.3482,7,24,60,60],r=c,u=1,m=c;m>=b;m--){if(o[m]){if(j[r]>=u){j[r]=0;n=1}if(n>0){j[m]++;n=0;r=m;u=1}}u*=z[m]}if(q)for(var m=b;m<=c;m++)if(q&&j[m])q--;else if(!q)j[m]=0;return j}});function j(b,c){a.extend(b,c);for(var d in c)if(c[d]==null)b[d]=null;return b}a.fn.countdown=function(b){var c=Array.prototype.slice.call(arguments,1);return b=="getTimes"||b=="settings"?a.countdown["_"+b+"Countdown"].apply(a.countdown,[this[0]].concat(c)):this.each(function(){if(typeof b=="string")a.countdown["_"+b+"Countdown"].apply(a.countdown,[this].concat(c));else a.countdown._attachCountdown(this,b)})};a.countdown=new k})(jQuery);
