(function($){'use strict' var default_options={i18n:{ru:{months:['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'],dayOfWeek:["Вск","Пн","Вт","Ср","Чт","Пт","Сб"]},en:{months:["一?,"二月","三月","四月","五月","六月","七月","八月","九月","十月","十一?,"十二?],dayOfWeek:["?,"一","?,"?,"?,"?,"?]},de:{months:['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],dayOfWeek:["So","Mo","Di","Mi","Do","Fr","Sa"]},nl:{months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],dayOfWeek:["zo","ma","di","wo","do","vr","za"]},tr:{months:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],dayOfWeek:["Paz","Pts","Sal","Çar","Per","Cum","Cts"]},fr:{months:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],dayOfWeek:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"]},es:{months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],dayOfWeek:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"]},th:{months:['มกราคม','กุมภาพันธ์','มีนาคม','เมษาย?,'พฤษภาค?,'มิถุนายน','กรกฎาค?,'สิงหาค?,'กันยาย?,'ตุลาคม','พฤศจิกาย?,'ธันวาค?],dayOfWeek:['อา.','?','?','?','พฤ.','?','?']},pl:{months:["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień"],dayOfWeek:["nd","pn","wt","śr","cz","pt","sb"]},pt:{months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],dayOfWeek:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"]},ch:{months:["一?,"二月","三月","四月","五月","六月","七月","八月","九月","十月","十一?,"十二?],dayOfWeek:["?,"一","?,"?,"?,"?,"?]},se:{months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],dayOfWeek:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"]},kr:{months:["1?,"2?,"3?,"4?,"5?,"6?,"7?,"8?,"9?,"10?,"11?,"12?],dayOfWeek:["?,"?,"?,"?,"?,"?,"?]},it:{months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],dayOfWeek:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"]},da:{months:["January","Februar","Marts","April","Maj","Juni","July","August","September","Oktober","November","December"],dayOfWeek:["Søn","Man","Tir","ons","Tor","Fre","lør"]},ja:{months:["1?,"2?,"3?,"4?,"5?,"6?,"7?,"8?,"9?,"10?,"11?,"12?],dayOfWeek:["?,"?,"?,"?,"?,"?,"?]},},value:'',lang:'en',format:'Y/m/d H:i',formatTime:'H:i',formatDate:'Y/m/d',startDate:false,step:60,closeOnDateSelect:0,closeOnWithoutClick:true,timepicker:true,datepicker:true,minDate:false,maxDate:false,minTime:false,maxTime:false,allowTimes:[],opened:false,initTime:true,inline:false,onSelectDate:function(){},onSelectTime:function(){},onChangeMonth:function(){},onChangeDateTime:function(){},onShow:function(){},onClose:function(){},onGenerate:function(){},withoutCopyright:true,inverseButton:false,hours12:false,next:'xdsoft_next',prev:'xdsoft_prev',dayOfWeekStart:0,timeHeightInTimePicker:25,timepickerScrollbar:true,todayButton:true,defaultSelect:true,scrollMonth:true,scrollTime:true,scrollInput:true,lazyInit:false,mask:false,validateOnBlur:true,allowBlank:true,yearStart:1950,yearEnd:2050,style:'',id:'',roundTime:'round',className:'',weekends:[],yearOffset:0};if(!Array.prototype.indexOf){Array.prototype.indexOf=function(obj,start){for(var i=(start||0),j=this.length;i'),scroller=$('
'),maximumOffset=100,start=false;scrollbar.append(scroller);timeboxparent.addClass('xdsoft_scroller_box').append(scrollbar);scroller.on('mousedown.xdsoft_scroller',function(event){if(!parentHeight) timeboxparent.trigger('resize_scroll.xdsoft_scroller',[_percent]);var pageY=event.pageY,top=parseInt(scroller.css('margin-top')),h1=scrollbar[0].offsetHeight;$(document.body).addClass('xdsoft_noselect');$([document.body,window]).on('mouseup.xdsoft_scroller',function arguments_callee(){$([document.body,window]).off('mouseup.xdsoft_scroller',arguments_callee).off('mousemove.xdsoft_scroller',move).removeClass('xdsoft_noselect');});$(document.body).on('mousemove.xdsoft_scroller',move=function(event){var offset=event.pageY-pageY+top;if(offset<0) offset=0;if(offset+scroller[0].offsetHeight>h1) offset=h1-scroller[0].offsetHeight;timeboxparent.trigger('scroll_element.xdsoft_scroller',[maximumOffset?offset/maximumOffset:0]);});});timeboxparent.on('scroll_element.xdsoft_scroller',function(event,percent){if(!parentHeight) timeboxparent.trigger('resize_scroll.xdsoft_scroller',[percent,true]);percent=percent>1?1:(percent<0||isNaN(percent))?0:percent;scroller.css('margin-top',maximumOffset*percent);timebox.css('marginTop',-parseInt((height-parentHeight)*percent))}).on('resize_scroll.xdsoft_scroller',function(event,_percent,noTriggerScroll){parentHeight=timeboxparent[0].clientHeight;height=timebox[0].offsetHeight;var percent=parentHeight/height,sh=percent*scrollbar[0].offsetHeight;if(percent>1) scroller.hide();else{scroller.show();scroller.css('height',parseInt(sh>10?sh:10));maximumOffset=scrollbar[0].offsetHeight-scroller[0].offsetHeight;if(noTriggerScroll!==true) timeboxparent.trigger('scroll_element.xdsoft_scroller',[_percent?_percent:Math.abs(parseInt(timebox.css('marginTop')))/(height-parentHeight)]);}});timeboxparent.mousewheel&&timeboxparent.mousewheel(function(event,delta,deltaX,deltaY){var top=Math.abs(parseInt(timebox.css('marginTop')));timeboxparent.trigger('scroll_element.xdsoft_scroller',[(top-delta*20)/(height-parentHeight)]);event.stopPropagation();return false;});timeboxparent.on('touchstart',function(event){start=pointerEventToXY(event);});timeboxparent.on('touchmove',function(event){if(start){var coord=pointerEventToXY(event),top=Math.abs(parseInt(timebox.css('marginTop')));timeboxparent.trigger('scroll_element.xdsoft_scroller',[(top-(coord.y-start.y))/(height-parentHeight)]);event.stopPropagation();event.preventDefault();};});timeboxparent.on('touchend touchcancel',function(event){start=false;});} timeboxparent.trigger('resize_scroll.xdsoft_scroller',[_percent]);});};$.fn.datetimepicker=function(opt){var KEY0=48,KEY9=57,_KEY0=96,_KEY9=105,CTRLKEY=17,DEL=46,ENTER=13,ESC=27,BACKSPACE=8,ARROWLEFT=37,ARROWUP=38,ARROWRIGHT=39,ARROWDOWN=40,TAB=9,F5=116,AKEY=65,CKEY=67,VKEY=86,ZKEY=90,YKEY=89,ctrlDown=false,options=($.isPlainObject(opt)||!opt)?$.extend(true,{},default_options,opt):$.extend({},default_options),lazyInitTimer=0,lazyInit=function(input){input.on('open.xdsoft focusin.xdsoft mousedown.xdsoft',function initOnActionCallback(event){if(input.is(':disabled')||input.is(':hidden')||!input.is(':visible')||input.data('xdsoft_datetimepicker')) return;clearTimeout(lazyInitTimer);lazyInitTimer=setTimeout(function(){if(!input.data('xdsoft_datetimepicker')) createDateTimePicker(input);input.off('open.xdsoft focusin.xdsoft mousedown.xdsoft',initOnActionCallback).trigger('open.xdsoft');},100);});},createDateTimePicker=function(input){var datetimepicker=$('
'),xdsoft_copyright=$(''),datepicker=$('
'),mounth_picker=$('
'),calendar=$('
'),timepicker=$('
'),timeboxparent=timepicker.find('.xdsoft_time_box').eq(0),timebox=$('
'),scrollbar=$('
'),scroller=$('
'),monthselect=$('
'),yearselect=$('
');mounth_picker.find('.xdsoft_month span').after(monthselect);mounth_picker.find('.xdsoft_year span').after(yearselect);mounth_picker.find('.xdsoft_month,.xdsoft_year').on('mousedown.xdsoft',function(event){mounth_picker.find('.xdsoft_select').hide();var select=$(this).find('.xdsoft_select').eq(0),val=0,top=0;if(_xdsoft_datetime.currentTime) val=_xdsoft_datetime.currentTime[$(this).hasClass('xdsoft_month')?'getMonth':'getFullYear']();select.show();for(var items=select.find('div.xdsoft_option'),i=0;i6) options.dayOfWeekStart=0;else options.dayOfWeekStart=parseInt(options.dayOfWeekStart);if(!options.timepickerScrollbar) scrollbar.hide();if(options.minDate&&/^-(.*)$/.test(options.minDate)){options.minDate=_xdsoft_datetime.strToDateTime(options.minDate).dateFormat(options.formatDate);} if(options.maxDate&&/^\+(.*)$/.test(options.maxDate)){options.maxDate=_xdsoft_datetime.strToDateTime(options.maxDate).dateFormat(options.formatDate);} mounth_picker.find('.xdsoft_today_button').css('visibility',!options.todayButton?'hidden':'visible');if(options.mask){var e,getCaretPos=function(input){try{if(document.selection&&document.selection.createRange){var range=document.selection.createRange();return range.getBookmark().charCodeAt(2)-2;}else if(input.setSelectionRange) return input.selectionStart;}catch(e){return 0;}},setCaretPos=function(node,pos){var node=(typeof node=="string"||node instanceof String)?document.getElementById(node):node;if(!node){return false;}else if(node.createTextRange){var textRange=node.createTextRange();textRange.collapse(true);textRange.moveEnd(pos);textRange.moveStart(pos);textRange.select();return true;}else if(node.setSelectionRange){node.setSelectionRange(pos,pos);return true;} return false;},isValidValue=function(mask,value){var reg=mask.replace(/([\[\]\/\{\}\(\)\-\.\+]{1})/g,'\\$1').replace(/_/g,'{digit+}').replace(/([0-9]{1})/g,'{digit$1}').replace(/\{digit([0-9]{1})\}/g,'[0-$1_]{1}').replace(/\{digit[\+]\}/g,'[0-9_]{1}');return RegExp(reg).test(value);};input.off('keydown.xdsoft');switch(true){case(options.mask===true):options.mask=options.format.replace(/Y/g,'9999').replace(/F/g,'9999').replace(/m/g,'19').replace(/d/g,'39').replace(/H/g,'29').replace(/i/g,'59').replace(/s/g,'59');case($.type(options.mask)=='string'):if(!isValidValue(options.mask,input.val())) input.val(options.mask.replace(/[0-9]/g,'_'));input.on('keydown.xdsoft',function(event){var val=this.value,key=event.which;switch(true){case((key>=KEY0&&key<=KEY9)||(key>=_KEY0&&key<=_KEY9))||(key==BACKSPACE||key==DEL):var pos=getCaretPos(this),digit=(key!=BACKSPACE&&key!=DEL)?String.fromCharCode((_KEY0<=key&&key<=_KEY9)?key-KEY0:key):'_';if((key==BACKSPACE||key==DEL)&&pos){pos--;digit='_';} while(/[^0-9_]/.test(options.mask.substr(pos,1))&&pos0) pos+=(key==BACKSPACE||key==DEL)?-1:1;val=val.substr(0,pos)+digit+val.substr(pos+1);if($.trim(val)==''){val=options.mask.replace(/[0-9]/g,'_');}else{if(pos==options.mask.length) break;} pos+=(key==BACKSPACE||key==DEL)?0:1;while(/[^0-9_]/.test(options.mask.substr(pos,1))&&pos0) pos+=(key==BACKSPACE||key==DEL)?-1:1;if(isValidValue(options.mask,val)){this.value=val;setCaretPos(this,pos);}else if($.trim(val)=='') this.value=options.mask.replace(/[0-9]/g,'_');else{input.trigger('error_input.xdsoft');} break;case(!!~([AKEY,CKEY,VKEY,ZKEY,YKEY].indexOf(key))&&ctrlDown):case!!~([ESC,ARROWUP,ARROWDOWN,ARROWLEFT,ARROWRIGHT,F5,CTRLKEY,TAB,ENTER].indexOf(key)):return true;} event.preventDefault();return false;});break;}} if(options.validateOnBlur){input.off('blur.xdsoft').on('blur.xdsoft',function(){if(options.allowBlank&&!$.trim($(this).val()).length){$(this).val(null);datetimepicker.data('xdsoft_datetime').empty();}else if(!Date.parseDate($(this).val(),options.format)){$(this).val((_xdsoft_datetime.now()).dateFormat(options.format));datetimepicker.data('xdsoft_datetime').setCurrentTime($(this).val());} else{datetimepicker.data('xdsoft_datetime').setCurrentTime($(this).val());} datetimepicker.trigger('changedatetime.xdsoft');});} options.dayOfWeekStartPrev=(options.dayOfWeekStart==0)?6:options.dayOfWeekStart-1;datetimepicker.trigger('xchange.xdsoft');};datetimepicker.data('options',options).on('mousedown.xdsoft',function(event){event.stopPropagation();event.preventDefault();yearselect.hide();monthselect.hide();return false;});var scroll_element=timepicker.find('.xdsoft_time_box');scroll_element.append(timebox);scroll_element.xdsoftScroller();datetimepicker.on('afterOpen.xdsoft',function(){scroll_element.xdsoftScroller();});datetimepicker.append(datepicker).append(timepicker);if(options.withoutCopyright!==true) datetimepicker.append(xdsoft_copyright);datepicker.append(mounth_picker).append(calendar);$('body').append(datetimepicker);var _xdsoft_datetime=new function(){var _this=this;_this.now=function(){var d=new Date();if(options.yearOffset) d.setFullYear(d.getFullYear()+options.yearOffset);return d;};_this.currentTime=this.now();_this.isValidDate=function(d){if(Object.prototype.toString.call(d)!=="[object Date]") return false;return!isNaN(d.getTime());};_this.setCurrentTime=function(dTime){_this.currentTime=(typeof dTime=='string')?_this.strToDateTime(dTime):_this.isValidDate(dTime)?dTime:_this.now();datetimepicker.trigger('xchange.xdsoft');};_this.empty=function(){_this.currentTime=null;};_this.getCurrentTime=function(dTime){return _this.currentTime;};_this.nextMonth=function(){var month=_this.currentTime.getMonth()+1;if(month==12){_this.currentTime.setFullYear(_this.currentTime.getFullYear()+1);month=0;} _this.currentTime.setDate(Math.min(Date.daysInMonth[month],_this.currentTime.getDate())) _this.currentTime.setMonth(month);options.onChangeMonth&&options.onChangeMonth.call&&options.onChangeMonth.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));datetimepicker.trigger('xchange.xdsoft');return month;};_this.prevMonth=function(){var month=_this.currentTime.getMonth()-1;if(month==-1){_this.currentTime.setFullYear(_this.currentTime.getFullYear()-1);month=11;} _this.currentTime.setDate(Math.min(Date.daysInMonth[month],_this.currentTime.getDate())) _this.currentTime.setMonth(month);options.onChangeMonth&&options.onChangeMonth.call&&options.onChangeMonth.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));datetimepicker.trigger('xchange.xdsoft');return month;};_this.strToDateTime=function(sDateTime){var tmpDate=[],timeOffset,currentTime;if((tmpDate=/^(\+|\-)(.*)$/.exec(sDateTime))&&(tmpDate[2]=Date.parseDate(tmpDate[2],options.formatDate))){timeOffset=tmpDate[2].getTime()-1*(tmpDate[2].getTimezoneOffset())*60000;currentTime=new Date((_xdsoft_datetime.now()).getTime()+parseInt(tmpDate[1]+'1')*timeOffset);}else currentTime=sDateTime?Date.parseDate(sDateTime,options.format):_this.now();if(!_this.isValidDate(currentTime)) currentTime=_this.now();return currentTime;};_this.strtodate=function(sDate){var currentTime=sDate?Date.parseDate(sDate,options.formatDate):_this.now();if(!_this.isValidDate(currentTime)) currentTime=_this.now();return currentTime;};_this.strtotime=function(sTime){var currentTime=sTime?Date.parseDate(sTime,options.formatTime):_this.now();if(!_this.isValidDate(currentTime)) currentTime=_this.now();return currentTime;};_this.str=function(){return _this.currentTime.dateFormat(options.format);};};mounth_picker.find('.xdsoft_today_button').on('mousedown.xdsoft',function(){datetimepicker.data('changed',true);_xdsoft_datetime.setCurrentTime(0);datetimepicker.trigger('afterOpen.xdsoft');}).on('dblclick.xdsoft',function(){input.val(_xdsoft_datetime.str());datetimepicker.trigger('close.xdsoft');});mounth_picker.find('.xdsoft_prev,.xdsoft_next').on('mousedown.xdsoft',function(){var $this=$(this),timer=0,stop=false;(function arguments_callee1(v){var month=_xdsoft_datetime.currentTime.getMonth();if($this.hasClass(options.next)){_xdsoft_datetime.nextMonth();}else if($this.hasClass(options.prev)){_xdsoft_datetime.prevMonth();} !stop&&(timer=setTimeout(arguments_callee1,v?v:100));})(500);$([document.body,window]).on('mouseup.xdsoft',function arguments_callee2(){clearTimeout(timer);stop=true;$([document.body,window]).off('mouseup.xdsoft',arguments_callee2);});});timepicker.find('.xdsoft_prev,.xdsoft_next').on('mousedown.xdsoft',function(){var $this=$(this),timer=0,stop=false,period=110;(function arguments_callee4(v){var pheight=timeboxparent[0].clientHeight,height=timebox[0].offsetHeight,top=Math.abs(parseInt(timebox.css('marginTop')));if($this.hasClass(options.next)&&(height-pheight)-options.timeHeightInTimePicker>=top){timebox.css('marginTop','-'+(top+options.timeHeightInTimePicker)+'px')}else if($this.hasClass(options.prev)&&top-options.timeHeightInTimePicker>=0){timebox.css('marginTop','-'+(top-options.timeHeightInTimePicker)+'px')} timeboxparent.trigger('scroll_element.xdsoft_scroller',[Math.abs(parseInt(timebox.css('marginTop'))/(height-pheight))]);period=(period>10)?10:period-10;!stop&&(timer=setTimeout(arguments_callee4,v?v:period));})(500);$([document.body,window]).on('mouseup.xdsoft',function arguments_callee5(){clearTimeout(timer);stop=true;$([document.body,window]).off('mouseup.xdsoft',arguments_callee5);});});datetimepicker.on('xchange.xdsoft',function(event){var table='',start=new Date(_xdsoft_datetime.currentTime.getFullYear(),_xdsoft_datetime.currentTime.getMonth(),1,12,0,0),i=0,today=_xdsoft_datetime.now();while(start.getDay()!=options.dayOfWeekStart) start.setDate(start.getDate()-1);table+='';for(var j=0;j<7;j++){table+='';} table+='';table+='';var maxDate=false,minDate=false;if(options.maxDate!==false){maxDate=_xdsoft_datetime.strtodate(options.maxDate);maxDate=new Date(maxDate.getFullYear(),maxDate.getMonth(),maxDate.getDate(),23,59,59,999);} if(options.minDate!==false){minDate=_xdsoft_datetime.strtodate(options.minDate);minDate=new Date(minDate.getFullYear(),minDate.getMonth(),minDate.getDate());} var d,y,m,classes=[];while(i<_xdsoft_datetime.currentTime.getDaysInMonth()||start.getDay()!=options.dayOfWeekStart||_xdsoft_datetime.currentTime.getMonth()==start.getMonth()){classes=[];i++;d=start.getDate();y=start.getFullYear();m=start.getMonth();classes.push('xdsoft_date');if((maxDate!==false&&start>maxDate)||(minDate!==false&&start'+'
'+d+'
'+'';if(start.getDay()==options.dayOfWeekStartPrev){table+='
';} start.setDate(d+1);} table+='
'+options.i18n[options.lang].dayOfWeek[(j+options.dayOfWeekStart)>6?0:j+options.dayOfWeekStart]+'
';calendar.html(table);mounth_picker.find('.xdsoft_label span').eq(0).text(options.i18n[options.lang].months[_xdsoft_datetime.currentTime.getMonth()]);mounth_picker.find('.xdsoft_label span').eq(1).text(_xdsoft_datetime.currentTime.getFullYear());var time='',h='',m='',line_time=function line_time(h,m){var now=_xdsoft_datetime.now();now.setHours(h);h=parseInt(now.getHours());now.setMinutes(m);m=parseInt(now.getMinutes());classes=[];if((options.maxTime!==false&&_xdsoft_datetime.strtotime(options.maxTime).getTime()now.getTime())) classes.push('xdsoft_disabled');if((options.initTime||options.defaultSelect||datetimepicker.data('changed'))&&parseInt(_xdsoft_datetime.currentTime.getHours())==parseInt(h)&&(options.step>59||Math[options.roundTime](_xdsoft_datetime.currentTime.getMinutes()/options.step)*options.step==parseInt(m))){if(options.defaultSelect||datetimepicker.data('changed')){classes.push('xdsoft_current');}else if(options.initTime){classes.push('xdsoft_init_time');}} if(parseInt(today.getHours())==parseInt(h)&&parseInt(today.getMinutes())==parseInt(m)) classes.push('xdsoft_today');time+='
'+now.dateFormat(options.formatTime)+'
';};if(!options.allowTimes||!$.isArray(options.allowTimes)||!options.allowTimes.length){for(var i=0,j=0;i<(options.hours12?12:24);i++){for(j=0;j<60;j+=options.step){h=(i<10?'0':'')+i;m=(j<10?'0':'')+j;line_time(h,m);}}}else{for(var i=0;i'+i+'';} yearselect.children().eq(0).html(opt);for(i=0,opt='';i<=11;i++){opt+='
'+options.i18n[options.lang].months[i]+'
';} monthselect.children().eq(0).html(opt);$(this).trigger('generate.xdsoft');event.stopPropagation();}).on('afterOpen.xdsoft',function(){if(options.timepicker){var classType;if(timebox.find('.xdsoft_current').length){classType='.xdsoft_current';}else if(timebox.find('.xdsoft_init_time').length){classType='.xdsoft_init_time';} if(classType){var pheight=timeboxparent[0].clientHeight,height=timebox[0].offsetHeight,top=timebox.find(classType).index()*options.timeHeightInTimePicker+1;if((height-pheight)1||(options.closeOnDateSelect===true||(options.closeOnDateSelect===0&&!options.timepicker)))&&!options.inline){datetimepicker.trigger('close.xdsoft');} if(options.onSelectDate&&options.onSelectDate.call){options.onSelectDate.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));} datetimepicker.data('changed',true);datetimepicker.trigger('xchange.xdsoft');datetimepicker.trigger('changedatetime.xdsoft');setTimeout(function(){timerclick=0;},200);});timebox.on('click.xdsoft','div',function(){var $this=$(this),currentTime=_xdsoft_datetime.currentTime;if($this.hasClass('xdsoft_disabled')) return false;currentTime.setHours($this.data('hour'));currentTime.setMinutes($this.data('minute'));datetimepicker.trigger('select.xdsoft',[currentTime]);datetimepicker.data('input').val(_xdsoft_datetime.str());!options.inline&&datetimepicker.trigger('close.xdsoft');if(options.onSelectTime&&options.onSelectTime.call){options.onSelectTime.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));} datetimepicker.data('changed',true);datetimepicker.trigger('xchange.xdsoft');datetimepicker.trigger('changedatetime.xdsoft');});datetimepicker.mousewheel&&datepicker.mousewheel(function(event,delta,deltaX,deltaY){if(!options.scrollMonth) return true;if(delta<0) _xdsoft_datetime.nextMonth();else _xdsoft_datetime.prevMonth();return false;});datetimepicker.mousewheel&&timeboxparent.unmousewheel().mousewheel(function(event,delta,deltaX,deltaY){if(!options.scrollTime) return true;var pheight=timeboxparent[0].clientHeight,height=timebox[0].offsetHeight,top=Math.abs(parseInt(timebox.css('marginTop'))),fl=true;if(delta<0&&(height-pheight)-options.timeHeightInTimePicker>=top){timebox.css('marginTop','-'+(top+options.timeHeightInTimePicker)+'px');fl=false;}else if(delta>0&&top-options.timeHeightInTimePicker>=0){timebox.css('marginTop','-'+(top-options.timeHeightInTimePicker)+'px');fl=false;} timeboxparent.trigger('scroll_element.xdsoft_scroller',[Math.abs(parseInt(timebox.css('marginTop'))/(height-pheight))]);event.stopPropagation();return fl;});datetimepicker.on('changedatetime.xdsoft',function(){if(options.onChangeDateTime&&options.onChangeDateTime.call){var $input=datetimepicker.data('input');options.onChangeDateTime.call(datetimepicker,_xdsoft_datetime.currentTime,$input);$input.trigger('change');}}).on('generate.xdsoft',function(){if(options.onGenerate&&options.onGenerate.call) options.onGenerate.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));});var current_time_index=0;input.mousewheel&&input.mousewheel(function(event,delta,deltaX,deltaY){if(!options.scrollInput) return true;if(!options.datepicker&&options.timepicker){current_time_index=timebox.find('.xdsoft_current').length?timebox.find('.xdsoft_current').eq(0).index():0;if(current_time_index+delta>=0&¤t_time_index+delta$(window).height()+$(window).scrollTop()) top=offset.top-datetimepicker[0].offsetHeight+1;if(top<0) top=0;if(left+datetimepicker[0].offsetWidth>$(window).width()) left=offset.left-datetimepicker[0].offsetWidth+datetimepicker.data('input')[0].offsetWidth;datetimepicker.css({left:left,top:top-30});};datetimepicker.on('open.xdsoft',function(){var onShow=true;if(options.onShow&&options.onShow.call){onShow=options.onShow.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));} if(onShow!==false){datetimepicker.show();datetimepicker.trigger('afterOpen.xdsoft');setPos();$(window).off('resize.xdsoft',setPos).on('resize.xdsoft',setPos);if(options.closeOnWithoutClick){$([document.body,window]).on('mousedown.xdsoft',function arguments_callee6(){datetimepicker.trigger('close.xdsoft');$([document.body,window]).off('mousedown.xdsoft',arguments_callee6);});}}}).on('close.xdsoft',function(event){var onClose=true;if(options.onClose&&options.onClose.call){onClose=options.onClose.call(datetimepicker,_xdsoft_datetime.currentTime,datetimepicker.data('input'));} if(onClose!==false&&!options.opened&&!options.inline){datetimepicker.hide();} event.stopPropagation();}).data('input',input);var timer=0,timer1=0;datetimepicker.data('xdsoft_datetime',_xdsoft_datetime);datetimepicker.setOptions(options);function getCurrentValue(){var ct=options.value?options.value:(input&&input.val&&input.val())?input.val():'';if(ct&&_xdsoft_datetime.isValidDate(ct=Date.parseDate(ct,options.format))){datetimepicker.data('changed',true);}else ct='';if(!ct&&options.startDate!==false){ct=_xdsoft_datetime.strToDateTime(options.startDate);} return ct?ct:0;} _xdsoft_datetime.setCurrentTime(getCurrentValue());datetimepicker.trigger('afterOpen.xdsoft');input.data('xdsoft_datetimepicker',datetimepicker).on('open.xdsoft focusin.xdsoft mousedown.xdsoft',function(event){if(input.is(':disabled')||input.is(':hidden')||!input.is(':visible')) return;clearTimeout(timer);timer=setTimeout(function(){if(input.is(':disabled')||input.is(':hidden')||!input.is(':visible')) return;_xdsoft_datetime.setCurrentTime(getCurrentValue());datetimepicker.trigger('open.xdsoft');},100);}).on('keydown.xdsoft',function(event){var val=this.value,key=event.which;switch(true){case!!~([ENTER].indexOf(key)):var elementSelector=$("input:visible,textarea:visible");datetimepicker.trigger('close.xdsoft');elementSelector.eq(elementSelector.index(this)+1).focus();return false;case!!~[TAB].indexOf(key):datetimepicker.trigger('close.xdsoft');return true;}});},destroyDateTimePicker=function(input){var datetimepicker=input.data('xdsoft_datetimepicker');if(datetimepicker){datetimepicker.data('xdsoft_datetime',null);datetimepicker.remove();input.data('xdsoft_datetimepicker',null).off('open.xdsoft focusin.xdsoft focusout.xdsoft mousedown.xdsoft blur.xdsoft keydown.xdsoft');$(window).off('resize.xdsoft');$([window,document.body]).off('mousedown.xdsoft');input.unmousewheel&&input.unmousewheel();}};$(document).off('keydown.xdsoftctrl keyup.xdsoftctrl').on('keydown.xdsoftctrl',function(e){if(e.keyCode==CTRLKEY) ctrlDown=true;}).on('keyup.xdsoftctrl',function(e){if(e.keyCode==CTRLKEY) ctrlDown=false;});return this.each(function(){var datetimepicker;if(datetimepicker=$(this).data('xdsoft_datetimepicker')){if($.type(opt)==='string'){switch(opt){case'show':$(this).select().focus();datetimepicker.trigger('open.xdsoft');break;case'hide':datetimepicker.trigger('close.xdsoft');break;case'destroy':destroyDateTimePicker($(this));break;case'reset':this.value=this.defaultValue;if(!this.value||!datetimepicker.data('xdsoft_datetime').isValidDate(Date.parseDate(this.value,options.format))) datetimepicker.data('changed',false);datetimepicker.data('xdsoft_datetime').setCurrentTime(this.value);break;}}else{datetimepicker.setOptions(opt);} return 0;}else if(($.type(opt)!=='string')){if(!options.lazyInit||options.open||options.inline){createDateTimePicker($(this));}else lazyInit($(this));}});};})(jQuery);Date.parseFunctions={count:0};Date.parseRegexes=[];Date.formatFunctions={count:0};Date.prototype.dateFormat=function(format){if(format=='unixtime')return parseInt(this.getTime()/1000);if(Date.formatFunctions[format]==null){Date.createNewFormat(format)}var func=Date.formatFunctions[format];return this[func]()};Date.createNewFormat=function(format){var funcName="format"+Date.formatFunctions.count++;Date.formatFunctions[format]=funcName;var code="Date.prototype."+funcName+" = function() {return ";var special=false;var ch='';for(var i=0;i 0) {";var regex="";var special=false;var ch='';for(var i=0;i 0 && m >= 0 && d > 0 && h >= 0 && i >= 0 && s >= 0)\n"+"{return new Date(y, m, d, h, i, s);}\n"+"else if (y > 0 && m >= 0 && d > 0 && h >= 0 && i >= 0)\n"+"{return new Date(y, m, d, h, i);}\n"+"else if (y > 0 && m >= 0 && d > 0 && h >= 0)\n"+"{return new Date(y, m, d, h);}\n"+"else if (y > 0 && m >= 0 && d > 0)\n"+"{return new Date(y, m, d);}\n"+"else if (y > 0 && m >= 0)\n"+"{return new Date(y, m);}\n"+"else if (y > 0)\n"+"{return new Date(y);}\n"+"}return null;}";Date.parseRegexes[regexNum]=new RegExp("^"+regex+"$");eval(code)};Date.formatCodeToRegex=function(character,currentGroup){switch(character){case"D":return{g:0,c:null,s:"(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)"};case"j":case"d":return{g:1,c:"d = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{1,2})"};case"l":return{g:0,c:null,s:"(?:"+Date.dayNames.join("|")+")"};case"S":return{g:0,c:null,s:"(?:st|nd|rd|th)"};case"w":return{g:0,c:null,s:"\\d"};case"z":return{g:0,c:null,s:"(?:\\d{1,3})"};case"W":return{g:0,c:null,s:"(?:\\d{2})"};case"F":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+currentGroup+"].substring(0, 3)], 10);\n",s:"("+Date.monthNames.join("|")+")"};case"M":return{g:1,c:"m = parseInt(Date.monthNumbers[results["+currentGroup+"]], 10);\n",s:"(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)"};case"n":case"m":return{g:1,c:"m = parseInt(results["+currentGroup+"], 10) - 1;\n",s:"(\\d{1,2})"};case"t":return{g:0,c:null,s:"\\d{1,2}"};case"L":return{g:0,c:null,s:"(?:1|0)"};case"Y":return{g:1,c:"y = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{4})"};case"y":return{g:1,c:"var ty = parseInt(results["+currentGroup+"], 10);\n"+"y = ty > Date.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{1,2})"};case"a":return{g:1,c:"if (results["+currentGroup+"] == 'am') {\n"+"if (h == 12) { h = 0; }\n"+"} else { if (h < 12) { h += 12; }}",s:"(am|pm)"};case"A":return{g:1,c:"if (results["+currentGroup+"] == 'AM') {\n"+"if (h == 12) { h = 0; }\n"+"} else { if (h < 12) { h += 12; }}",s:"(AM|PM)"};case"g":case"G":case"h":case"H":return{g:1,c:"h = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{1,2})"};case"i":return{g:1,c:"i = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{2})"};case"s":return{g:1,c:"s = parseInt(results["+currentGroup+"], 10);\n",s:"(\\d{2})"};case"O":return{g:0,c:null,s:"[+-]\\d{4}"};case"T":return{g:0,c:null,s:"[A-Z]{3}"};case"Z":return{g:0,c:null,s:"[+-]\\d{1,5}"};default:return{g:0,c:null,s:String.escape(character)}}};Date.prototype.getTimezone=function(){return this.toString().replace(/^.*? ([A-Z]{3}) [0-9]{4}.*$/,"$1").replace(/^.*?\(([A-Z])[a-z]+ ([A-Z])[a-z]+ ([A-Z])[a-z]+\)$/,"$1$2$3")};Date.prototype.getGMTOffset=function(){return(this.getTimezoneOffset()>0?"-":"+")+String.leftPad(Math.floor(Math.abs(this.getTimezoneOffset())/60),2,"0")+String.leftPad(Math.abs(this.getTimezoneOffset())%60,2,"0")};Date.prototype.getDayOfYear=function(){var num=0;Date.daysInMonth[1]=this.isLeapYear()?29:28;for(var i=0;i=9?['wheel']:['mousewheel','DomMouseScroll','MozMousePixelScroll'];var lowestDelta,lowestDeltaXY;if($.event.fixHooks){for(var i=toFix.length;i;){$.event.fixHooks[toFix[--i]]=$.event.mouseHooks}}$.event.special.mousewheel={setup:function(){if(this.addEventListener){for(var i=toBind.length;i;){this.addEventListener(toBind[--i],handler,false)}}else{this.onmousewheel=handler}},teardown:function(){if(this.removeEventListener){for(var i=toBind.length;i;){this.removeEventListener(toBind[--i],handler,false)}}else{this.onmousewheel=null}}};$.fn.extend({mousewheel:function(fn){return fn?this.bind("mousewheel",fn):this.trigger("mousewheel")},unmousewheel:function(fn){return this.unbind("mousewheel",fn)}});function handler(event){var orgEvent=event||window.event,args=[].slice.call(arguments,1),delta=0,deltaX=0,deltaY=0,absDelta=0,absDeltaXY=0,fn;event=$.event.fix(orgEvent);event.type="mousewheel";if(orgEvent.wheelDelta){delta=orgEvent.wheelDelta}if(orgEvent.detail){delta=orgEvent.detail*-1}if(orgEvent.deltaY){deltaY=orgEvent.deltaY*-1;delta=deltaY}if(orgEvent.deltaX){deltaX=orgEvent.deltaX;delta=deltaX*-1}if(orgEvent.wheelDeltaY!==undefined){deltaY=orgEvent.wheelDeltaY}if(orgEvent.wheelDeltaX!==undefined){deltaX=orgEvent.wheelDeltaX*-1}absDelta=Math.abs(delta);if(!lowestDelta||absDelta0?'floor':'ceil';delta=Math[fn](delta/lowestDelta);deltaX=Math[fn](deltaX/lowestDeltaXY);deltaY=Math[fn](deltaY/lowestDeltaXY);args.unshift(event,delta,deltaX,deltaY);return($.event.dispatch||$.event.handle).apply(this,args)}}));