
/*!
 * @copyright Copyright &copy; Kartik Visweswaran, Krajee.com, 2014 - 2016
 * @version 1.3.4
 *
 * Date formatter utility library that allows formatting date/time variables or Date objects using PHP DateTime format.
 * @see http://php.net/manual/en/function.date.php
 *
 * For more JQuery plugins visit http://plugins.krajee.com
 * For more Yii related demos visit http://demos.krajee.com
 */
;var DateFormatter;!function(){var f,h,g,j,b,c,d;c=86400000,d=3600,f=function(a,i){return"string"==typeof a&&"string"==typeof i&&a.toLowerCase()===i.toLowerCase()},h=function(k,l,m){var e=m||"0",i=k.toString();return i.length<l?h(e+i,l):i},g=function(k){var l,m;for(k=k||{},l=1;l<arguments.length;l++){if(m=arguments[l]){for(var i in m){m.hasOwnProperty(i)&&("object"==typeof m[i]?g(k[i],m[i]):k[i]=m[i])}}}return k},j=function(a,k){for(var i=0;i<k.length;i++){if(k[i].toLowerCase()===a.toLowerCase()){return i}}return -1},b={dateSettings:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],meridiem:["AM","PM"],ordinal:function(a){var k=a%10,i={1:"st",2:"nd",3:"rd"};return 1!==Math.floor(a%100/10)&&i[k]?i[k]:"th"}},separators:/[ \-+\/\.T:@]/g,validParts:/[dDjlNSwzWFmMntLoYyaABgGhHisueTIOPZcrU]/g,intParts:/[djwNzmnyYhHgGis]/g,tzParts:/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,tzClip:/[^-+\dA-Z]/g},DateFormatter=function(a){var i=this,k=g(b,a);i.dateSettings=k.dateSettings,i.separators=k.separators,i.validParts=k.validParts,i.intParts=k.intParts,i.tzParts=k.tzParts,i.tzClip=k.tzClip},DateFormatter.prototype={constructor:DateFormatter,getMonth:function(a){var k,i=this;return k=j(a,i.dateSettings.monthsShort)+1,0===k&&(k=j(a,i.dateSettings.months)+1),k},parseDate:function(D,k){var v,H,I,z,J,t,F,C,x,A,E=this,B=!1,w=!1,q=E.dateSettings,G={date:null,year:null,month:null,day:null,hour:0,min:0,sec:0};if(!D){return null}if(D instanceof Date){return D}if("U"===k){return I=parseInt(D),I?new Date(1000*I):D}switch(typeof D){case"number":return new Date(D);case"string":break;default:return null}if(v=k.match(E.validParts),!v||0===v.length){throw new Error("Invalid date format definition.")}for(H=D.replace(E.separators,"\x00").split("\x00"),I=0;I<H.length;I++){switch(z=H[I],J=parseInt(z),v[I]){case"y":case"Y":if(!J){return null}x=z.length,G.year=2===x?parseInt((70>J?"20":"19")+z):J,B=!0;break;case"m":case"n":case"M":case"F":if(isNaN(J)){if(t=E.getMonth(z),!(t>0)){return null}G.month=t}else{if(!(J>=1&&12>=J)){return null}G.month=J}B=!0;break;case"d":case"j":if(!(J>=1&&31>=J)){return null}G.day=J,B=!0;break;case"g":case"h":if(F=v.indexOf("a")>-1?v.indexOf("a"):v.indexOf("A")>-1?v.indexOf("A"):-1,A=H[F],F>-1){C=f(A,q.meridiem[0])?0:f(A,q.meridiem[1])?12:-1,J>=1&&12>=J&&C>-1?G.hour=J+C-1:J>=0&&23>=J&&(G.hour=J)}else{if(!(J>=0&&23>=J)){return null}G.hour=J}w=!0;break;case"G":case"H":if(!(J>=0&&23>=J)){return null}G.hour=J,w=!0;break;case"i":if(!(J>=0&&59>=J)){return null}G.min=J,w=!0;break;case"s":if(!(J>=0&&59>=J)){return null}G.sec=J,w=!0}}if(B===!0&&G.year&&G.month&&G.day){G.date=new Date(G.year,G.month-1,G.day,G.hour,G.min,G.sec,0)}else{if(w!==!0){return null}G.date=new Date(0,0,0,G.hour,G.min,G.sec,0)}return G.date},guessDate:function(D,y){if("string"!=typeof D){return D}var k,p,B,C,v,E,m=this,A=D.replace(m.separators,"\x00").split("\x00"),x=/^[djmn]/g,q=y.match(m.validParts),w=new Date,z=0;if(!x.test(q[0])){return D}for(B=0;B<A.length;B++){if(z=2,v=A[B],E=parseInt(v.substr(0,2)),isNaN(E)){return null}switch(B){case 0:"m"===q[0]||"n"===q[0]?w.setMonth(E-1):w.setDate(E);break;case 1:"m"===q[0]||"n"===q[0]?w.setDate(E):w.setMonth(E-1);break;case 2:if(p=w.getFullYear(),k=v.length,z=4>k?k:4,p=parseInt(4>k?p.toString().substr(0,4-k)+v:v.substr(0,4)),!p){return null}w.setFullYear(p);break;case 3:w.setHours(E);break;case 4:w.setMinutes(E);break;case 5:w.setSeconds(E)}C=v.substr(z),C.length>0&&A.splice(B+1,0,C)}return w},parseFormat:function(i,l){var q,e=this,k=e.dateSettings,m=/\\?(.?)/gi,p=function(a,n){return q[a]?q[a]():n};return q={d:function(){return h(q.j(),2)},D:function(){return k.daysShort[q.w()]},j:function(){return l.getDate()},l:function(){return k.days[q.w()]},N:function(){return q.w()||7},w:function(){return l.getDay()},z:function(){var a=new Date(q.Y(),q.n()-1,q.j()),n=new Date(q.Y(),0,1);return Math.round((a-n)/c)},W:function(){var a=new Date(q.Y(),q.n()-1,q.j()-q.N()+3),n=new Date(a.getFullYear(),0,4);return h(1+Math.round((a-n)/c/7),2)},F:function(){return k.months[l.getMonth()]},m:function(){return h(q.n(),2)},M:function(){return k.monthsShort[l.getMonth()]},n:function(){return l.getMonth()+1},t:function(){return new Date(q.Y(),q.n(),0).getDate()},L:function(){var a=q.Y();return a%4===0&&a%100!==0||a%400===0?1:0},o:function(){var a=q.n(),o=q.W(),n=q.Y();return n+(12===a&&9>o?1:1===a&&o>9?-1:0)},Y:function(){return l.getFullYear()},y:function(){return q.Y().toString().slice(-2)},a:function(){return q.A().toLowerCase()},A:function(){var a=q.G()<12?0:1;return k.meridiem[a]},B:function(){var r=l.getUTCHours()*d,s=60*l.getUTCMinutes(),o=l.getUTCSeconds();return h(Math.floor((r+s+o+d)/86.4)%1000,3)},g:function(){return q.G()%12||12},G:function(){return l.getHours()},h:function(){return h(q.g(),2)},H:function(){return h(q.G(),2)},i:function(){return h(l.getMinutes(),2)},s:function(){return h(l.getSeconds(),2)},u:function(){return h(1000*l.getMilliseconds(),6)},e:function(){var a=/\((.*)\)/.exec(String(l))[1];return a||"Coordinated Universal Time"},I:function(){var o=new Date(q.Y(),0),u=Date.UTC(q.Y(),0),s=new Date(q.Y(),6),n=Date.UTC(q.Y(),6);return o-u!==s-n?1:0},O:function(){var a=l.getTimezoneOffset(),o=Math.abs(a);return(a>0?"-":"+")+h(100*Math.floor(o/60)+o%60,4)},P:function(){var a=q.O();return a.substr(0,3)+":"+a.substr(3,2)},T:function(){var a=(String(l).match(e.tzParts)||[""]).pop().replace(e.tzClip,"");return a||"UTC"},Z:function(){return 60*-l.getTimezoneOffset()},c:function(){return"Y-m-d\\TH:i:sP".replace(m,p)},r:function(){return"D, d M Y H:i:s O".replace(m,p)},U:function(){return l.getTime()/1000||0}},p(i,i)},formatDate:function(y,q){var k,m,w,x,p,z=this,l="",v="\\";if("string"==typeof y&&(y=z.parseDate(y,q),!y)){return null}if(y instanceof Date){for(w=q.length,k=0;w>k;k++){p=q.charAt(k),"S"!==p&&p!==v&&(k>0&&q.charAt(k-1)===v?l+=p:(x=z.parseFormat(p,y),k!==w-1&&z.intParts.test(p)&&"S"===q.charAt(k+1)&&(m=parseInt(x)||0,x+=z.dateSettings.ordinal(m)),l+=x))}return l}return""}}}();
/*!
 * @version 1.1.1.1.1
 * @preserve jQuery DateTimePicker
 * @homepage http://xdsoft.net/jqplugins/datetimepicker/
 * @author Chupurnov Valeriy (<chupurnov@gmail.com>)
 */
;var datetimepickerFactory=function(g){var f={i18n:{en:{months:["January","February","March","April","May","June","July","August","September","October","November","December"],dayOfWeekShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]}},ownerDocument:document,contentWindow:window,value:"",rtl:false,format:"Y/m/d H:i",formatTime:"H:i",formatDate:"Y/m/d",startDate:false,step:60,monthChangeSpinner:true,closeOnDateSelect:false,closeOnTimeSelect:true,closeOnWithoutClick:true,closeOnInputClick:true,openOnFocus:true,timepicker:true,datepicker:true,weeks:false,defaultTime:false,defaultDate:false,minDate:false,maxDate:false,minTime:false,maxTime:false,minDateTime:false,maxDateTime:false,allowTimes:[],opened:false,initTime:true,inline:false,theme:"",touchMovedThreshold:5,onSelectDate:function(){},onSelectTime:function(){},onChangeMonth:function(){},onGetWeekOfYear:function(){},onChangeYear:function(){},onChangeDateTime:function(){},onShow:function(){},onClose:function(){},onGenerate:function(){},withoutCopyright:true,inverseButton:false,hours12:false,next:"xdsoft_next",prev:"xdsoft_prev",dayOfWeekStart:0,parentID:"body",timeHeightInTimePicker:25,timepickerScrollbar:true,todayButton:true,prevButton:true,nextButton:true,defaultSelect:true,scrollMonth:true,scrollTime:true,scrollInput:true,lazyInit:false,mask:false,validateOnBlur:true,allowBlank:true,yearStart:1950,yearEnd:2050,monthStart:0,monthEnd:11,style:"",id:"",fixed:false,roundTime:"round",className:"",weekends:[],highlightedDates:[],highlightedPeriods:[],allowDates:[],allowDateRe:null,disabledDates:[],disabledWeekDays:[],yearOffset:0,beforeShowDay:null,enterLikeTab:true,showApplyButton:false,insideParent:false};var h=null,j=null,a="en",l="en";var b={meridiem:["AM","PM"]};var i=function(){var m=f.i18n[l],n={days:m.dayOfWeek,daysShort:m.dayOfWeekShort,months:m.months,monthsShort:g.map(m.months,function(o){return o.substring(0,3)})};if(typeof DateFormatter==="function"){h=j=new DateFormatter({dateSettings:g.extend({},b,n)})}};var e={moment:{default_options:{format:"YYYY/MM/DD HH:mm",formatDate:"YYYY/MM/DD",formatTime:"HH:mm"},formatter:{parseDate:function(m,n){if(c(n)){return j.parseDate(m,n)}var o=moment(m,n);return o.isValid()?o.toDate():false},formatDate:function(m,n){if(c(n)){return j.formatDate(m,n)}return moment(m).format(n)},formatMask:function(m){return m.replace(/Y{4}/g,"9999").replace(/Y{2}/g,"99").replace(/M{2}/g,"19").replace(/D{2}/g,"39").replace(/H{2}/g,"29").replace(/m{2}/g,"59").replace(/s{2}/g,"59")}}}};g.datetimepicker={setLocale:function(m){var n=f.i18n[m]?m:a;if(l!==n){l=n;i()}},setDateFormatter:function(m){if(typeof m==="string"&&e.hasOwnProperty(m)){var n=e[m];g.extend(f,n.default_options);h=n.formatter}else{h=m}}};var d={RFC_2822:"D, d M Y H:i:s O",ATOM:"Y-m-dTH:i:sP",ISO_8601:"Y-m-dTH:i:sO",RFC_822:"D, d M y H:i:s O",RFC_850:"l, d-M-y H:i:s T",RFC_1036:"D, d M y H:i:s O",RFC_1123:"D, d M Y H:i:s O",RSS:"D, d M Y H:i:s O",W3C:"Y-m-dTH:i:sP"};var c=function(m){return Object.values(d).indexOf(m)===-1?false:true};g.extend(g.datetimepicker,d);i();if(!window.getComputedStyle){window.getComputedStyle=function(m){this.el=m;this.getPropertyValue=function(o){var n=/(-([a-z]))/g;if(o==="float"){o="styleFloat"}if(n.test(o)){o=o.replace(n,function(q,p,r){return r.toUpperCase()})}return m.currentStyle[o]||null};return this}}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(o,p){var n,m;for(n=(p||0),m=this.length;n<m;n+=1){if(this[n]===o){return n}}return -1}}Date.prototype.countDaysInMonth=function(){return new Date(this.getFullYear(),this.getMonth()+1,0).getDate()};g.fn.xdsoftScroller=function(m,n){return this.each(function(){var w=g(this),x=function(E){var D={x:0,y:0},F;if(E.type==="touchstart"||E.type==="touchmove"||E.type==="touchend"||E.type==="touchcancel"){F=E.originalEvent.touches[0]||E.originalEvent.changedTouches[0];D.x=F.clientX;D.y=F.clientY}else{if(E.type==="mousedown"||E.type==="mouseup"||E.type==="mousemove"||E.type==="mouseover"||E.type==="mouseout"||E.type==="mouseenter"||E.type==="mouseleave"){D.x=E.clientX;D.y=E.clientY}}return D},A,u,B,C,t,z=100,p=false,s=0,v=0,y=0,q=false,o=0,r=function(){};if(n==="hide"){w.find(".xdsoft_scrollbar").hide();return}if(!g(this).hasClass("xdsoft_scroller_box")){A=w.children().eq(0);u=w[0].clientHeight;B=A[0].offsetHeight;C=g('<div class="xdsoft_scrollbar"></div>');t=g('<div class="xdsoft_scroller"></div>');C.append(t);w.addClass("xdsoft_scroller_box").append(C);r=function r(D){var E=x(D).y-s+o;if(E<0){E=0}if(E+t[0].offsetHeight>y){E=y-t[0].offsetHeight}w.trigger("scroll_element.xdsoft_scroller",[z?E/z:0])};t.on("touchstart.xdsoft_scroller mousedown.xdsoft_scroller",function(E){if(!u){w.trigger("resize_scroll.xdsoft_scroller",[n])}s=x(E).y;o=parseInt(t.css("margin-top"),10);y=C[0].offsetHeight;if(E.type==="mousedown"||E.type==="touchstart"){if(m.ownerDocument){g(m.ownerDocument.body).addClass("xdsoft_noselect")}g([m.ownerDocument.body,m.contentWindow]).on("touchend mouseup.xdsoft_scroller",function D(){g([m.ownerDocument.body,m.contentWindow]).off("touchend mouseup.xdsoft_scroller",D).off("mousemove.xdsoft_scroller",r).removeClass("xdsoft_noselect")});g(m.ownerDocument.body).on("mousemove.xdsoft_scroller",r)}else{q=true;E.stopPropagation();E.preventDefault()}}).on("touchmove",function(D){if(q){D.preventDefault();r(D)}}).on("touchend touchcancel",function(){q=false;o=0});w.on("scroll_element.xdsoft_scroller",function(E,D){if(!u){w.trigger("resize_scroll.xdsoft_scroller",[D,true])}D=D>1?1:(D<0||isNaN(D))?0:D;t.css("margin-top",z*D);setTimeout(function(){A.css("marginTop",-parseInt((A[0].offsetHeight-u)*D,10))},10)}).on("resize_scroll.xdsoft_scroller",function(H,E,D){var G,F;u=w[0].clientHeight;B=A[0].offsetHeight;G=u/B;F=G*C[0].offsetHeight;if(G>1){t.hide()}else{t.show();t.css("height",parseInt(F>10?F:10,10));z=C[0].offsetHeight-t[0].offsetHeight;if(D!==true){w.trigger("scroll_element.xdsoft_scroller",[E||Math.abs(parseInt(A.css("marginTop"),10))/(B-u)])}}});w.on("mousewheel",function(D){var E=Math.abs(parseInt(A.css("marginTop"),10));E=E-(D.deltaY*20);if(E<0){E=0}w.trigger("scroll_element.xdsoft_scroller",[E/(B-u)]);D.stopPropagation();return false});w.on("touchstart",function(D){p=x(D);v=Math.abs(parseInt(A.css("marginTop"),10))});w.on("touchmove",function(D){if(p){D.preventDefault();var E=x(D);w.trigger("scroll_element.xdsoft_scroller",[(v-(E.y-p.y))/(B-u)])}});w.on("touchend touchcancel",function(){p=false;v=0})}w.trigger("resize_scroll.xdsoft_scroller",[n])})};g.fn.datetimepicker=function(o,N){var A=this,F=48,z=57,s=96,m=105,w=17,t=91,C=46,x=13,Q=27,L=8,H=37,D=38,O=39,P=40,r=9,G=116,I=65,n=67,M=86,B=90,v=89,J=false,K=false,q=(g.isPlainObject(o)||!o)?g.extend(true,{},f,o):g.extend(true,{},f),y=0,p,E,u=function(S){S.on("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart",function R(){if(S.is(":disabled")||S.data("xdsoft_datetimepicker")){return}clearTimeout(y);y=setTimeout(function(){if(!S.data("xdsoft_datetimepicker")){p(S)}S.off("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart",R).trigger("open.xdsoft")},100)})};p=function(ab){var ae=g('<div class="xdsoft_datetimepicker xdsoft_noselect"></div>'),ai=g('<div class="xdsoft_copyright"><a target="_blank" href="http://xdsoft.net/jqplugins/datetimepicker/">xdsoft.net</a></div>'),Z=g('<div class="xdsoft_datepicker active"></div>'),ao=g('<div class="xdsoft_monthpicker"><button type="button" class="xdsoft_prev"><span class="sr-only">Previous Month</span></button><button type="button" class="xdsoft_today_button"><span class="sr-only">Today</span></button><div class="xdsoft_label xdsoft_month"><span></span><i></i></div><div class="xdsoft_label xdsoft_year"><span></span><i></i></div><button type="button" class="xdsoft_next"><span class="sr-only">Next Month</span></button></div>'),ag=g('<div class="xdsoft_calendar"></div>'),al=g('<div class="xdsoft_timepicker active"><button type="button" class="xdsoft_prev"><span class="sr-only">Previous Hours</span></button><div class="xdsoft_time_box"></div><button type="button" class="xdsoft_next"><span class="sr-only">Next Hours</span></button></div>'),V=al.find(".xdsoft_time_box").eq(0),U=g('<div class="xdsoft_time_variant"></div>'),af=g('<button type="button" class="xdsoft_save_selected blue-gradient-button">Save Selected</button>'),T=g('<div class="xdsoft_select xdsoft_monthselect"><div></div></div>'),aj=g('<div class="xdsoft_select xdsoft_yearselect"><div></div></div>'),ah=false,am,W,S,an,X,aa=0,ad,ak;if(q.id){ae.attr("id",q.id)}if(q.style){ae.attr("style",q.style)}if(q.weeks){ae.addClass("xdsoft_showweeks")}if(q.rtl){ae.addClass("xdsoft_rtl")}ae.addClass("xdsoft_"+q.theme);ae.addClass(q.className);ao.find(".xdsoft_month span").after(T);ao.find(".xdsoft_year span").after(aj);ao.find(".xdsoft_month,.xdsoft_year").on("touchstart mousedown.xdsoft",function(at){var ap=g(this).find(".xdsoft_select").eq(0),aw=0,au=0,av=ap.is(":visible"),aq,ar;ao.find(".xdsoft_select").hide();if(ad.currentTime){aw=ad.currentTime[g(this).hasClass("xdsoft_month")?"getMonth":"getFullYear"]()}ap[av?"hide":"show"]();for(aq=ap.find("div.xdsoft_option"),ar=0;ar<aq.length;ar+=1){if(aq.eq(ar).data("value")===aw){break}else{au+=aq[0].offsetHeight}}ap.xdsoftScroller(q,au/(ap.children()[0].offsetHeight-(ap[0].clientHeight)));at.stopPropagation();return false});var ac=function(aq){var ap=aq.originalEvent;var at=ap.touches?ap.touches[0]:ap;this.touchStartPosition=this.touchStartPosition||at;var ar=Math.abs(this.touchStartPosition.clientX-at.clientX);var av=Math.abs(this.touchStartPosition.clientY-at.clientY);var au=Math.sqrt(ar*ar+av*av);if(au>q.touchMovedThreshold){this.touchMoved=true}};ao.find(".xdsoft_select").xdsoftScroller(q).on("touchstart mousedown.xdsoft",function(aq){var ap=aq.originalEvent;this.touchMoved=false;this.touchStartPosition=ap.touches?ap.touches[0]:ap;aq.stopPropagation();aq.preventDefault()}).on("touchmove",".xdsoft_option",ac).on("touchend mousedown.xdsoft",".xdsoft_option",function(){if(!this.touchMoved){if(ad.currentTime===undefined||ad.currentTime===null){ad.currentTime=ad.now()}var ap=ad.currentTime.getFullYear();if(ad&&ad.currentTime){ad.currentTime[g(this).parent().parent().hasClass("xdsoft_monthselect")?"setMonth":"setFullYear"](g(this).data("value"))}g(this).parent().parent().hide();ae.trigger("xchange.xdsoft");if(q.onChangeMonth&&g.isFunction(q.onChangeMonth)){q.onChangeMonth.call(ae,ad.currentTime,ae.data("input"))}if(ap!==ad.currentTime.getFullYear()&&g.isFunction(q.onChangeYear)){q.onChangeYear.call(ae,ad.currentTime,ae.data("input"))}}});ae.getValue=function(){return ad.getCurrentTime()};ae.setOptions=function(ap){var aq={};q=g.extend(true,{},q,ap);if(ap.allowTimes&&g.isArray(ap.allowTimes)&&ap.allowTimes.length){q.allowTimes=g.extend(true,[],ap.allowTimes)}if(ap.weekends&&g.isArray(ap.weekends)&&ap.weekends.length){q.weekends=g.extend(true,[],ap.weekends)}if(ap.allowDates&&g.isArray(ap.allowDates)&&ap.allowDates.length){q.allowDates=g.extend(true,[],ap.allowDates)}if(ap.allowDateRe&&Object.prototype.toString.call(ap.allowDateRe)==="[object String]"){q.allowDateRe=new RegExp(ap.allowDateRe)}if(ap.highlightedDates&&g.isArray(ap.highlightedDates)&&ap.highlightedDates.length){g.each(ap.highlightedDates,function(au,aw){var at=g.map(aw.split(","),g.trim),ar,ax=new k(h.parseDate(at[0],q.formatDate),at[1],at[2]),av=h.formatDate(ax.date,q.formatDate);if(aq[av]!==undefined){ar=aq[av].desc;if(ar&&ar.length&&ax.desc&&ax.desc.length){aq[av].desc=ar+"\n"+ax.desc}}else{aq[av]=ax}});q.highlightedDates=g.extend(true,[],aq)}if(ap.highlightedPeriods&&g.isArray(ap.highlightedPeriods)&&ap.highlightedPeriods.length){aq=g.extend(true,[],q.highlightedDates);g.each(ap.highlightedPeriods,function(az,aA){var av,aB,ax,ay,at,aw,ar;if(g.isArray(aA)){av=aA[0];aB=aA[1];ax=aA[2];ar=aA[3]}else{var au=g.map(aA.split(","),g.trim);av=h.parseDate(au[0],q.formatDate);aB=h.parseDate(au[1],q.formatDate);ax=au[2];ar=au[3]}while(av<=aB){ay=new k(av,ax,ar);at=h.formatDate(av,q.formatDate);av.setDate(av.getDate()+1);if(aq[at]!==undefined){aw=aq[at].desc;if(aw&&aw.length&&ay.desc&&ay.desc.length){aq[at].desc=aw+"\n"+ay.desc}}else{aq[at]=ay}}});q.highlightedDates=g.extend(true,[],aq)}if(ap.disabledDates&&g.isArray(ap.disabledDates)&&ap.disabledDates.length){q.disabledDates=g.extend(true,[],ap.disabledDates)}if(ap.disabledWeekDays&&g.isArray(ap.disabledWeekDays)&&ap.disabledWeekDays.length){q.disabledWeekDays=g.extend(true,[],ap.disabledWeekDays)}if((q.open||q.opened)&&(!q.inline)){ab.trigger("open.xdsoft")}if(q.inline){ah=true;ae.addClass("xdsoft_inline");ab.after(ae).hide()}if(q.inverseButton){q.next="xdsoft_prev";q.prev="xdsoft_next"}if(q.datepicker){Z.addClass("active")}else{Z.removeClass("active")}if(q.timepicker){al.addClass("active")}else{al.removeClass("active")}if(q.value){ad.setCurrentTime(q.value);if(ab&&ab.val){ab.val(ad.str)}}if(isNaN(q.dayOfWeekStart)){q.dayOfWeekStart=0}else{q.dayOfWeekStart=parseInt(q.dayOfWeekStart,10)%7}if(!q.timepickerScrollbar){V.xdsoftScroller(q,"hide")}if(q.minDate&&/^[\+\-](.*)$/.test(q.minDate)){q.minDate=h.formatDate(ad.strToDateTime(q.minDate),q.formatDate)}if(q.maxDate&&/^[\+\-](.*)$/.test(q.maxDate)){q.maxDate=h.formatDate(ad.strToDateTime(q.maxDate),q.formatDate)}if(q.minDateTime&&/^\+(.*)$/.test(q.minDateTime)){q.minDateTime=ad.strToDateTime(q.minDateTime).dateFormat(q.formatDate)}if(q.maxDateTime&&/^\+(.*)$/.test(q.maxDateTime)){q.maxDateTime=ad.strToDateTime(q.maxDateTime).dateFormat(q.formatDate)}af.toggle(q.showApplyButton);ao.find(".xdsoft_today_button").css("visibility",!q.todayButton?"hidden":"visible");ao.find("."+q.prev).css("visibility",!q.prevButton?"hidden":"visible");ao.find("."+q.next).css("visibility",!q.nextButton?"hidden":"visible");R(q);if(q.validateOnBlur){ab.off("blur.xdsoft").on("blur.xdsoft",function(){if(q.allowBlank&&(!g.trim(g(this).val()).length||(typeof q.mask==="string"&&g.trim(g(this).val())===q.mask.replace(/[0-9]/g,"_")))){g(this).val(null);ae.data("xdsoft_datetime").empty()}else{var au=h.parseDate(g(this).val(),q.format);if(au){g(this).val(h.formatDate(au,q.format))}else{var at=+([g(this).val()[0],g(this).val()[1]].join("")),ar=+([g(this).val()[2],g(this).val()[3]].join(""));if(!q.datepicker&&q.timepicker&&at>=0&&at<24&&ar>=0&&ar<60){g(this).val([at,ar].map(function(av){return av>9?av:"0"+av}).join(":"))}else{g(this).val(h.formatDate(ad.now(),q.format))}}ae.data("xdsoft_datetime").setCurrentTime(g(this).val())}ae.trigger("changedatetime.xdsoft");ae.trigger("close.xdsoft")})}q.dayOfWeekStartPrev=(q.dayOfWeekStart===0)?6:q.dayOfWeekStart-1;ae.trigger("xchange.xdsoft").trigger("afterOpen.xdsoft")};ae.data("options",q).on("touchstart mousedown.xdsoft",function(ap){ap.stopPropagation();ap.preventDefault();aj.hide();T.hide();return false});V.append(U);V.xdsoftScroller(q);ae.on("afterOpen.xdsoft",function(){V.xdsoftScroller(q)});ae.append(Z).append(al);if(q.withoutCopyright!==true){ae.append(ai)}Z.append(ao).append(ag).append(af);if(q.insideParent){g(ab).parent().append(ae)}else{g(q.parentID).append(ae)}am=function(){var ap=this;ap.now=function(at){var au=new Date(),aq,ar;if(!at&&q.defaultDate){aq=ap.strToDateTime(q.defaultDate);au.setFullYear(aq.getFullYear());au.setMonth(aq.getMonth());au.setDate(aq.getDate())}au.setFullYear(au.getFullYear());if(!at&&q.defaultTime){ar=ap.strtotime(q.defaultTime);au.setHours(ar.getHours());au.setMinutes(ar.getMinutes());au.setSeconds(ar.getSeconds());au.setMilliseconds(ar.getMilliseconds())}return au};ap.isValidDate=function(aq){if(Object.prototype.toString.call(aq)!=="[object Date]"){return false}return !isNaN(aq.getTime())};ap.setCurrentTime=function(ar,aq){if(typeof ar==="string"){ap.currentTime=ap.strToDateTime(ar)}else{if(ap.isValidDate(ar)){ap.currentTime=ar}else{if(!ar&&!aq&&q.allowBlank&&!q.inline){ap.currentTime=null}else{ap.currentTime=ap.now()}}}ae.trigger("xchange.xdsoft")};ap.empty=function(){ap.currentTime=null};ap.getCurrentTime=function(){return ap.currentTime};ap.nextMonth=function(){if(ap.currentTime===undefined||ap.currentTime===null){ap.currentTime=ap.now()}var ar=ap.currentTime.getMonth()+1,aq;if(ar===12){ap.currentTime.setFullYear(ap.currentTime.getFullYear()+1);ar=0}aq=ap.currentTime.getFullYear();ap.currentTime.setDate(Math.min(new Date(ap.currentTime.getFullYear(),ar+1,0).getDate(),ap.currentTime.getDate()));ap.currentTime.setMonth(ar);if(q.onChangeMonth&&g.isFunction(q.onChangeMonth)){q.onChangeMonth.call(ae,ad.currentTime,ae.data("input"))}if(aq!==ap.currentTime.getFullYear()&&g.isFunction(q.onChangeYear)){q.onChangeYear.call(ae,ad.currentTime,ae.data("input"))}ae.trigger("xchange.xdsoft");return ar};ap.prevMonth=function(){if(ap.currentTime===undefined||ap.currentTime===null){ap.currentTime=ap.now()}var aq=ap.currentTime.getMonth()-1;if(aq===-1){ap.currentTime.setFullYear(ap.currentTime.getFullYear()-1);aq=11}ap.currentTime.setDate(Math.min(new Date(ap.currentTime.getFullYear(),aq+1,0).getDate(),ap.currentTime.getDate()));ap.currentTime.setMonth(aq);if(q.onChangeMonth&&g.isFunction(q.onChangeMonth)){q.onChangeMonth.call(ae,ad.currentTime,ae.data("input"))}ae.trigger("xchange.xdsoft");return aq};ap.getWeekOfYear=function(at){if(q.onGetWeekOfYear&&g.isFunction(q.onGetWeekOfYear)){var aq=q.onGetWeekOfYear.call(ae,at);if(typeof aq!=="undefined"){return aq}}var ar=new Date(at.getFullYear(),0,1);if(ar.getDay()!==4){ar.setMonth(0,1+((4-ar.getDay()+7)%7))}return Math.ceil((((at-ar)/86400000)+ar.getDay()+1)/7)};ap.strToDateTime=function(au){var ar=[],aq,at;if(au&&au instanceof Date&&ap.isValidDate(au)){return au}ar=/^([+-]{1})(.*)$/.exec(au);if(ar){ar[2]=h.parseDate(ar[2],q.formatDate)}if(ar&&ar[2]){aq=ar[2].getTime()-(ar[2].getTimezoneOffset())*60000;at=new Date((ap.now(true)).getTime()+parseInt(ar[1]+"1",10)*aq)}else{at=au?h.parseDate(au,q.format):ap.now()}if(!ap.isValidDate(at)){at=ap.now()}return at};ap.strToDate=function(ar){if(ar&&ar instanceof Date&&ap.isValidDate(ar)){return ar}var aq=ar?h.parseDate(ar,q.formatDate):ap.now(true);if(!ap.isValidDate(aq)){aq=ap.now(true)}return aq};ap.strtotime=function(aq){if(aq&&aq instanceof Date&&ap.isValidDate(aq)){return aq}var ar=aq?h.parseDate(aq,q.formatTime):ap.now(true);if(!ap.isValidDate(ar)){ar=ap.now(true)}return ar};ap.str=function(){var aq=q.format;if(q.yearOffset){aq=aq.replace("Y",ap.currentTime.getFullYear()+q.yearOffset);aq=aq.replace("y",String(ap.currentTime.getFullYear()+q.yearOffset).substring(2,4))}return h.formatDate(ap.currentTime,aq)};ap.currentTime=this.now()};ad=new am();af.on("touchend click",function(ap){ap.preventDefault();ae.data("changed",true);ad.setCurrentTime(Y());ab.val(ad.str());ae.trigger("close.xdsoft")});ao.find(".xdsoft_today_button").on("touchend mousedown.xdsoft",function(){ae.data("changed",true);ad.setCurrentTime(0,true);ae.trigger("afterOpen.xdsoft")}).on("dblclick.xdsoft",function(){var ap=ad.getCurrentTime(),aq,ar;ap=new Date(ap.getFullYear(),ap.getMonth(),ap.getDate());aq=ad.strToDate(q.minDate);aq=new Date(aq.getFullYear(),aq.getMonth(),aq.getDate());if(ap<aq){return}ar=ad.strToDate(q.maxDate);ar=new Date(ar.getFullYear(),ar.getMonth(),ar.getDate());if(ap>ar){return}ab.val(ad.str());ab.trigger("change");ae.trigger("close.xdsoft")});ao.find(".xdsoft_prev,.xdsoft_next").on("touchend mousedown.xdsoft",function(){var aq=g(this),au=0,ap=false;(function at(av){if(aq.hasClass(q.next)){ad.nextMonth()}else{if(aq.hasClass(q.prev)){ad.prevMonth()}}if(q.monthChangeSpinner){if(!ap){au=setTimeout(at,av||100)}}}(500));g([q.ownerDocument.body,q.contentWindow]).on("touchend mouseup.xdsoft",function ar(){clearTimeout(au);ap=true;g([q.ownerDocument.body,q.contentWindow]).off("touchend mouseup.xdsoft",ar)})});al.find(".xdsoft_prev,.xdsoft_next").on("touchend mousedown.xdsoft",function(){var at=g(this),av=0,ap=false,au=110;(function ar(ax){var az=V[0].clientHeight,aw=U[0].offsetHeight,ay=Math.abs(parseInt(U.css("marginTop"),10));if(at.hasClass(q.next)&&(aw-az)-q.timeHeightInTimePicker>=ay){U.css("marginTop","-"+(ay+q.timeHeightInTimePicker)+"px")}else{if(at.hasClass(q.prev)&&ay-q.timeHeightInTimePicker>=0){U.css("marginTop","-"+(ay-q.timeHeightInTimePicker)+"px")}}V.trigger("scroll_element.xdsoft_scroller",[Math.abs(parseInt(U[0].style.marginTop,10)/(aw-az))]);au=(au>10)?10:au-10;if(!ap){av=setTimeout(ar,ax||au)}}(500));g([q.ownerDocument.body,q.contentWindow]).on("touchend mouseup.xdsoft",function aq(){clearTimeout(av);ap=true;g([q.ownerDocument.body,q.contentWindow]).off("touchend mouseup.xdsoft",aq)})});W=0;ae.on("xchange.xdsoft",function(ap){clearTimeout(W);W=setTimeout(function(){if(ad.currentTime===undefined||ad.currentTime===null){ad.currentTime=ad.now()}var aQ="",ax=new Date(ad.currentTime.getFullYear(),ad.currentTime.getMonth(),1,12,0,0),aO=0,aM,aR=ad.now(),aG=false,aA=false,ar=false,aJ=false,ay,aN,aS,aE,aK,aF,aT=[],av,au=true,az="",aP,aq,aL;while(ax.getDay()!==q.dayOfWeekStart){ax.setDate(ax.getDate()-1)}aQ+="<table><thead><tr>";if(q.weeks){aQ+="<th></th>"}for(aM=0;aM<7;aM+=1){aQ+="<th>"+q.i18n[l].dayOfWeekShort[(aM+q.dayOfWeekStart)%7]+"</th>"}aQ+="</tr></thead>";aQ+="<tbody>";if(q.maxDate!==false){aG=ad.strToDate(q.maxDate);aG=new Date(aG.getFullYear(),aG.getMonth(),aG.getDate(),23,59,59,999)}if(q.minDate!==false){aA=ad.strToDate(q.minDate);aA=new Date(aA.getFullYear(),aA.getMonth(),aA.getDate())}if(q.minDateTime!==false){ar=ad.strToDate(q.minDateTime);ar=new Date(ar.getFullYear(),ar.getMonth(),ar.getDate(),ar.getHours(),ar.getMinutes(),ar.getSeconds())}if(q.maxDateTime!==false){aJ=ad.strToDate(q.maxDateTime);aJ=new Date(aJ.getFullYear(),aJ.getMonth(),aJ.getDate(),aJ.getHours(),aJ.getMinutes(),aJ.getSeconds())}var aI;if(aJ!==false){aI=((aJ.getFullYear()*12)+aJ.getMonth())*31+aJ.getDate()}while(aO<ad.currentTime.countDaysInMonth()||ax.getDay()!==q.dayOfWeekStart||ad.currentTime.getMonth()===ax.getMonth()){aT=[];aO+=1;aN=ax.getDay();aS=ax.getDate();aE=ax.getFullYear();aK=ax.getMonth();aF=ad.getWeekOfYear(ax);aL="";aT.push("xdsoft_date");if(q.beforeShowDay&&g.isFunction(q.beforeShowDay.call)){av=q.beforeShowDay.call(ae,ax)}else{av=null}if(q.allowDateRe&&Object.prototype.toString.call(q.allowDateRe)==="[object RegExp]"){if(!q.allowDateRe.test(h.formatDate(ax,q.formatDate))){aT.push("xdsoft_disabled")}}if(q.allowDates&&q.allowDates.length>0){if(q.allowDates.indexOf(h.formatDate(ax,q.formatDate))===-1){aT.push("xdsoft_disabled")}}var aB=((ax.getFullYear()*12)+ax.getMonth())*31+ax.getDate();if((aG!==false&&ax>aG)||(ar!==false&&ax<ar)||(aA!==false&&ax<aA)||(aJ!==false&&aB>aI)||(av&&av[0]===false)){aT.push("xdsoft_disabled")}if(q.disabledDates.indexOf(h.formatDate(ax,q.formatDate))!==-1){aT.push("xdsoft_disabled")}if(q.disabledWeekDays.indexOf(aN)!==-1){aT.push("xdsoft_disabled")}if(ab.is("[disabled]")){aT.push("xdsoft_disabled")}if(av&&av[1]!==""){aT.push(av[1])}if(ad.currentTime.getMonth()!==aK){aT.push("xdsoft_other_month")}if((q.defaultSelect||ae.data("changed"))&&h.formatDate(ad.currentTime,q.formatDate)===h.formatDate(ax,q.formatDate)){aT.push("xdsoft_current")}if(h.formatDate(aR,q.formatDate)===h.formatDate(ax,q.formatDate)){aT.push("xdsoft_today")}if(ax.getDay()===0||ax.getDay()===6||q.weekends.indexOf(h.formatDate(ax,q.formatDate))!==-1){aT.push("xdsoft_weekend")}if(q.highlightedDates[h.formatDate(ax,q.formatDate)]!==undefined){ay=q.highlightedDates[h.formatDate(ax,q.formatDate)];aT.push(ay.style===undefined?"xdsoft_highlighted_default":ay.style);aL=ay.desc===undefined?"":ay.desc}if(q.beforeShowDay&&g.isFunction(q.beforeShowDay)){aT.push(q.beforeShowDay(ax))}if(au){aQ+="<tr>";au=false;if(q.weeks){aQ+="<th>"+aF+"</th>"}}aQ+='<td data-date="'+aS+'" data-month="'+aK+'" data-year="'+aE+'" class="xdsoft_date xdsoft_day_of_week'+ax.getDay()+" "+aT.join(" ")+'" title="'+aL+'"><div>'+aS+"</div></td>";if(ax.getDay()===q.dayOfWeekStartPrev){aQ+="</tr>";au=true}ax.setDate(aS+1)}aQ+="</tbody></table>";ag.html(aQ);ao.find(".xdsoft_label span").eq(0).text(q.i18n[l].months[ad.currentTime.getMonth()]);ao.find(".xdsoft_label span").eq(1).text(ad.currentTime.getFullYear()+q.yearOffset);az="";aP="";aK="";var aD=0;if(q.minTime!==false){var aH=ad.strtotime(q.minTime);aD=60*aH.getHours()+aH.getMinutes()}var aC=24*60;if(q.maxTime!==false){var aH=ad.strtotime(q.maxTime);aC=60*aH.getHours()+aH.getMinutes()}if(q.minDateTime!==false){var aH=ad.strToDateTime(q.minDateTime);var aU=h.formatDate(ad.currentTime,q.formatDate)===h.formatDate(aH,q.formatDate);if(aU){var aK=60*aH.getHours()+aH.getMinutes();if(aK>aD){aD=aK}}}if(q.maxDateTime!==false){var aH=ad.strToDateTime(q.maxDateTime);var at=h.formatDate(ad.currentTime,q.formatDate)===h.formatDate(aH,q.formatDate);if(at){var aK=60*aH.getHours()+aH.getMinutes();if(aK<aC){aC=aK}}}aq=function aq(aY,aV){var aX=ad.now(),a0,aW=q.allowTimes&&g.isArray(q.allowTimes)&&q.allowTimes.length;aX.setHours(aY);aY=parseInt(aX.getHours(),10);aX.setMinutes(aV);aV=parseInt(aX.getMinutes(),10);aT=[];var aZ=60*aY+aV;if(ab.is("[disabled]")||(aZ>=aC)||(aZ<aD)){aT.push("xdsoft_disabled")}a0=new Date(ad.currentTime);a0.setHours(parseInt(ad.currentTime.getHours(),10));if(!aW){a0.setMinutes(Math[q.roundTime](ad.currentTime.getMinutes()/q.step)*q.step)}if((q.initTime||q.defaultSelect||ae.data("changed"))&&a0.getHours()===parseInt(aY,10)&&((!aW&&q.step>59)||a0.getMinutes()===parseInt(aV,10))){if(q.defaultSelect||ae.data("changed")){aT.push("xdsoft_current")}else{if(q.initTime){aT.push("xdsoft_init_time")}}}if(parseInt(aR.getHours(),10)===parseInt(aY,10)&&parseInt(aR.getMinutes(),10)===parseInt(aV,10)){aT.push("xdsoft_today")}az+='<div class="xdsoft_time '+aT.join(" ")+'" data-hour="'+aY+'" data-minute="'+aV+'">'+h.formatDate(aX,q.formatTime)+"</div>"};if(!q.allowTimes||!g.isArray(q.allowTimes)||!q.allowTimes.length){for(aO=0,aM=0;aO<(q.hours12?12:24);aO+=1){for(aM=0;aM<60;aM+=q.step){var aw=aO*60+aM;if(aw<aD){continue}if(aw>=aC){continue}aP=(aO<10?"0":"")+aO;aK=(aM<10?"0":"")+aM;aq(aP,aK)}}}else{for(aO=0;aO<q.allowTimes.length;aO+=1){aP=ad.strtotime(q.allowTimes[aO]).getHours();aK=ad.strtotime(q.allowTimes[aO]).getMinutes();aq(aP,aK)}}U.html(az);o="";for(aO=parseInt(q.yearStart,10);aO<=parseInt(q.yearEnd,10);aO+=1){o+='<div class="xdsoft_option '+(ad.currentTime.getFullYear()===aO?"xdsoft_current":"")+'" data-value="'+aO+'">'+(aO+q.yearOffset)+"</div>"}aj.children().eq(0).html(o);for(aO=parseInt(q.monthStart,10),o="";aO<=parseInt(q.monthEnd,10);aO+=1){o+='<div class="xdsoft_option '+(ad.currentTime.getMonth()===aO?"xdsoft_current":"")+'" data-value="'+aO+'">'+q.i18n[l].months[aO]+"</div>"}T.children().eq(0).html(o);g(ae).trigger("generate.xdsoft")},10);ap.stopPropagation()}).on("afterOpen.xdsoft",function(){if(q.timepicker){var aq,at,ap,ar;if(U.find(".xdsoft_current").length){aq=".xdsoft_current"}else{if(U.find(".xdsoft_init_time").length){aq=".xdsoft_init_time"}}if(aq){at=V[0].clientHeight;ap=U[0].offsetHeight;ar=U.find(aq).index()*q.timeHeightInTimePicker+1;if((ap-at)<ar){ar=ap-at}V.trigger("scroll_element.xdsoft_scroller",[parseInt(ar,10)/(ap-at)])}else{V.trigger("scroll_element.xdsoft_scroller",[0])}}});S=0;ag.on("touchend click.xdsoft","td",function(ap){ap.stopPropagation();S+=1;var ar=g(this),aq=ad.currentTime;if(aq===undefined||aq===null){ad.currentTime=ad.now();aq=ad.currentTime}if(ar.hasClass("xdsoft_disabled")){return false}aq.setDate(1);aq.setFullYear(ar.data("year"));aq.setMonth(ar.data("month"));aq.setDate(ar.data("date"));ae.trigger("select.xdsoft",[aq]);ab.val(ad.str());if(q.onSelectDate&&g.isFunction(q.onSelectDate)){q.onSelectDate.call(ae,ad.currentTime,ae.data("input"),ap)}ae.data("changed",true);ae.trigger("xchange.xdsoft");ae.trigger("changedatetime.xdsoft");if((S>1||(q.closeOnDateSelect===true||(q.closeOnDateSelect===false&&!q.timepicker)))&&!q.inline){ae.trigger("close.xdsoft")}setTimeout(function(){S=0},200)});U.on("touchstart","div",function(ap){this.touchMoved=false}).on("touchmove","div",ac).on("touchend click.xdsoft","div",function(ap){if(!this.touchMoved){ap.stopPropagation();var ar=g(this),aq=ad.currentTime;if(aq===undefined||aq===null){ad.currentTime=ad.now();aq=ad.currentTime}if(ar.hasClass("xdsoft_disabled")){return false}aq.setHours(ar.data("hour"));aq.setMinutes(ar.data("minute"));ae.trigger("select.xdsoft",[aq]);ae.data("input").val(ad.str());if(q.onSelectTime&&g.isFunction(q.onSelectTime)){q.onSelectTime.call(ae,ad.currentTime,ae.data("input"),ap)}ae.data("changed",true);ae.trigger("xchange.xdsoft");ae.trigger("changedatetime.xdsoft");if(q.inline!==true&&q.closeOnTimeSelect===true){ae.trigger("close.xdsoft")}}});Z.on("mousewheel.xdsoft",function(ap){if(!q.scrollMonth){return true}if(ap.deltaY<0){ad.nextMonth()}else{ad.prevMonth()}return false});ab.on("mousewheel.xdsoft",function(ap){if(!q.scrollInput){return true}if(!q.datepicker&&q.timepicker){an=U.find(".xdsoft_current").length?U.find(".xdsoft_current").eq(0).index():0;if(an+ap.deltaY>=0&&an+ap.deltaY<U.children().length){an+=ap.deltaY}if(U.children().eq(an).length){U.children().eq(an).trigger("mousedown")}return false}if(q.datepicker&&!q.timepicker){Z.trigger(ap,[ap.deltaY,ap.deltaX,ap.deltaY]);if(ab.val){ab.val(ad.str())}ae.trigger("changedatetime.xdsoft");return false}});ae.on("changedatetime.xdsoft",function(ap){if(q.onChangeDateTime&&g.isFunction(q.onChangeDateTime)){var aq=ae.data("input");q.onChangeDateTime.call(ae,ad.currentTime,aq,ap);delete q.value;aq.trigger("change")}}).on("generate.xdsoft",function(){if(q.onGenerate&&g.isFunction(q.onGenerate)){q.onGenerate.call(ae,ad.currentTime,ae.data("input"))}if(ah){ae.trigger("afterOpen.xdsoft");ah=false}}).on("click.xdsoft",function(ap){ap.stopPropagation()});an=0;ak=function(ap,aq){do{ap=ap.parentNode;if(!ap||aq(ap)===false){break}}while(ap.nodeName!=="HTML")};X=function(){var aA,av,aB,au,az,aq,ax,ar,at,ay,aw,ap,aC;ar=ae.data("input");aA=ar.offset();av=ar[0];ay="top";aB=(aA.top+av.offsetHeight)-1;au=aA.left;az="absolute";at=g(q.contentWindow).width();ap=g(q.contentWindow).height();aC=g(q.contentWindow).scrollTop();if((q.ownerDocument.documentElement.clientWidth-aA.left)<Z.parent().outerWidth(true)){var aD=Z.parent().outerWidth(true)-av.offsetWidth;au=au-aD}if(ar.parent().css("direction")==="rtl"){au-=(ae.outerWidth()-ar.outerWidth())}if(q.fixed){aB-=aC;au-=g(q.contentWindow).scrollLeft();az="fixed"}else{ax=false;ak(av,function(aE){if(aE===null){return false}if(q.contentWindow.getComputedStyle(aE).getPropertyValue("position")==="fixed"){ax=true;return false}});if(ax&&!q.insideParent){az="fixed";if(aB+ae.outerHeight()>ap+aC){ay="bottom";aB=(ap+aC)-aA.top}else{aB-=aC}}else{if(aB+ae[0].offsetHeight>ap+aC){aB=aA.top-ae[0].offsetHeight+1}}if(aB<0){aB=0}if(au+av.offsetWidth>at){au=at-av.offsetWidth}}aq=ae[0];ak(aq,function(aE){var aF;aF=q.contentWindow.getComputedStyle(aE).getPropertyValue("position");if(aF==="relative"&&at>=aE.offsetWidth){au=au-((at-aE.offsetWidth)/2);return false}});aw={position:az,left:q.insideParent?av.offsetLeft:au,top:"",bottom:""};if(q.insideParent){aw[ay]=av.offsetTop+av.offsetHeight}else{aw[ay]=aB}ae.css(aw)};ae.on("open.xdsoft",function(aq){var ar=true;if(q.onShow&&g.isFunction(q.onShow)){ar=q.onShow.call(ae,ad.currentTime,ae.data("input"),aq)}if(ar!==false){ae.show();X();g(q.contentWindow).off("resize.xdsoft",X).on("resize.xdsoft",X);if(q.closeOnWithoutClick){g([q.ownerDocument.body,q.contentWindow]).on("touchstart mousedown.xdsoft",function ap(){ae.trigger("close.xdsoft");g([q.ownerDocument.body,q.contentWindow]).off("touchstart mousedown.xdsoft",ap)})}}}).on("close.xdsoft",function(aq){var ap=true;ao.find(".xdsoft_month,.xdsoft_year").find(".xdsoft_select").hide();if(q.onClose&&g.isFunction(q.onClose)){ap=q.onClose.call(ae,ad.currentTime,ae.data("input"),aq)}if(ap!==false&&!q.opened&&!q.inline){ae.hide()}aq.stopPropagation()}).on("toggle.xdsoft",function(){if(ae.is(":visible")){ae.trigger("close.xdsoft")}else{ae.trigger("open.xdsoft")}}).data("input",ab);aa=0;ae.data("xdsoft_datetime",ad);ae.setOptions(q);function Y(){var ap=false,aq;if(q.startDate){ap=ad.strToDate(q.startDate)}else{ap=q.value||((ab&&ab.val&&ab.val())?ab.val():"");if(ap){ap=ad.strToDateTime(ap);if(q.yearOffset){ap=new Date(ap.getFullYear()-q.yearOffset,ap.getMonth(),ap.getDate(),ap.getHours(),ap.getMinutes(),ap.getSeconds(),ap.getMilliseconds())}}else{if(q.defaultDate){ap=ad.strToDateTime(q.defaultDate);if(q.defaultTime){aq=ad.strtotime(q.defaultTime);ap.setHours(aq.getHours());ap.setMinutes(aq.getMinutes())}}}}if(ap&&ad.isValidDate(ap)){ae.data("changed",true)}else{ap=""}return ap||0}function R(ap){var at=function(au,aw){var av=au.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(new RegExp(av)).test(aw)},ar=function(av){try{if(ap.ownerDocument.selection&&ap.ownerDocument.selection.createRange){var au=ap.ownerDocument.selection.createRange();return au.getBookmark().charCodeAt(2)-2}if(av.setSelectionRange){return av.selectionStart}}catch(aw){return 0}},aq=function(av,aw){av=(typeof av==="string"||av instanceof String)?ap.ownerDocument.getElementById(av):av;if(!av){return false}if(av.createTextRange){var au=av.createTextRange();au.collapse(true);au.moveEnd("character",aw);au.moveStart("character",aw);au.select();return true}if(av.setSelectionRange){av.setSelectionRange(aw,aw);return true}return false};if(ap.mask){ab.off("keydown.xdsoft")}if(ap.mask===true){if(h.formatMask){ap.mask=h.formatMask(ap.format)}else{ap.mask=ap.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")}}if(g.type(ap.mask)==="string"){if(!at(ap.mask,ab.val())){ab.val(ap.mask.replace(/[0-9]/g,"_"));aq(ab[0],0)}ab.on("paste.xdsoft",function(ax){var aA=ax.clipboardData||ax.originalEvent.clipboardData||window.clipboardData,au=aA.getData("text"),ay=this.value,az=this.selectionStart;var aw=ay.substr(0,az);var av=ay.substr(az+au.length);ay=aw+au+av;az+=au.length;if(at(ap.mask,ay)){this.value=ay;aq(this,az)}else{if(g.trim(ay)===""){this.value=ap.mask.replace(/[0-9]/g,"_")}else{ab.trigger("error_input.xdsoft")}}ax.preventDefault();return false});ab.on("keydown.xdsoft",function(aL){var aQ=this.value,aP=aL.which,az=this.selectionStart,au=this.selectionEnd,aI=az!==au,aF;if(((aP>=F&&aP<=z)||(aP>=s&&aP<=m))||(aP===L||aP===C)){aF=(aP===L||aP===C)?"_":String.fromCharCode((s<=aP&&aP<=m)?aP-F:aP);if(aP===L&&az&&!aI){az-=1}while(true){var ax=ap.mask.substr(az,1);var aN=az<ap.mask.length;var aO=az>0;var aE=/[^0-9_]/;var aM=aE.test(ax);var aA=aM&&aN&&aO;if(!aA){break}az+=(aP===L&&!aI)?-1:1}if(aL.metaKey){az=0;aI=true}if(aI){var aC=au-az;var aB=ap.mask.replace(/[0-9]/g,"_");var aG=aB.substr(az,aC);var aK=aG.substr(1);var ay=aQ.substr(0,az);var aw=aF+aK;var aJ=aQ.substr(az+aC);aQ=ay+aw+aJ}else{var av=aQ.substr(0,az);var aD=aF;var aH=aQ.substr(az+1);aQ=av+aD+aH}if(g.trim(aQ)===""){aQ=aB}else{if(az===ap.mask.length){aL.preventDefault();return false}}az+=(aP===L)?0:1;while(/[^0-9_]/.test(ap.mask.substr(az,1))&&az<ap.mask.length&&az>0){az+=(aP===L)?0:1}if(at(ap.mask,aQ)){this.value=aQ;aq(this,az)}else{if(g.trim(aQ)===""){this.value=ap.mask.replace(/[0-9]/g,"_")}else{ab.trigger("error_input.xdsoft")}}}else{if(([I,n,M,B,v].indexOf(aP)!==-1&&J)||[Q,D,P,H,O,G,w,r,x].indexOf(aP)!==-1){return true}}aL.preventDefault();return false})}}ad.setCurrentTime(Y());ab.data("xdsoft_datetimepicker",ae).on("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart",function(){if(ab.is(":disabled")||(ab.data("xdsoft_datetimepicker").is(":visible")&&q.closeOnInputClick)){return}if(!q.openOnFocus){return}clearTimeout(aa);aa=setTimeout(function(){if(ab.is(":disabled")){return}ah=true;ad.setCurrentTime(Y(),true);if(q.mask){R(q)}ae.trigger("open.xdsoft")},100)}).on("keydown.xdsoft",function(ar){var aq,ap=ar.which;if([x].indexOf(ap)!==-1&&q.enterLikeTab){aq=g("input:visible,textarea:visible,button:visible,a:visible");ae.trigger("close.xdsoft");aq.eq(aq.index(this)+1).focus();return false}if([r].indexOf(ap)!==-1){ae.trigger("close.xdsoft");return true}}).on("blur.xdsoft",function(){ae.trigger("close.xdsoft")})};E=function(R){var S=R.data("xdsoft_datetimepicker");if(S){S.data("xdsoft_datetime",null);S.remove();R.data("xdsoft_datetimepicker",null).off(".xdsoft");g(q.contentWindow).off("resize.xdsoft");g([q.contentWindow,q.ownerDocument.body]).off("mousedown.xdsoft touchstart");if(R.unmousewheel){R.unmousewheel()}}};g(q.ownerDocument).off("keydown.xdsoftctrl keyup.xdsoftctrl").off("keydown.xdsoftcmd keyup.xdsoftcmd").on("keydown.xdsoftctrl",function(R){if(R.keyCode===w){J=true}}).on("keyup.xdsoftctrl",function(R){if(R.keyCode===w){J=false}}).on("keydown.xdsoftcmd",function(R){if(R.keyCode===t){K=true}}).on("keyup.xdsoftcmd",function(R){if(R.keyCode===t){K=false}});this.each(function(){var R=g(this).data("xdsoft_datetimepicker"),S;if(R){if(g.type(o)==="string"){switch(o){case"show":g(this).select().focus();R.trigger("open.xdsoft");break;case"hide":R.trigger("close.xdsoft");break;case"toggle":R.trigger("toggle.xdsoft");break;case"destroy":E(g(this));break;case"reset":this.value=this.defaultValue;if(!this.value||!R.data("xdsoft_datetime").isValidDate(h.parseDate(this.value,q.format))){R.data("changed",false)}R.data("xdsoft_datetime").setCurrentTime(this.value);break;case"validate":S=R.data("input");S.trigger("blur.xdsoft");break;default:if(R[o]&&g.isFunction(R[o])){A=R[o](N)}}}else{R.setOptions(o)}return 0}if(g.type(o)!=="string"){if(!q.lazyInit||q.open||q.inline){p(g(this))}else{u(g(this))}}});return A};g.fn.datetimepicker.defaults=f;function k(m,o,n){this.date=m;this.desc=o;this.style=n}};(function(a){if(typeof define==="function"&&define.amd){define(["jquery","jquery-mousewheel"],a)}else{if(typeof exports==="object"){module.exports=a(require("jquery"))}else{a(jQuery)}}}(datetimepickerFactory));
/*!
* Parsley.js
* Version 2.6.0 - built Wed, Nov 2nd 2016, 10:27 am
* http://parsleyjs.org
* Guillaume Potier - <guillaume@wisembly.com>
* Marc-Andre Lafortune - <petroselinum@marc-andre.ca>
* MIT Licensed
*/
function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++)i[t]=e[t];return i}return Array.from(e)}var _slice=Array.prototype.slice;!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],t):e.parsley=t(e.jQuery)}(this,function(e){"use strict";function t(e,t){return e.parsleyAdaptedCallback||(e.parsleyAdaptedCallback=function(){var i=Array.prototype.slice.call(arguments,0);i.unshift(this),e.apply(t||T,i)}),e.parsleyAdaptedCallback}function i(e){return 0===e.lastIndexOf(D,0)?e.substr(D.length):e}/**
   * inputevent - Alleviate browser bugs for input events
   * https://github.com/marcandre/inputevent
   * @version v0.0.3 - (built Thu, Apr 14th 2016, 5:58 pm)
   * @author Marc-Andre Lafortune <github@marc-andre.ca>
   * @license MIT
   */
function n(){var t=this,i=window||global;e.extend(this,{isNativeEvent:function(e){return e.originalEvent&&e.originalEvent.isTrusted!==!1},fakeInputEvent:function(i){t.isNativeEvent(i)&&e(i.target).trigger("input")},misbehaves:function(i){t.isNativeEvent(i)&&(t.behavesOk(i),e(document).on("change.inputevent",i.data.selector,t.fakeInputEvent),t.fakeInputEvent(i))},behavesOk:function(i){t.isNativeEvent(i)&&e(document).off("input.inputevent",i.data.selector,t.behavesOk).off("change.inputevent",i.data.selector,t.misbehaves)},install:function(){if(!i.inputEventPatched){i.inputEventPatched="0.0.3";for(var n=["select",'input[type="checkbox"]','input[type="radio"]','input[type="file"]'],r=0;r<n.length;r++){var s=n[r];e(document).on("input.inputevent",s,{selector:s},t.behavesOk).on("change.inputevent",s,{selector:s},t.misbehaves)}}},uninstall:function(){delete i.inputEventPatched,e(document).off(".inputevent")}})}var r=1,s={},a={attr:function(e,t,i){var n,r,s,a=new RegExp("^"+t,"i");if("undefined"==typeof i)i={};else for(n in i)i.hasOwnProperty(n)&&delete i[n];if("undefined"==typeof e||"undefined"==typeof e[0])return i;for(s=e[0].attributes,n=s.length;n--;)r=s[n],r&&r.specified&&a.test(r.name)&&(i[this.camelize(r.name.slice(t.length))]=this.deserializeValue(r.value));return i},checkAttr:function(e,t,i){return e.is("["+t+i+"]")},setAttr:function(e,t,i,n){e[0].setAttribute(this.dasherize(t+i),String(n))},generateID:function(){return""+r++},deserializeValue:function(t){var i;try{return t?"true"==t||("false"==t?!1:"null"==t?null:isNaN(i=Number(t))?/^[\[\{]/.test(t)?e.parseJSON(t):t:i):t}catch(n){return t}},camelize:function(e){return e.replace(/-+(.)?/g,function(e,t){return t?t.toUpperCase():""})},dasherize:function(e){return e.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()},warn:function(){var e;window.console&&"function"==typeof window.console.warn&&(e=window.console).warn.apply(e,arguments)},warnOnce:function(e){s[e]||(s[e]=!0,this.warn.apply(this,arguments))},_resetWarnings:function(){s={}},trimString:function(e){return e.replace(/^\s+|\s+$/g,"")},namespaceEvents:function(t,i){return t=this.trimString(t||"").split(/\s+/),t[0]?e.map(t,function(e){return e+"."+i}).join(" "):""},difference:function(t,i){var n=[];return e.each(t,function(e,t){-1==i.indexOf(t)&&n.push(t)}),n},all:function(t){return e.when.apply(e,_toConsumableArray(t).concat([42,42]))},objectCreate:Object.create||function(){var e=function(){};return function(t){if(arguments.length>1)throw Error("Second argument not supported");if("object"!=typeof t)throw TypeError("Argument must be an object");e.prototype=t;var i=new e;return e.prototype=null,i}}(),_SubmitSelector:'input[type="submit"], button:submit'},o=a,l={namespace:"data-parsley-",inputs:"input, textarea, select",excluded:"input[type=button], input[type=submit], input[type=reset], input[type=hidden]",priorityEnabled:!0,multiple:null,group:null,uiEnabled:!0,validationThreshold:3,focus:"first",trigger:!1,triggerAfterFailure:"input",errorClass:"parsley-error",successClass:"parsley-success",classHandler:function(e){},errorsContainer:function(e){},errorsWrapper:'<ul class="parsley-errors-list"></ul>',errorTemplate:"<li></li>"},u=function(){this.__id__=o.generateID()};u.prototype={asyncSupport:!0,_pipeAccordingToValidationResult:function(){var t=this,i=function(){var i=e.Deferred();return!0!==t.validationResult&&i.reject(),i.resolve().promise()};return[i,i]},actualizeOptions:function(){return o.attr(this.$element,this.options.namespace,this.domOptions),this.parent&&this.parent.actualizeOptions&&this.parent.actualizeOptions(),this},_resetOptions:function(e){this.domOptions=o.objectCreate(this.parent.options),this.options=o.objectCreate(this.domOptions);for(var t in e)e.hasOwnProperty(t)&&(this.options[t]=e[t]);this.actualizeOptions()},_listeners:null,on:function(e,t){this._listeners=this._listeners||{};var i=this._listeners[e]=this._listeners[e]||[];return i.push(t),this},subscribe:function(t,i){e.listenTo(this,t.toLowerCase(),i)},off:function(e,t){var i=this._listeners&&this._listeners[e];if(i)if(t)for(var n=i.length;n--;)i[n]===t&&i.splice(n,1);else delete this._listeners[e];return this},unsubscribe:function(t,i){e.unsubscribeTo(this,t.toLowerCase())},trigger:function(e,t,i){t=t||this;var n,r=this._listeners&&this._listeners[e];if(r)for(var s=r.length;s--;)if(n=r[s].call(t,t,i),n===!1)return n;return this.parent?this.parent.trigger(e,t,i):!0},reset:function(){if("ParsleyForm"!==this.__class__)return this._resetUI(),this._trigger("reset");for(var e=0;e<this.fields.length;e++)this.fields[e].reset();this._trigger("reset")},destroy:function(){if(this._destroyUI(),"ParsleyForm"!==this.__class__)return this.$element.removeData("Parsley"),this.$element.removeData("ParsleyFieldMultiple"),void this._trigger("destroy");for(var e=0;e<this.fields.length;e++)this.fields[e].destroy();this.$element.removeData("Parsley"),this._trigger("destroy")},asyncIsValid:function(e,t){return o.warnOnce("asyncIsValid is deprecated; please use whenValid instead"),this.whenValid({group:e,force:t})},_findRelated:function(){return this.options.multiple?this.parent.$element.find("["+this.options.namespace+'multiple="'+this.options.multiple+'"]'):this.$element}};var d={string:function(e){return e},integer:function(e){if(isNaN(e))throw'Requirement is not an integer: "'+e+'"';return parseInt(e,10)},number:function(e){if(isNaN(e))throw'Requirement is not a number: "'+e+'"';return parseFloat(e)},reference:function(t){var i=e(t);if(0===i.length)throw'No such reference: "'+t+'"';return i},"boolean":function(e){return"false"!==e},object:function(e){return o.deserializeValue(e)},regexp:function(e){var t="";return/^\/.*\/(?:[gimy]*)$/.test(e)?(t=e.replace(/.*\/([gimy]*)$/,"$1"),e=e.replace(new RegExp("^/(.*?)/"+t+"$"),"$1")):e="^"+e+"$",new RegExp(e,t)}},h=function(e,t){var i=e.match(/^\s*\[(.*)\]\s*$/);if(!i)throw'Requirement is not an array: "'+e+'"';var n=i[1].split(",").map(o.trimString);if(n.length!==t)throw"Requirement has "+n.length+" values when "+t+" are needed";return n},p=function(e,t){var i=d[e||"string"];if(!i)throw'Unknown requirement specification: "'+e+'"';return i(t)},c=function(e,t,i){var n=null,r={};for(var s in e)if(s){var a=i(s);"string"==typeof a&&(a=p(e[s],a)),r[s]=a}else n=p(e[s],t);return[n,r]},f=function(t){e.extend(!0,this,t)};f.prototype={validate:function(t,i){if(this.fn)return arguments.length>3&&(i=[].slice.call(arguments,1,-1)),this.fn.call(this,t,i);if(e.isArray(t)){if(!this.validateMultiple)throw"Validator `"+this.name+"` does not handle multiple values";return this.validateMultiple.apply(this,arguments)}if(this.validateNumber)return isNaN(t)?!1:(arguments[0]=parseFloat(arguments[0]),this.validateNumber.apply(this,arguments));if(this.validateString)return this.validateString.apply(this,arguments);throw"Validator `"+this.name+"` only handles multiple values"},parseRequirements:function(t,i){if("string"!=typeof t)return e.isArray(t)?t:[t];var n=this.requirementType;if(e.isArray(n)){for(var r=h(t,n.length),s=0;s<r.length;s++)r[s]=p(n[s],r[s]);return r}return e.isPlainObject(n)?c(n,t,i):[p(n,t)]},requirementType:"string",priority:2};var m=function(e,t){this.__class__="ParsleyValidatorRegistry",this.locale="en",this.init(e||{},t||{})},g={email:/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i,number:/^-?(\d*\.)?\d+(e[-+]?\d+)?$/i,integer:/^-?\d+$/,digits:/^\d+$/,alphanum:/^\w+$/i,url:new RegExp("^(?:(?:https?|ftp)://)?(?:\\S+(?::\\S*)?@)?(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:/\\S*)?$","i")};g.range=g.number;var v=function(e){var t=(""+e).match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return t?Math.max(0,(t[1]?t[1].length:0)-(t[2]?+t[2]:0)):0};m.prototype={init:function(t,i){this.catalog=i,this.validators=e.extend({},this.validators);for(var n in t)this.addValidator(n,t[n].fn,t[n].priority);window.Parsley.trigger("parsley:validator:init")},setLocale:function(e){if("undefined"==typeof this.catalog[e])throw new Error(e+" is not available in the catalog");return this.locale=e,this},addCatalog:function(e,t,i){return"object"==typeof t&&(this.catalog[e]=t),!0===i?this.setLocale(e):this},addMessage:function(e,t,i){return"undefined"==typeof this.catalog[e]&&(this.catalog[e]={}),this.catalog[e][t]=i,this},addMessages:function(e,t){for(var i in t)this.addMessage(e,i,t[i]);return this},addValidator:function(e,t,i){if(this.validators[e])o.warn('Validator "'+e+'" is already defined.');else if(l.hasOwnProperty(e))return void o.warn('"'+e+'" is a restricted keyword and is not a valid validator name.');return this._setValidator.apply(this,arguments)},updateValidator:function(e,t,i){return this.validators[e]?this._setValidator.apply(this,arguments):(o.warn('Validator "'+e+'" is not already defined.'),this.addValidator.apply(this,arguments))},removeValidator:function(e){return this.validators[e]||o.warn('Validator "'+e+'" is not defined.'),delete this.validators[e],this},_setValidator:function(e,t,i){"object"!=typeof t&&(t={fn:t,priority:i}),t.validate||(t=new f(t)),this.validators[e]=t;for(var n in t.messages||{})this.addMessage(n,e,t.messages[n]);return this},getErrorMessage:function(e){var t;if("type"===e.name){var i=this.catalog[this.locale][e.name]||{};t=i[e.requirements]}else t=this.formatMessage(this.catalog[this.locale][e.name],e.requirements);return t||this.catalog[this.locale].defaultMessage||this.catalog.en.defaultMessage},formatMessage:function(e,t){if("object"==typeof t){for(var i in t)e=this.formatMessage(e,t[i]);return e}return"string"==typeof e?e.replace(/%s/i,t):""},validators:{notblank:{validateString:function(e){return/\S/.test(e)},priority:2},required:{validateMultiple:function(e){return e.length>0},validateString:function(e){return/\S/.test(e)},priority:512},type:{validateString:function(e,t){var i=arguments.length<=2||void 0===arguments[2]?{}:arguments[2],n=i.step,r=void 0===n?"any":n,s=i.base,a=void 0===s?0:s,o=g[t];if(!o)throw new Error("validator type `"+t+"` is not supported");if(!o.test(e))return!1;if("number"===t&&!/^any$/i.test(r||"")){var l=Number(e),u=Math.max(v(r),v(a));if(v(l)>u)return!1;var d=function(e){return Math.round(e*Math.pow(10,u))};if((d(l)-d(a))%d(r)!=0)return!1}return!0},requirementType:{"":"string",step:"string",base:"number"},priority:256},pattern:{validateString:function(e,t){return t.test(e)},requirementType:"regexp",priority:64},minlength:{validateString:function(e,t){return e.length>=t},requirementType:"integer",priority:30},maxlength:{validateString:function(e,t){return e.length<=t},requirementType:"integer",priority:30},length:{validateString:function(e,t,i){return e.length>=t&&e.length<=i},requirementType:["integer","integer"],priority:30},mincheck:{validateMultiple:function(e,t){return e.length>=t},requirementType:"integer",priority:30},maxcheck:{validateMultiple:function(e,t){return e.length<=t},requirementType:"integer",priority:30},check:{validateMultiple:function(e,t,i){return e.length>=t&&e.length<=i},requirementType:["integer","integer"],priority:30},min:{validateNumber:function(e,t){return e>=t},requirementType:"number",priority:30},max:{validateNumber:function(e,t){return t>=e},requirementType:"number",priority:30},range:{validateNumber:function(e,t,i){return e>=t&&i>=e},requirementType:["number","number"],priority:30},equalto:{validateString:function(t,i){var n=e(i);return n.length?t===n.val():t===i},priority:256}}};var y={},_=function k(e,t,i){for(var n=[],r=[],s=0;s<e.length;s++){for(var a=!1,o=0;o<t.length;o++)if(e[s].assert.name===t[o].assert.name){a=!0;break}a?r.push(e[s]):n.push(e[s])}return{kept:r,added:n,removed:i?[]:k(t,e,!0).added}};y.Form={_actualizeTriggers:function(){var e=this;this.$element.on("submit.Parsley",function(t){e.onSubmitValidate(t)}),this.$element.on("click.Parsley",o._SubmitSelector,function(t){e.onSubmitButton(t)}),!1!==this.options.uiEnabled&&this.$element.attr("novalidate","")},focus:function(){if(this._focusedField=null,!0===this.validationResult||"none"===this.options.focus)return null;for(var e=0;e<this.fields.length;e++){var t=this.fields[e];if(!0!==t.validationResult&&t.validationResult.length>0&&"undefined"==typeof t.options.noFocus&&(this._focusedField=t.$element,"first"===this.options.focus))break}return null===this._focusedField?null:this._focusedField.focus()},_destroyUI:function(){this.$element.off(".Parsley")}},y.Field={_reflowUI:function(){if(this._buildUI(),this._ui){var e=_(this.validationResult,this._ui.lastValidationResult);this._ui.lastValidationResult=this.validationResult,this._manageStatusClass(),this._manageErrorsMessages(e),this._actualizeTriggers(),!e.kept.length&&!e.added.length||this._failedOnce||(this._failedOnce=!0,this._actualizeTriggers())}},getErrorsMessages:function(){if(!0===this.validationResult)return[];for(var e=[],t=0;t<this.validationResult.length;t++)e.push(this.validationResult[t].errorMessage||this._getErrorMessage(this.validationResult[t].assert));return e},addError:function(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=t.message,n=t.assert,r=t.updateClass,s=void 0===r?!0:r;this._buildUI(),this._addError(e,{message:i,assert:n}),s&&this._errorClass()},updateError:function(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=t.message,n=t.assert,r=t.updateClass,s=void 0===r?!0:r;this._buildUI(),this._updateError(e,{message:i,assert:n}),s&&this._errorClass()},removeError:function(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=t.updateClass,n=void 0===i?!0:i;this._buildUI(),this._removeError(e),n&&this._manageStatusClass()},_manageStatusClass:function(){this.hasConstraints()&&this.needsValidation()&&!0===this.validationResult?this._successClass():this.validationResult.length>0?this._errorClass():this._resetClass()},_manageErrorsMessages:function(t){if("undefined"==typeof this.options.errorsMessagesDisabled){if("undefined"!=typeof this.options.errorMessage)return t.added.length||t.kept.length?(this._insertErrorWrapper(),0===this._ui.$errorsWrapper.find(".parsley-custom-error-message").length&&this._ui.$errorsWrapper.append(e(this.options.errorTemplate).addClass("parsley-custom-error-message")),this._ui.$errorsWrapper.addClass("filled").find(".parsley-custom-error-message").html(this.options.errorMessage)):this._ui.$errorsWrapper.removeClass("filled").find(".parsley-custom-error-message").remove();for(var i=0;i<t.removed.length;i++)this._removeError(t.removed[i].assert.name);for(i=0;i<t.added.length;i++)this._addError(t.added[i].assert.name,{message:t.added[i].errorMessage,assert:t.added[i].assert});for(i=0;i<t.kept.length;i++)this._updateError(t.kept[i].assert.name,{message:t.kept[i].errorMessage,assert:t.kept[i].assert})}},_addError:function(t,i){var n=i.message,r=i.assert;this._insertErrorWrapper(),this._ui.$errorsWrapper.addClass("filled").append(e(this.options.errorTemplate).addClass("parsley-"+t).html(n||this._getErrorMessage(r)))},_updateError:function(e,t){var i=t.message,n=t.assert;this._ui.$errorsWrapper.addClass("filled").find(".parsley-"+e).html(i||this._getErrorMessage(n))},_removeError:function(e){this._ui.$errorsWrapper.removeClass("filled").find(".parsley-"+e).remove()},_getErrorMessage:function(e){var t=e.name+"Message";return"undefined"!=typeof this.options[t]?window.Parsley.formatMessage(this.options[t],e.requirements):window.Parsley.getErrorMessage(e)},_buildUI:function(){if(!this._ui&&!1!==this.options.uiEnabled){var t={};this.$element.attr(this.options.namespace+"id",this.__id__),t.$errorClassHandler=this._manageClassHandler(),t.errorsWrapperId="parsley-id-"+(this.options.multiple?"multiple-"+this.options.multiple:this.__id__),t.$errorsWrapper=e(this.options.errorsWrapper).attr("id",t.errorsWrapperId),t.lastValidationResult=[],t.validationInformationVisible=!1,this._ui=t}},_manageClassHandler:function(){if("string"==typeof this.options.classHandler&&e(this.options.classHandler).length)return e(this.options.classHandler);var t=this.options.classHandler.call(this,this);return"undefined"!=typeof t&&t.length?t:this._inputHolder()},_inputHolder:function(){return!this.options.multiple||this.$element.is("select")?this.$element:this.$element.parent()},_insertErrorWrapper:function(){var t;if(0!==this._ui.$errorsWrapper.parent().length)return this._ui.$errorsWrapper.parent();if("string"==typeof this.options.errorsContainer){if(e(this.options.errorsContainer).length)return e(this.options.errorsContainer).append(this._ui.$errorsWrapper);o.warn("The errors container `"+this.options.errorsContainer+"` does not exist in DOM")}else"function"==typeof this.options.errorsContainer&&(t=this.options.errorsContainer.call(this,this));return"undefined"!=typeof t&&t.length?t.append(this._ui.$errorsWrapper):this._inputHolder().after(this._ui.$errorsWrapper)},_actualizeTriggers:function(){var e,t=this,i=this._findRelated();i.off(".Parsley"),this._failedOnce?i.on(o.namespaceEvents(this.options.triggerAfterFailure,"Parsley"),function(){t._validateIfNeeded()}):(e=o.namespaceEvents(this.options.trigger,"Parsley"))&&i.on(e,function(e){t._validateIfNeeded(e)})},_validateIfNeeded:function(e){var t=this;e&&/key|input/.test(e.type)&&(!this._ui||!this._ui.validationInformationVisible)&&this.getValue().length<=this.options.validationThreshold||(this.options.debounce?(window.clearTimeout(this._debounced),this._debounced=window.setTimeout(function(){return t.validate()},this.options.debounce)):this.validate())},_resetUI:function(){this._failedOnce=!1,this._actualizeTriggers(),"undefined"!=typeof this._ui&&(this._ui.$errorsWrapper.removeClass("filled").children().remove(),this._resetClass(),this._ui.lastValidationResult=[],this._ui.validationInformationVisible=!1)},_destroyUI:function(){this._resetUI(),"undefined"!=typeof this._ui&&this._ui.$errorsWrapper.remove(),delete this._ui},_successClass:function(){this._ui.validationInformationVisible=!0,this._ui.$errorClassHandler.removeClass(this.options.errorClass).addClass(this.options.successClass)},_errorClass:function(){this._ui.validationInformationVisible=!0,this._ui.$errorClassHandler.removeClass(this.options.successClass).addClass(this.options.errorClass)},_resetClass:function(){this._ui.$errorClassHandler.removeClass(this.options.successClass).removeClass(this.options.errorClass)}};var w=function(t,i,n){this.__class__="ParsleyForm",this.$element=e(t),this.domOptions=i,this.options=n,this.parent=window.Parsley,this.fields=[],this.validationResult=null},b={pending:null,resolved:!0,rejected:!1};w.prototype={onSubmitValidate:function(e){var t=this;if(!0!==e.parsley){var i=this._$submitSource||this.$element.find(o._SubmitSelector).first();if(this._$submitSource=null,this.$element.find(".parsley-synthetic-submit-button").prop("disabled",!0),!i.is("[formnovalidate]")){var n=this.whenValidate({event:e});"resolved"===n.state()&&!1!==this._trigger("submit")||(e.stopImmediatePropagation(),e.preventDefault(),"pending"===n.state()&&n.done(function(){t._submit(i)}))}}},onSubmitButton:function(t){this._$submitSource=e(t.currentTarget)},_submit:function(t){if(!1!==this._trigger("submit")){if(t){var i=this.$element.find(".parsley-synthetic-submit-button").prop("disabled",!1);0===i.length&&(i=e('<input class="parsley-synthetic-submit-button" type="hidden">').appendTo(this.$element)),i.attr({name:t.attr("name"),value:t.attr("value")})}this.$element.trigger(e.extend(e.Event("submit"),{parsley:!0}))}},validate:function(t){if(arguments.length>=1&&!e.isPlainObject(t)){o.warnOnce("Calling validate on a parsley form without passing arguments as an object is deprecated.");var i=_slice.call(arguments),n=i[0],r=i[1],s=i[2];t={group:n,force:r,event:s}}return b[this.whenValidate(t).state()]},whenValidate:function(){var t,i=this,n=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],r=n.group,s=n.force,a=n.event;this.submitEvent=a,a&&(this.submitEvent=e.extend({},a,{preventDefault:function(){o.warnOnce("Using `this.submitEvent.preventDefault()` is deprecated; instead, call `this.validationResult = false`"),i.validationResult=!1}})),this.validationResult=!0,this._trigger("validate"),this._refreshFields();var l=this._withoutReactualizingFormOptions(function(){return e.map(i.fields,function(e){return e.whenValidate({force:s,group:r})})});return(t=o.all(l).done(function(){i._trigger("success")}).fail(function(){i.validationResult=!1,i.focus(),i._trigger("error")}).always(function(){i._trigger("validated")})).pipe.apply(t,_toConsumableArray(this._pipeAccordingToValidationResult()))},isValid:function(t){if(arguments.length>=1&&!e.isPlainObject(t)){o.warnOnce("Calling isValid on a parsley form without passing arguments as an object is deprecated.");var i=_slice.call(arguments),n=i[0],r=i[1];t={group:n,force:r}}return b[this.whenValid(t).state()]},whenValid:function(){var t=this,i=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=i.group,r=i.force;this._refreshFields();var s=this._withoutReactualizingFormOptions(function(){return e.map(t.fields,function(e){return e.whenValid({group:n,force:r})})});return o.all(s)},_refreshFields:function(){return this.actualizeOptions()._bindFields()},_bindFields:function(){var t=this,i=this.fields;return this.fields=[],this.fieldsMappedById={},this._withoutReactualizingFormOptions(function(){t.$element.find(t.options.inputs).not(t.options.excluded).each(function(e,i){var n=new window.Parsley.Factory(i,{},t);"ParsleyField"!==n.__class__&&"ParsleyFieldMultiple"!==n.__class__||!0===n.options.excluded||"undefined"==typeof t.fieldsMappedById[n.__class__+"-"+n.__id__]&&(t.fieldsMappedById[n.__class__+"-"+n.__id__]=n,t.fields.push(n))}),e.each(o.difference(i,t.fields),function(e,t){t._trigger("reset")})}),this},_withoutReactualizingFormOptions:function(e){var t=this.actualizeOptions;this.actualizeOptions=function(){return this};var i=e();return this.actualizeOptions=t,i},_trigger:function(e){return this.trigger("form:"+e)}};var F=function(t,i,n,r,s){if(!/ParsleyField/.test(t.__class__))throw new Error("ParsleyField or ParsleyFieldMultiple instance expected");var a=window.Parsley._validatorRegistry.validators[i],o=new f(a);e.extend(this,{validator:o,name:i,requirements:n,priority:r||t.options[i+"Priority"]||o.priority,isDomConstraint:!0===s}),this._parseRequirements(t.options)},C=function(e){var t=e[0].toUpperCase();return t+e.slice(1)};F.prototype={validate:function(e,t){var i;return(i=this.validator).validate.apply(i,[e].concat(_toConsumableArray(this.requirementList),[t]))},_parseRequirements:function(e){var t=this;this.requirementList=this.validator.parseRequirements(this.requirements,function(i){return e[t.name+C(i)]})}};var $=function(t,i,n,r){this.__class__="ParsleyField",this.$element=e(t),"undefined"!=typeof r&&(this.parent=r),this.options=n,this.domOptions=i,this.constraints=[],this.constraintsByName={},this.validationResult=!0,this._bindConstraints()},x={pending:null,resolved:!0,rejected:!1};$.prototype={validate:function(t){arguments.length>=1&&!e.isPlainObject(t)&&(o.warnOnce("Calling validate on a parsley field without passing arguments as an object is deprecated."),t={options:t});var i=this.whenValidate(t);if(!i)return!0;switch(i.state()){case"pending":return null;case"resolved":return!0;case"rejected":return this.validationResult}},whenValidate:function(){var e,t=this,i=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=i.force,r=i.group;return this.refreshConstraints(),!r||this._isInGroup(r)?(this.value=this.getValue(),this._trigger("validate"),(e=this.whenValid({force:n,value:this.value,_refreshed:!0}).always(function(){t._reflowUI()}).done(function(){t._trigger("success")}).fail(function(){t._trigger("error")}).always(function(){t._trigger("validated")})).pipe.apply(e,_toConsumableArray(this._pipeAccordingToValidationResult()))):void 0},hasConstraints:function(){return 0!==this.constraints.length},needsValidation:function(e){return"undefined"==typeof e&&(e=this.getValue()),!(!e.length&&!this._isRequired()&&"undefined"==typeof this.options.validateIfEmpty)},_isInGroup:function(t){return e.isArray(this.options.group)?-1!==e.inArray(t,this.options.group):this.options.group===t},isValid:function(t){if(arguments.length>=1&&!e.isPlainObject(t)){o.warnOnce("Calling isValid on a parsley field without passing arguments as an object is deprecated.");var i=_slice.call(arguments),n=i[0],r=i[1];t={force:n,value:r}}var s=this.whenValid(t);return s?x[s.state()]:!0},whenValid:function(){var t=this,i=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=i.force,r=void 0===n?!1:n,s=i.value,a=i.group,l=i._refreshed;if(l||this.refreshConstraints(),!a||this._isInGroup(a)){if(this.validationResult=!0,!this.hasConstraints())return e.when();if("undefined"!=typeof s&&null!==s||(s=this.getValue()),!this.needsValidation(s)&&!0!==r)return e.when();var u=this._getGroupedConstraints(),d=[];return e.each(u,function(i,n){var r=o.all(e.map(n,function(e){return t._validateConstraint(s,e)}));return d.push(r),"rejected"===r.state()?!1:void 0}),o.all(d)}},_validateConstraint:function(t,i){var n=this,r=i.validate(t,this);return!1===r&&(r=e.Deferred().reject()),o.all([r]).fail(function(e){n.validationResult instanceof Array||(n.validationResult=[]),n.validationResult.push({assert:i,errorMessage:"string"==typeof e&&e})})},getValue:function(){var e;return e="function"==typeof this.options.value?this.options.value(this):"undefined"!=typeof this.options.value?this.options.value:this.$element.val(),"undefined"==typeof e||null===e?"":this._handleWhitespace(e)},refreshConstraints:function(){return this.actualizeOptions()._bindConstraints()},addConstraint:function(e,t,i,n){if(window.Parsley._validatorRegistry.validators[e]){var r=new F(this,e,t,i,n);"undefined"!==this.constraintsByName[r.name]&&this.removeConstraint(r.name),this.constraints.push(r),this.constraintsByName[r.name]=r}return this},removeConstraint:function(e){for(var t=0;t<this.constraints.length;t++)if(e===this.constraints[t].name){this.constraints.splice(t,1);break}return delete this.constraintsByName[e],this},updateConstraint:function(e,t,i){return this.removeConstraint(e).addConstraint(e,t,i)},_bindConstraints:function(){for(var e=[],t={},i=0;i<this.constraints.length;i++)!1===this.constraints[i].isDomConstraint&&(e.push(this.constraints[i]),t[this.constraints[i].name]=this.constraints[i]);this.constraints=e,this.constraintsByName=t;for(var n in this.options)this.addConstraint(n,this.options[n],void 0,!0);return this._bindHtml5Constraints()},_bindHtml5Constraints:function(){this.$element.attr("required")&&this.addConstraint("required",!0,void 0,!0),"string"==typeof this.$element.attr("pattern")&&this.addConstraint("pattern",this.$element.attr("pattern"),void 0,!0),"undefined"!=typeof this.$element.attr("min")&&"undefined"!=typeof this.$element.attr("max")?this.addConstraint("range",[this.$element.attr("min"),this.$element.attr("max")],void 0,!0):"undefined"!=typeof this.$element.attr("min")?this.addConstraint("min",this.$element.attr("min"),void 0,!0):"undefined"!=typeof this.$element.attr("max")&&this.addConstraint("max",this.$element.attr("max"),void 0,!0),"undefined"!=typeof this.$element.attr("minlength")&&"undefined"!=typeof this.$element.attr("maxlength")?this.addConstraint("length",[this.$element.attr("minlength"),this.$element.attr("maxlength")],void 0,!0):"undefined"!=typeof this.$element.attr("minlength")?this.addConstraint("minlength",this.$element.attr("minlength"),void 0,!0):"undefined"!=typeof this.$element.attr("maxlength")&&this.addConstraint("maxlength",this.$element.attr("maxlength"),void 0,!0);var e=this.$element.attr("type");return"undefined"==typeof e?this:"number"===e?this.addConstraint("type",["number",{step:this.$element.attr("step")||"1",base:this.$element.attr("min")||this.$element.attr("value")}],void 0,!0):/^(email|url|range)$/i.test(e)?this.addConstraint("type",e,void 0,!0):this},_isRequired:function(){return"undefined"==typeof this.constraintsByName.required?!1:!1!==this.constraintsByName.required.requirements},_trigger:function(e){return this.trigger("field:"+e)},_handleWhitespace:function(e){return!0===this.options.trimValue&&o.warnOnce('data-parsley-trim-value="true" is deprecated, please use data-parsley-whitespace="trim"'),"squish"===this.options.whitespace&&(e=e.replace(/\s{2,}/g," ")),"trim"!==this.options.whitespace&&"squish"!==this.options.whitespace&&!0!==this.options.trimValue||(e=o.trimString(e)),e},_getGroupedConstraints:function(){if(!1===this.options.priorityEnabled)return[this.constraints];for(var e=[],t={},i=0;i<this.constraints.length;i++){var n=this.constraints[i].priority;t[n]||e.push(t[n]=[]),t[n].push(this.constraints[i])}return e.sort(function(e,t){return t[0].priority-e[0].priority}),e}};var E=$,P=function(){this.__class__="ParsleyFieldMultiple"};P.prototype={addElement:function(e){return this.$elements.push(e),this},refreshConstraints:function(){var t;if(this.constraints=[],this.$element.is("select"))return this.actualizeOptions()._bindConstraints(),this;for(var i=0;i<this.$elements.length;i++)if(e("html").has(this.$elements[i]).length){t=this.$elements[i].data("ParsleyFieldMultiple").refreshConstraints().constraints;for(var n=0;n<t.length;n++)this.addConstraint(t[n].name,t[n].requirements,t[n].priority,t[n].isDomConstraint)}else this.$elements.splice(i,1);return this},getValue:function(){if("function"==typeof this.options.value)return this.options.value(this);if("undefined"!=typeof this.options.value)return this.options.value;if(this.$element.is("input[type=radio]"))return this._findRelated().filter(":checked").val()||"";if(this.$element.is("input[type=checkbox]")){var t=[];return this._findRelated().filter(":checked").each(function(){t.push(e(this).val())}),t}return this.$element.is("select")&&null===this.$element.val()?[]:this.$element.val()},_init:function(){return this.$elements=[this.$element],this}};var V=function(t,i,n){this.$element=e(t);var r=this.$element.data("Parsley");if(r)return"undefined"!=typeof n&&r.parent===window.Parsley&&(r.parent=n,r._resetOptions(r.options)),"object"==typeof i&&e.extend(r.options,i),r;if(!this.$element.length)throw new Error("You must bind Parsley on an existing element.");if("undefined"!=typeof n&&"ParsleyForm"!==n.__class__)throw new Error("Parent instance must be a ParsleyForm instance");return this.parent=n||window.Parsley,this.init(i)};V.prototype={init:function(e){return this.__class__="Parsley",this.__version__="2.6.0",this.__id__=o.generateID(),this._resetOptions(e),this.$element.is("form")||o.checkAttr(this.$element,this.options.namespace,"validate")&&!this.$element.is(this.options.inputs)?this.bind("parsleyForm"):this.isMultiple()?this.handleMultiple():this.bind("parsleyField")},isMultiple:function(){return this.$element.is("input[type=radio], input[type=checkbox]")||this.$element.is("select")&&"undefined"!=typeof this.$element.attr("multiple")},handleMultiple:function(){
var t,i,n=this;if(this.options.multiple||("undefined"!=typeof this.$element.attr("name")&&this.$element.attr("name").length?this.options.multiple=t=this.$element.attr("name"):"undefined"!=typeof this.$element.attr("id")&&this.$element.attr("id").length&&(this.options.multiple=this.$element.attr("id"))),this.$element.is("select")&&"undefined"!=typeof this.$element.attr("multiple"))return this.options.multiple=this.options.multiple||this.__id__,this.bind("parsleyFieldMultiple");if(!this.options.multiple)return o.warn("To be bound by Parsley, a radio, a checkbox and a multiple select input must have either a name or a multiple option.",this.$element),this;this.options.multiple=this.options.multiple.replace(/(:|\.|\[|\]|\{|\}|\$)/g,""),"undefined"!=typeof t&&e('input[name="'+t+'"]').each(function(t,i){e(i).is("input[type=radio], input[type=checkbox]")&&e(i).attr(n.options.namespace+"multiple",n.options.multiple)});for(var r=this._findRelated(),s=0;s<r.length;s++)if(i=e(r.get(s)).data("Parsley"),"undefined"!=typeof i){this.$element.data("ParsleyFieldMultiple")||i.addElement(this.$element);break}return this.bind("parsleyField",!0),i||this.bind("parsleyFieldMultiple")},bind:function(t,i){var n;switch(t){case"parsleyForm":n=e.extend(new w(this.$element,this.domOptions,this.options),new u,window.ParsleyExtend)._bindFields();break;case"parsleyField":n=e.extend(new E(this.$element,this.domOptions,this.options,this.parent),new u,window.ParsleyExtend);break;case"parsleyFieldMultiple":n=e.extend(new E(this.$element,this.domOptions,this.options,this.parent),new P,new u,window.ParsleyExtend)._init();break;default:throw new Error(t+"is not a supported Parsley type")}return this.options.multiple&&o.setAttr(this.$element,this.options.namespace,"multiple",this.options.multiple),"undefined"!=typeof i?(this.$element.data("ParsleyFieldMultiple",n),n):(this.$element.data("Parsley",n),n._actualizeTriggers(),n._trigger("init"),n)}};var M=e.fn.jquery.split(".");if(parseInt(M[0])<=1&&parseInt(M[1])<8)throw"The loaded version of jQuery is too old. Please upgrade to 1.8.x or better.";M.forEach||o.warn("Parsley requires ES5 to run properly. Please include https://github.com/es-shims/es5-shim");var O=e.extend(new u,{$element:e(document),actualizeOptions:null,_resetOptions:null,Factory:V,version:"2.6.0"});e.extend(E.prototype,y.Field,u.prototype),e.extend(w.prototype,y.Form,u.prototype),e.extend(V.prototype,u.prototype),e.fn.parsley=e.fn.psly=function(t){if(this.length>1){var i=[];return this.each(function(){i.push(e(this).parsley(t))}),i}return e(this).length?new V(this,t):void o.warn("You must bind Parsley on an existing element.")},"undefined"==typeof window.ParsleyExtend&&(window.ParsleyExtend={}),O.options=e.extend(o.objectCreate(l),window.ParsleyConfig),window.ParsleyConfig=O.options,window.Parsley=window.psly=O,window.ParsleyUtils=o;var A=window.Parsley._validatorRegistry=new m(window.ParsleyConfig.validators,window.ParsleyConfig.i18n);window.ParsleyValidator={},e.each("setLocale addCatalog addMessage addMessages getErrorMessage formatMessage addValidator updateValidator removeValidator".split(" "),function(t,i){window.Parsley[i]=e.proxy(A,i),window.ParsleyValidator[i]=function(){var e;return o.warnOnce("Accessing the method '"+i+"' through ParsleyValidator is deprecated. Simply call 'window.Parsley."+i+"(...)'"),(e=window.Parsley)[i].apply(e,arguments)}}),window.Parsley.UI=y,window.ParsleyUI={removeError:function(e,t,i){var n=!0!==i;return o.warnOnce("Accessing ParsleyUI is deprecated. Call 'removeError' on the instance directly. Please comment in issue 1073 as to your need to call this method."),e.removeError(t,{updateClass:n})},getErrorsMessages:function(e){return o.warnOnce("Accessing ParsleyUI is deprecated. Call 'getErrorsMessages' on the instance directly."),e.getErrorsMessages()}},e.each("addError updateError".split(" "),function(e,t){window.ParsleyUI[t]=function(e,i,n,r,s){var a=!0!==s;return o.warnOnce("Accessing ParsleyUI is deprecated. Call '"+t+"' on the instance directly. Please comment in issue 1073 as to your need to call this method."),e[t](i,{message:n,assert:r,updateClass:a})}}),!1!==window.ParsleyConfig.autoBind&&e(function(){e("[data-parsley-validate]").length&&e("[data-parsley-validate]").parsley()});var T=e({}),R=function(){o.warnOnce("Parsley's pubsub module is deprecated; use the 'on' and 'off' methods on parsley instances or window.Parsley")},D="parsley:";e.listen=function(e,n){var r;if(R(),"object"==typeof arguments[1]&&"function"==typeof arguments[2]&&(r=arguments[1],n=arguments[2]),"function"!=typeof n)throw new Error("Wrong parameters");window.Parsley.on(i(e),t(n,r))},e.listenTo=function(e,n,r){if(R(),!(e instanceof E||e instanceof w))throw new Error("Must give Parsley instance");if("string"!=typeof n||"function"!=typeof r)throw new Error("Wrong parameters");e.on(i(n),t(r))},e.unsubscribe=function(e,t){if(R(),"string"!=typeof e||"function"!=typeof t)throw new Error("Wrong arguments");window.Parsley.off(i(e),t.parsleyAdaptedCallback)},e.unsubscribeTo=function(e,t){if(R(),!(e instanceof E||e instanceof w))throw new Error("Must give Parsley instance");e.off(i(t))},e.unsubscribeAll=function(t){R(),window.Parsley.off(i(t)),e("form,input,textarea,select").each(function(){var n=e(this).data("Parsley");n&&n.off(i(t))})},e.emit=function(e,t){var n;R();var r=t instanceof E||t instanceof w,s=Array.prototype.slice.call(arguments,r?2:1);s.unshift(i(e)),r||(t=window.Parsley),(n=t).trigger.apply(n,_toConsumableArray(s))};e.extend(!0,O,{asyncValidators:{"default":{fn:function(e){return e.status>=200&&e.status<300},url:!1},reverse:{fn:function(e){return e.status<200||e.status>=300},url:!1}},addAsyncValidator:function(e,t,i,n){return O.asyncValidators[e]={fn:t,url:i||!1,options:n||{}},this}}),O.addValidator("remote",{requirementType:{"":"string",validator:"string",reverse:"boolean",options:"object"},validateString:function(t,i,n,r){var s,a,o={},l=n.validator||(!0===n.reverse?"reverse":"default");if("undefined"==typeof O.asyncValidators[l])throw new Error("Calling an undefined async validator: `"+l+"`");i=O.asyncValidators[l].url||i,i.indexOf("{value}")>-1?i=i.replace("{value}",encodeURIComponent(t)):o[r.$element.attr("name")||r.$element.attr("id")]=t;var u=e.extend(!0,n.options||{},O.asyncValidators[l].options);s=e.extend(!0,{},{url:i,data:o,type:"GET"},u),r.trigger("field:ajaxoptions",r,s),a=e.param(s),"undefined"==typeof O._remoteCache&&(O._remoteCache={});var d=O._remoteCache[a]=O._remoteCache[a]||e.ajax(s),h=function(){var t=O.asyncValidators[l].fn.call(r,d,i,n);return t||(t=e.Deferred().reject()),e.when(t)};return d.then(h,h)},priority:-1}),O.on("form:submit",function(){O._remoteCache={}}),window.ParsleyExtend.addAsyncValidator=function(){return ParsleyUtils.warnOnce("Accessing the method `addAsyncValidator` through an instance is deprecated. Simply call `Parsley.addAsyncValidator(...)`"),O.addAsyncValidator.apply(O,arguments)},O.addMessages("en",{defaultMessage:"This value seems to be invalid.",type:{email:"This value should be a valid email.",url:"This value should be a valid url.",number:"This value should be a valid number.",integer:"This value should be a valid integer.",digits:"This value should be digits.",alphanum:"This value should be alphanumeric."},notblank:"This value should not be blank.",required:"This value is required.",pattern:"This value seems to be invalid.",min:"This value should be greater than or equal to %s.",max:"This value should be lower than or equal to %s.",range:"This value should be between %s and %s.",minlength:"This value is too short. It should have %s characters or more.",maxlength:"This value is too long. It should have %s characters or fewer.",length:"This value length is invalid. It should be between %s and %s characters long.",mincheck:"You must select at least %s choices.",maxcheck:"You must select %s choices or fewer.",check:"You must select between %s and %s choices.",equalto:"This value should be the same."}),O.setLocale("en");var I=new n;I.install();var q=O;return q});
//# sourceMappingURL=parsley.min.js.map

jQuery(document).ready(function(e){function a(e,a){l(e,a),e.find(a.container).first().show()}function n(a,n){if(n.tabs){var t=e("<div />",{"class":n.tabMenuClassName}).insertBefore(a.children(n.container).filter(":first"));a.children(n.container).each(function(i,r){var l=e("<button/>").html(e(this).children(n.header).html()).addClass(0==i?n.tabMenuItemActiveClassName:"").addClass("item"+i).addClass("btn btn-default").prop("type","button").on("click keypress",{container:a.children(n.container),fieldset:e(r)},function(){var t=e(this),i=t.parent().children().index(t);s(a,n,t,i)});n.tabIndex&&l.prop("tabindex",i),t.append(l)})}}function t(a,n){n.navigation&&a.children(n.container).each(function(t){var i=e("<div />").addClass("powermail_fieldwrap").addClass("powermail_tab_navigation").appendTo(e(this));t>0&&i.append(c(a,n)),t<a.children(n.container).length-1&&i.append(o(a,n))})}function i(a,n){e.fn.parsley&&"data-parsley-validate"===a.data("parsley-validate")&&a.parsley().subscribe("parsley:field:validated",function(){v(a,n),C(a,n)})}function r(a,n){n.openTabOnError&&e.fn.parsley&&e.listen("parsley:field:error",function(){setTimeout(function(){a.find("."+n.tabMenuClassName+" > ."+n.tabMenuItemErrorClassName+":first").click()},50)})}function s(a,n,t,i){$activeTab=b(a,n),$activeTab.removeClass(n.tabMenuItemActiveClassName),t.addClass(n.tabMenuItemActiveClassName),l(a,n),e(".powermail_fieldset",a).slice(i,i+1).show()}function l(e,a){e.children(a.container).hide()}function c(a,n){return e("<a />").prop("href","#").addClass("btn btn-warning").html("<").click(function(e){e.preventDefault(),u(a,n)})}function o(a,n){return e("<a />").prop("href","#").addClass("btn btn-primary pull-right").html(">").click(function(e){e.preventDefault(),d(a,n)})}function d(e,a){var n=m(e,a);$activeTab=b(e,a),$activeTab.removeClass(a.tabMenuItemActiveClassName).next().addClass(a.tabMenuItemActiveClassName),f(e,a,n+1)}function u(e,a){var n=m(e,a);$activeTab=b(e,a),$activeTab.removeClass(a.tabMenuItemActiveClassName).prev().addClass(a.tabMenuItemActiveClassName),f(e,a,n-1)}function f(e,a,n){l(e,a),e.find(".powermail_fieldset").slice(n,n+1).show()}function m(e,a){var n=p(e,a),t=n.index(b(e,a));return parseInt(t)}function p(e,a){return e.find("."+a.tabMenuClassName).children()}function b(e,a){var n=p(e,a);return n.filter("."+a.tabMenuItemActiveClassName)}function v(e,a){var n=p(e,a);n.removeClass(a.tabMenuItemErrorClassName)}function C(a,n){a.parsley().isValid()||a.find(".parsley-error").each(function(){var t=a.find(".powermail_fieldset").index(e(this).closest(".powermail_fieldset")),i=p(a,n),r=i.slice(t,t+1);r.addClass(n.tabMenuItemErrorClassName)})}e.fn.powermailTabs=function(e){"use strict";var s=jQuery(this);e=jQuery.extend({container:"fieldset",header:"legend",tabs:!0,navigation:!0,openTabOnError:!0,tabIndex:!0,tabMenuClassName:"btn-group",tabMenuItemActiveClassName:"btn-primary",tabMenuItemErrorClassName:"btn-danger"},e),a(s,e),n(s,e),t(s,e),i(s,e),r(s,e)}});
function PowermailForm(e){"use strict";this.initialize=function(){t(),a(),i(),r(),o(),n(),f(),l()};var t=function(){e.fn.powermailTabs&&e(".powermail_morestep").each(function(){e(this).powermailTabs()})},a=function(){e("form[data-powermail-ajax]").length&&p()},i=function(){if(e('*[data-powermail-location="prefill"]').length&&navigator.geolocation){e(this);navigator.geolocation.getCurrentPosition(function(t){var a=t.coords.latitude,i=t.coords.longitude,r=C()+"/index.php?eID=powermailEidGetLocation";jQuery.ajax({url:r,data:"lat="+a+"&lng="+i,cache:!1,success:function(t){t&&e('*[data-powermail-location="prefill"]').val(t)}})})}},r=function(){e.fn.datetimepicker&&e(".powermail_date").each(function(){var t=e(this);if("date"===t.prop("type")||"datetime-local"===t.prop("type")||"time"===t.prop("type")){if(!t.data("datepicker-force")){if(e(this).data("date-value")){var a=g(e(this).data("date-value"),e(this).data("datepicker-format"),t.prop("type"));null!==a&&e(this).val(a)}return}t.prop("type","text"),t.val(e(this).data("date-value"))}var i=!0,r=!0;"date"===t.data("datepicker-settings")?r=!1:"time"===t.data("datepicker-settings")&&(i=!1),t.datetimepicker({format:t.data("datepicker-format"),timepicker:r,datepicker:i,lang:"en",i18n:{en:{months:t.data("datepicker-months").split(","),dayOfWeek:t.data("datepicker-days").split(",")}}})})},o=function(){e(".powermail_all_type_password.powermail_all_value").html("********")},n=function(){e.fn.parsley&&e(".powermail_reset").on("click","",function(){e('form[data-parsley-validate="data-parsley-validate"]').parsley().reset()})},l=function(){window.Parsley&&(x(),b())},p=function(){var t,a=!1;e(document).on("submit","form[data-powermail-ajax]",function(i){var r=e(this),o=r.closest(".tx-powermail");r.data("powermail-ajax-uri")&&(t=r.data("powermail-ajax-uri"));var n=r.data("powermail-form");a||(e.ajax({type:"POST",url:r.prop("action"),data:new FormData(r.get(0)),contentType:!1,processData:!1,beforeSend:function(){s(r)},complete:function(){d(r),f(),c(o)},success:function(i){var o=e('*[data-powermail-form="'+n+'"]:first',i);o.length?(e('*[data-powermail-form="'+n+'"]:first').closest(".tx-powermail").html(o),e.fn.powermailTabs&&e(".powermail_morestep").powermailTabs(),e.fn.parsley&&e('form[data-parsley-validate="data-parsley-validate"]').parsley(),w()):(t?D(t):r.submit(),a=!0)}}),i.preventDefault())})},s=function(t){d(t),e(".powermail_submit",t).length?e(".powermail_submit",t).parent().append(y()):t.closest(".tx-powermail").append(y())},d=function(e){e.closest(".tx-powermail").find(".powermail_progressbar").remove()},c=function(t){var a=e.Event("submitted.powermail.form");t.trigger(a)},f=function(){e(".powermail_fieldwrap_file").find(".deleteAllFiles").each(function(){u(e(this).closest(".powermail_fieldwrap_file").find('input[type="file"]'))}),e(".deleteAllFiles").click(function(){m(e(this).closest(".powermail_fieldwrap_file").find('input[type="hidden"]')),e(this).closest("ul").fadeOut(function(){e(this).remove()})})},u=function(e){e.prop("disabled","disabled").addClass("hide").prop("type","hidden")},m=function(e){e.prop("disabled",!1).removeClass("hide").prop("type","file")},w=function(){e("img.powermail_captchaimage").each(function(){var t=h(e(this).prop("src"));e(this).prop("src",t+"?hash="+v(5))})},h=function(e){var t=e.split("?");return t[0]},v=function(e){for(var t="",a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=0;i<e;i++)t+=a.charAt(Math.floor(Math.random()*a.length));return t},g=function(e,t,a){var i=Date.parseDate(e,t);if(null===i)return null;var r=new Date(i),o=r.getFullYear()+"-";o+=("0"+(r.getMonth()+1)).slice(-2)+"-",o+=("0"+r.getDate()).slice(-2);var n=("0"+r.getHours()).slice(-2)+":"+("0"+r.getMinutes()).slice(-2),l=o+"T"+n;return"date"===a?o:"datetime-local"===a?l:"time"===a?n:null},y=function(){return e("<div />").addClass("powermail_progressbar").html(e("<div />").addClass("powermail_progress").html(e("<div />").addClass("powermail_progress_inner")))},_=function(e){for(var t=e.get(0),a=0,i=0;i<t.files.length;i++){var r=t.files[i];r.size>a&&(a=r.size)}return parseInt(a)},x=function(){window.Parsley.addValidator("powermailfilesize",function(t,a){if(a.indexOf(",")!==-1){var i=a.split(","),r=parseInt(i[0]),o=e('*[name="tx_powermail_pi1[field]['+i[1]+'][]"]');if(o.length&&_(o)>r)return!1}return!0},32).addMessage("en","powermailfilesize","Error")},b=function(){window.Parsley.addValidator("powermailfileextensions",function(t,a){var i=e('*[name="tx_powermail_pi1[field]['+a+'][]"]');return!i.length||k(j(t),i.prop("accept"))},32).addMessage("en","powermailfileextensions","Error")},k=function(e,t){return t.indexOf("."+e)!==-1},j=function(e){return e.split(".").pop().toLowerCase()},D=function(e){e.indexOf("http")!==-1?window.location=e:window.location.pathname=e},C=function(){var t;return t=e("base").length>0?jQuery("base").prop("href"):"https:"!=window.location.protocol?"http://"+window.location.hostname:"https://"+window.location.hostname}}jQuery(document).ready(function(e){"use strict";var t=new window.PowermailForm(e);t.initialize()});
function PowermailMarketing(i){"use strict";this.initialize=function(){a()};var a=function(){var a=i("#powermail_marketing_information"),t="";t+="tx_powermail_pi1[language]="+a.data("language"),t+="&id="+a.data("pid"),t+="&tx_powermail_pi1[pid]="+a.data("pid"),t+="&tx_powermail_pi1[mobileDevice]="+(e()?1:0),t+="&tx_powermail_pi1[referer]="+encodeURIComponent(document.referrer),jQuery.ajax({url:n()+"/index.php?&type=1540053358",data:t,cache:!1})},e=function(){var i=navigator.userAgent,a={iphone:i.match(/(iPhone|iPod|iPad)/),blackberry:i.match(/BlackBerry/),android:i.match(/Android/)};return a.iphone||a.blackberry||a.android},n=function(){var a,e=i("base");return a=e.length>0?e.prop("href"):"https:"!=window.location.protocol?"http://"+window.location.hostname:"https://"+window.location.hostname}}jQuery(document).ready(function(i){var a=new window.PowermailMarketing(i);a.initialize()});
//Disable Select Options
//Marcelo Vetter - 2/13/2018
$('.powermail_select option[value*="--"], .enrollmentperiod option[value*="Academic"]').prop('disabled', true);
$('.powermail_date').datetimepicker({scrollInput:false});


//scroll to the top of the element after ajax is complete for people to see the success message
$(document).ajaxComplete(function(event,xhr,options) {
    //$( '#msg' ).append( '<li>Request Complete.</li>' );

    if(options.url) {
        //find the # id from the post URL: https://lasierra.edu/development/?tx_powermail_pi1%5Baction%5D=create&tx_powermail_pi1%5Bcontroller%5D=Form&cHash=db35031d771be44ddad7b21ac0639bb2#c10456
        // hash = #c10456
        var lsuhash = "#" + options.url.substring(options.url.indexOf('#')+1);

        if (lsuhash.indexOf("#c") >= 0) {

            //alert(options.url);

            $('html, body').animate({scrollTop: $(lsuhash).removeClass('well').offset().top - 115}, 500);
        }
    }
});


// Disable Send button after form is validated and while form is been processed
$('.powermail_form').submit(function(e) {
    if ($(this).parsley().isValid()) {
        $(this).find('.powermail_submit').addClass('disabled').attr('disabled', true).val('Sending...');
    }
});


function stepScrollTop() {
    $('html, body').animate({scrollTop: $('.powermail_morestep').closest('.frame').offset().top - 50}, 1);
}

$(function() {
    var moresteps = $('.powermail_morestep');
    if (moresteps.length > 0) {
        var tabnavigation = $('.powermail_tab_navigation a');
        tabnavigation.addClass('btn-lg').html('Previous');
        $('.powermail_tab_navigation a.pull-right').html('Next');

        var i = 1;
        $('.btn-group button').each(function(index, value) {
            $(value).html(i++);
        });
        $('.btn-group').before('<span class="pull-left steps-label">Step </span>');

        tabnavigation.on( "click", function() {
            stepScrollTop();
        });

        $.listen('parsley:field:error', function() {
            $('.parsley-error-msg').remove();
            $('.item0').click();
            let errorMessage = 'Please verify your answers and try again. Look for highlighed fields that are missing to be completed.';
            $('.steps-label').next().after('<div class="parsley-error-msg parsley-error p-2">'+errorMessage+'</div>');
            stepScrollTop();
        });
    }
    $(document).on('focusin', '.powermail_form', function(e) {
        $(this).find('.powermail_mtc_id').val(getCookie('mtc_id'));
    });

    //find parent wrapper and remove frame-background-light class
    $('.tx-powermail').closest('.frame').removeClass('frame-background-light')
        .addClass('frame-powermail');
});

function getUrlParameter(a){a=a.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");let regex=new RegExp("[\\?&]"+a+"=([^&#]*)");let results=regex.exec(location.search);return results===null?"":decodeURIComponent(results[1].replace(/\+/g," "))}function getDomain(d){if(!d){return}var c=document.createElement("a");c.href=d;try{return c.hostname.match(/[^.]*\.[^.]{2,3}(?:\.[^.]{2,3})?$/)[0]}catch(b){}}let slateWebForm="#form_page_70fe4ef8-077a-459a-b6b5-1f979f322c5b";LSU={eatBrookie:function(a){let cookies="; "+document.cookie;let cvals=cookies.split("; "+a+"=");if(cvals.length>1){return cvals.pop().split(";")[0]}},bakeBrookie:function(b,e,a,f,d,c){let str=b+"="+e+";";if(a){str+="Expires="+a.toUTCString()+";"}if(f){str+="Path="+f+";"}if(d){str+="Domain="+d+";"}if(!c){str+="samesite=lax;"}else{str+="samesite="+c+";"}document.cookie=str},eatCookie:function(a){let result=document.cookie.match(new RegExp(a+"=([^;]+)"));return result&&(result=JSON.parse(result[1]))},bakeCookie:function(a,c,d,b){let expires="";if(d){let date=new Date();date.setTime(date.getTime()+(d*24*60*60*1000));expires="; expires="+date.toUTCString()}if(!b){b="; samesite=lax"}else{b="; samesite="+b}if(LSU.hostname!==undefined||true){document.cookie=[a,"=",JSON.stringify(c),"; domain=.",LSU.hostname,expires,b,"; path=/;"].join("")}else{console.error("LSU.hostname is undefined or null")}},hostname:getDomain(document.location.hostname),formFields:$(slateWebForm+' input:not(input[type="hidden"], input[type="submit"])'),program:{value:[],logic:function(){$(".powermail_submit").click(function(){$('[name="tx_powermail_pi1[field][program][]"]:checked').each(function(){if(LSU.program.value.indexOf(this.value)===-1){LSU.program.value.push(this.value)}})})}},address:{zipByIp:$(".zipbyip"),country:$(".country"),contryname:$(".contryname"),city:$(".city"),state:$(".state"),address1:$(".address"),stateOptions:$(".state option")},populateAddress:{logic:function(){if((LSU.address.zip.val()===""||LSU.address.zipByIp.val()==="")&&LSU.ipData.value.ipInfo!==undefined){LSU.address.zip.val(LSU.ipData.value.ipInfo.postal);LSU.address.zipByIp.val(LSU.ipData.value.ipInfo.postal);LSU.address.country.val(LSU.ipData.value.ipInfo.country);LSU.address.contryname.val(LSU.ipData.value.ipInfo.country_name);LSU.address.city.val(LSU.ipData.value.ipInfo.city);$("#form_d8382573-f154-46b5-a116-cb58d09d9726_region option").filter(function(){return this.text===LSU.ipData.value.ipInfo.region}).attr("selected",true)}}},UTM:{started:false,campaign:$(".utmcampaign"),source:$(".utmsource"),medium:$(".utmmedium"),content:$(".utmcontent"),term:$(".utmterm"),expiration:new Date(+new Date()+1000*60*30),brookie:{temp:null,array:null},urlParams:{campaign:getUrlParameter("utm_campaign"),source:getUrlParameter("utm_source"),medium:getUrlParameter("utm_medium"),content:getUrlParameter("utm_content"),term:getUrlParameter("utm_term")},tagParams:null,cookie:{temp:false,json:false},logic:function(b){if(LSU.UTM.started===false){if(typeof a!=="object"){let brookieTemp=LSU.eatBrookie("sesTrInfoCook");if(brookieTemp!==undefined){LSU.UTM.brookie.temp=brookieTemp.split("|");LSU.UTM.brookie.temp.forEach(function(c){var d=c.split("=")[0];LSU.UTM.brookie.temp[d]=c.split("=")[1]})}LSU.UTM.brookie.array=LSU.UTM.brookie.temp||[["utmccn",LSU.UTM.urlParams.campaign],["utmcsr",LSU.UTM.urlParams.source],["utmcmd",LSU.UTM.urlParams.medium],["utmcnt",LSU.UTM.urlParams.content],["utmtrm",LSU.UTM.urlParams.term]];LSU.bakeBrookie("sesTrInfoCook",LSU.UTM.brookie.array.join("|"),null,"/",LSU.hostname);LSU.UTM.cookie.json=LSU.eatCookie("trfInfo");if((LSU.UTM.urlParams.campaign!==undefined&&LSU.UTM.urlParams.campaign!=="")||(LSU.UTM.urlParams.source!==undefined&&LSU.UTM.urlParams.source!=="")||(LSU.UTM.urlParams.medium!==undefined&&LSU.UTM.urlParams.medium!=="")||(LSU.UTM.urlParams.content!==undefined&&LSU.UTM.urlParams.content!=="")||(LSU.UTM.urlParams.term!==undefined&&LSU.UTM.urlParams.term!=="")){LSU.UTM.cookie.json={utmccn:LSU.UTM.urlParams.campaign,utmcsr:LSU.UTM.urlParams.source,utmcmd:LSU.UTM.urlParams.medium,utmcnt:LSU.UTM.urlParams.content,utmtrm:LSU.UTM.urlParams.term};LSU.bakeCookie("trfInfo",LSU.UTM.cookie.json)}if(LSU.UTM.cookie.json!==null){var a=LSU.UTM.cookie.json}}if(a!==undefined){let utm="";if(typeof a.utmccn==="string"){LSU.UTM.campaign.val(a.utmccn);utm+="&utm_campaign="+a.utmccn}if(typeof a.utmcsr==="string"){LSU.UTM.source.val(a.utmcsr);utm+="&utm_source="+a.utmcsr}if(typeof a.utmcmd==="string"){LSU.UTM.medium.val(a.utmcmd);utm+="&utm_medium="+a.utmcmd}if(typeof a.utmcnt==="string"){LSU.UTM.content.val(a.utmcnt);utm+="&utm_content="+a.utmcnt}if(typeof a.utmtrm==="string"){LSU.UTM.term.val(a.utmtrm);utm+="&utm_term="+a.utmtrm}$(".web-inquiry form").attr("action",LSU.formAction+utm)}}LSU.UTM.started=true}},funnel:{pages:null,logic:function(){let date=new Date();let pageInfo={url:document.location.href,title:$("head > title").text(),datetime:date.toUTCString()};LSU.bakeCookie("pgfn",pageInfo)}},ipData:{apiUrl:"/assets/php/clientip.php?token=",apiKey:"f6qqn8XJD4cMZzy5ZRWPOB51",value:false,field:$(".ipdata"),carrier:$(".carrier"),logic:function(a){if(LSU.ipData.value===false){let request=new XMLHttpRequest();request.open("GET",LSU.ipData.apiUrl+LSU.ipData.apiKey,true);request.setRequestHeader("Accept","application/json");request.onreadystatechange=function(){if(this.readyState===4){LSU.ipData.value=JSON.parse(this.responseText);if(typeof LSU.ipData.value==="object"){LSU.ipData.carrier.val(LSU.ipData.value.org);LSU.ipData.field.val(JSON.stringify(LSU.ipData.value));LSU.populateAddress.logic()}}};request.send()}}},mautic:{id:false,field:$(".mauticid"),logic:function(a){if(LSU.mautic.id===false){if(typeof LSU.eatCookie==="function"){LSU.mautic.id=LSU.eatCookie("mtc_id");if(LSU.mautic.id!==false){LSU.mautic.field.val(LSU.mautic.id)}}}}},mixpanel:{value:false,cookie:false,field:$(".mixpanelid"),logic:function(a){if(LSU.mixpanel.value===false){if(typeof mixpanel==="object"&&typeof mixpanel.cookie.name==="string"&&typeof getCookie==="function"){LSU.mixpanel.cookie=getCookie(mixpanel.cookie.name);if(LSU.mixpanel.cookie!==null){LSU.mixpanel.value=JSON.parse(decodeURIComponent(getCookie(mixpanel.cookie.name)));LSU.mixpanel.field.val(LSU.mixpanel.value.distinct_id)}}}}},start:function(){LSU.program.logic();LSU.formFields.attr("disabled","disabled");LSU.formFields.attr("readonly","readonly");$(window).on("load",function(){LSU.formFields.removeAttr("disabled");LSU.formFields.removeAttr("readonly");LSU.UTM.logic()});LSU.formFields.focus(function(){LSU.ipData.logic();LSU.mautic.logic();LSU.mixpanel.logic()});$(function(){LSU.funnel.logic();LSU.UTM.logic()})}};LSU.start();(function(){if(document.location.hash){setTimeout(function(){window.scrollTo(window.scrollX,window.scrollY-100)},10)}})();
$(document).ready(function() {

    $('body').scrollspy({target: '.menu-section', offset: 160});

    $('a[data-target^="#"]').on('click', function (event) {
        event.preventDefault();

        $('html, body').animate({
            scrollTop: $($.attr(this, 'data-target')).offset().top
        }, 500);
    });

    // New Affix solution since Bootstrap 4 dropped Affix
    let toggleAffix = function (affixElement, wrapper, scrollElement, width) {

        let height = affixElement.outerHeight(),
            top = wrapper.offset().top;

        if (scrollElement.scrollTop() >= top - 70) {
            wrapper.height(height);
            affixElement.width(width);
            affixElement.addClass("affix");
        } else {
            affixElement.removeClass("affix");
            wrapper.height('auto');
            affixElement.width(width);
        }
    };

    $('[data-toggle="affix"]').each(function () {
        let ele = $(this),
            wrapper = $('<div></div>');

        ele.before(wrapper);
        $(window).on('scroll resize', function () {
            toggleAffix(ele, wrapper, $(this));
        });

        let width = ele.outerWidth();
        // let offsetBottom = $('footer').outerHeight(true) + 30;
        // console.log(offsetBottom);

        // init
        toggleAffix(ele, wrapper, $(window), width);
    });

    // Stop fixed position at footer
    // https://stackoverflow.com/questions/8653025/stop-fixed-position-at-footer/38260165
    $(window).scroll(() => {
        // Distance from top of document to top of footer.
        let topOfFooter = $('footer').position().top;
        // let footerHeight = $('footer').outerHeight();

        let sidebarHeight = $('.sidebar-menu').outerHeight() + 70;

        // Distance user has scrolled from top, adjusted to take in height of sidebar (570 pixels inc. padding).
        let scrollDistanceFromTopOfDoc = $(document).scrollTop() + sidebarHeight;
        // Difference between the two.
        let scrollDistanceFromTopOfFooter = scrollDistanceFromTopOfDoc - topOfFooter;

        // If user has scrolled further than footer,
        // pull sidebar up using a negative margin.
        if (scrollDistanceFromTopOfDoc > topOfFooter) {
            $('.affix').css('margin-top', 0 - scrollDistanceFromTopOfFooter);
        } else {
            $('.affix').css('margin-top', 0);
        }
    });

});
