https://www.tifviking.no/wp-content/themes/enfold/config-templateb…/countdown/countdown.js?ver=7.1.2
1// ------------------------------------------------------------------------------------------- 2// 3// AVIA Countdown 4// 5// @since 4.5.6 Countdown is UTC based to reflect different browser timezones 6// 7// ------------------------------------------------------------------------------------------- 8(function($) 9{ 10 "use strict"; 11 12 var _units = ['weeks','days','hours','minutes','seconds'], 13 _second = 1000, 14 _minute = _second * 60, 15 _hour = _minute * 60, 16 _day = _hour * 24, 17 _week = _day * 7, 18 ticker = function(_self) 19 { 20 var _time = {}, 21 tmLoc = new Date(); 22 var _now = new Date( tmLoc.getTime() + tmLoc.getTimezoneOffset() * 60000 ), // get UTC time 23 _timestamp = _self.end - _now; 24 25 if(_timestamp <= 0) 26 { 27 clearInterval(_self.countdown); 28 return; 29 } 30 31 _self.time.weeks = Math.floor( _timestamp / _week); 32 _self.time.days = Math.floor((_timestamp % _week) / _day); 33 _self.time.hours = Math.floor((_timestamp % _day) / _hour); 34 _self.time.minutes = Math.floor((_timestamp % _hour) / _minute); 35 _self.time.seconds = Math.floor((_timestamp % _minute) / _second); 36 37 switch(_self.data.maximum) 38 { 39 case 1: _self.time.seconds = Math.floor(_timestamp / _second); break; 40 case 2: _self.time.minutes = Math.floor(_timestamp / _minute); break; 41 case 3: _self.time.hours = Math.floor(_timestamp / _hour); break; 42 case 4: _self.time.days = Math.floor(_timestamp / _day); break; 43 } 44 45 for (var i in _self.time) 46 { 47 if(typeof _self.update[i] == "object") 48 { 49 if(_self.firstrun || _self.oldtime[i] != _self.time[i]) 50 { 51 var labelkey = ( _self.time[i] === 1 ) ? "single" : "multi"; 52 53 _self.update[i].time_container.text(_self.time[i]); 54 _self.update[i].label_container.text(_self.update[i][labelkey]); 55 } 56 } 57 } 58 59 //show ticker 60 if(_self.firstrun) _self.container.addClass('av-countdown-active'); 61 62 _self.oldtime = $.extend( {}, _self.time ); 63 _self.firstrun = false; 64 }; 65
66 67 $.fn.aviaCountdown = function( options ) 68 { 69 if(!this.length) return; 70 71 return this.each(function() 72 { 73 var _self = {}; 74 _self.update = {}; 75 _self.time = {}; 76 _self.oldtime = {}; 77 _self.firstrun = true; 78 79 _self.container = $(this); 80 _self.data = _self.container.data(); 81 _self.end = new Date(_self.data.year, _self.data.month, _self.data.day, _self.data.hour, _self.data.minute ); 82 83 if( _self.data.timezone != '0' ) 84 { 85 _self.end = new Date( _self.end.getTime() - _self.data.timezone * 60000 ); 86 } 87 88 for (var i in _units) 89 { 90 _self.update[_units[i]] = { 91 time_container: _self.container.find('.av-countdown-' + _units[i] + ' .av-countdown-time'), 92 label_container: _self.container.find('.av-countdown-' + _units[i] + ' .av-countdown-time-label') 93 }; 94 95 if(_self.update[_units[i]].label_container.length) 96 { 97 _self.update[_units[i]].single = _self.update[_units[i]].label_container.data('label'); 98 _self.update[_units[i]].multi = _self.update[_units[i]].label_container.data('label-multi'); 99 } 100 } 101 102 ticker(_self); 103 _self.countdown = setInterval(function(){ ticker(_self); }, 1000); 104 105 106 }); 107 }; 108 109 110 111}(jQuery));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.