Your IP : 216.73.216.219


Current Path : /home/chauffn/vuzelia/2023/media/plg_system_nrframework/js/
Upload File :
Current File : /home/chauffn/vuzelia/2023/media/plg_system_nrframework/js/countdown.js

document.addEventListener("DOMContentLoaded",function(t){function e(a,t){var s,i,o=this;function r(){var t=Date.now()-s,e=new Date(a.date),n=new Date;if(u.nowPassedTarget(n,e))return h.finish(a),o.stop(),!1;h.tick(a),s+=o.interval,i=setTimeout(r,Math.max(0,o.interval-t))}this.interval=t,this.start=function(){s=Date.now()+this.interval,i=setTimeout(r,this.interval)},this.stop=function(){clearTimeout(i)}}var u={MILLIS_IN_DAY:864e5,MILLIS_IN_HOUR:36e5,MILLIS_IN_MINUTE:6e4,MILLIS_IN_SECOND:1e3,SECONDS_IN_HOUR:3600,SECONDS_IN_MINUTE:60,MINUTES_IN_HOUR:60,HOURS_IN_DAY:24,MONTHS_IN_YEAR:12,getTimerData:function(t){var e=t.tags;e=JSON.parse(e);var n=new Date(t.date),a=new Date,s=n-a,i=this.convertDateToObject(n),o=this.convertDateToObject(a);if(this.nowPassedTarget(a,n))return t.ticker.stop(),!1;var r=i.year-o.year,u=i.month-o.month,h=i.day-o.day,I=i.hours-o.hours,c=i.minutes-o.minutes,_=i.seconds-o.seconds;if(_<0&&(c--,_+=this.SECONDS_IN_MINUTE),c<0&&(I--,c+=this.MINUTES_IN_HOUR),I<0&&(h--,I+=this.HOURS_IN_DAY),h<0){u--;var d=this.calculateDaysInThisMonth(o.year,o.month),D=this.calculateDaysInPreviousMonth(i.year,i.month);h+=D<d?d:D}u<0&&(r--,u+=this.MONTHS_IN_YEAR);var N=(I*this.SECONDS_IN_HOUR+c*this.SECONDS_IN_MINUTE+_)*this.MILLIS_IN_SECOND,l=new Date(Date.UTC(o.year+r,o.month-1,2==o.month&&29==o.day&&1!=new Date(o.year+r,1,29).getMonth()?28:o.day,o.hours,o.minutes,o.seconds)),M=l.valueOf()-a.valueOf(),f=new Date(n.valueOf()-h*this.MILLIS_IN_DAY-N).valueOf()-l.valueOf(),S={},T=s;return 1!=e.years&&1!=e.months||(T-=M),1==e.years?S.years=r:1==e.months&&(u+=r*this.MONTHS_IN_YEAR),1==e.months?(T-=f,S.months=u):h=Math.floor(T/this.MILLIS_IN_DAY),1==e.days&&(S.days=Math.floor(T/this.MILLIS_IN_DAY),T-=h*this.MILLIS_IN_DAY),1==e.hours&&(S.hours=Math.floor(T/this.MILLIS_IN_HOUR),T-=S.hours*this.MILLIS_IN_HOUR),1==e.minutes&&(S.minutes=Math.floor(T/this.MILLIS_IN_MINUTE),T-=S.minutes*this.MILLIS_IN_MINUTE),S.seconds=Math.floor(T/this.MILLIS_IN_SECOND),S},nowPassedTarget:function(t,e){var n=new Date(t).getTime();return new Date(e).getTime()<n},timerDone:function(t){return 0==t||0==t.years&&0==t.months&&0==t.days&&0==t.hours&&0==t.minutes&&0==t.seconds},convertDateToObject:function(t){return{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate(),hours:t.getUTCHours(),minutes:t.getUTCMinutes(),seconds:t.getUTCSeconds()}},calculateDaysInPreviousMonth:function(t,e){return(e-=2)<0&&t--,new Date(Date.UTC(t,e+1,0)).getUTCDate()},calculateDaysInThisMonth:function(t,e){return 12==e&&(t++,e=0),new Date(Date.UTC(t,e,0)).getUTCDate()}},h={countdowns:[],init:function(){var t=document.querySelectorAll(".nrf-countdown.live:not(.done)");if(0==t.length)return!1;this.countdowns=this.getAllCountdownInstancesData(t),this.render()},getAllCountdownInstancesData:function(t){for(var e=[],n=0;n<t.length;n++){var a=t[n],s={elem:a,date:a.getAttribute("data-date"),finish_text:a.getAttribute("data-finish-text"),now:a.getAttribute("data-now"),tags:a.getAttribute("data-tags")};e.push(s)}return e},render:function(){for(var t=this.countdowns,e=0,n=Object.keys(t);e<n.length;e++){var a=t[n[e]];this.startCountdown(a)}},startCountdown:function(t){t.ticker=new e(t,u.MILLIS_IN_SECOND),t.ticker.start()},tick:function(t){for(var e=t.elem,n=u.getTimerData(t),a=0,s=Object.keys(n);a<s.length;a++){var i=s[a],o=e.querySelector("."+i);null!==o&&(o.innerHTML=n[i])}},finish:function(t){var e=t.elem,n=u.getTimerData(t);u.timerDone(n)&&(e.innerHTML=t.finish_text,e.removeAttribute("data-now data-date data-finish-text data-tags"),e.classList.remove("live"),e.classList.add("done"))}};h.init()});