vendor: 13,674 bytes, lines 1-17
1/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ 2/* 3* Google Map Embed Place 4* Copyright (c) 2018 Jackie Hayduk 5* Dual licensed under the MIT and GPL licenses: 6* http://www.opensource.org/licenses/mit-license.php 7* http://www.gnu.org/licenses/gpl.html 8*/ 9function createMap(a,e){var gmap=document.createElement("iframe");gmap.setAttribute("title",mapLocation[a].title),gmap.src="https://www.google.com/maps/embed/v1/place?key="+apiKey+"&q="+mapLocation[a].name+mapLocation[a].address+"&zoom=12", 10//change the zoom value to adjust the mmap default zoom level 11document.getElementById(e).appendChild(gmap).classList.add("gmap")}function createDirectionsMap(a,e){function setDirectionsHref(){ 12//console.log('Fired'); 13var grabInputVal=directionsInput.value; 14//console.log(grabInputVal); 15directionsSubmit.setAttribute("href","https://www.google.com/maps/dir/"+grabInputVal+"/"+mapLocation[a].name+mapLocation[a].address)}createMap(a,e);var directions=document.createElement("div");document.getElementById(e).appendChild(directions).classList.add("directions"); 16//change classes added to match those already in place on the site if possible 17var directionsInput=document.createElement("input");directions.appendChild(directionsInput).classList.add("input"),directionsInput.setAttribute("type","text"),directionsInput.setAttribute("aria-label","Directions Map Starting Location"),directionsInput.setAttribute("placeholder","Enter Your Address");var directionsSubmit=document.createElement("a");directions.appendChild(directionsSubmit).classList.add("btn"),directionsSubmit.setAttribute("target","_blank"),directionsSubmit.setAttribute("href","https://www.google.com/maps/dir//"+mapLocation[a].name+mapLocation[a].address),directionsSubmit.innerHTML="GO",directionsInput.addEventListener("change",setDirectionsHref)}!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){function r(a){var b=a.length,c=m.type(a);return"function"!==c&&!m.isWindow(a)&&(!(1!==a.nodeType||!b)||("array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a))}function w(a,b,c){if(m.isFunction(b))return m.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return m.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(v.test(b))return m.filter(b,a,c);b=m.filter(b,a)}return m.grep(a,function(a){return m.inArray(a,b)>=0!==c})}function D(a,b){do{a=a[b]}while(a&&1!==a.nodeType);return a}function G(a){var b=F[a]={};return m.each(a.match(E)||[],function(a,c){b[c]=!0}),b}function I(){y.addEventListener?(y.removeEventListener("DOMContentLoaded",J,!1),a.removeEventListener("load",J,!1)):(y.detachEvent("onreadystatechange",J),a.detachEvent("onload",J))}function J(){(y.addEventListener||"load"===event.type||"complete"===y.readyState)&&(I(),m.ready())}function O(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(N,"-$1").toLowerCase();if("string"==typeof(c=a.getAttribute(d))){try{c="true"===c||"false"!==c&&("null"===c?null:+c+""===c?+c:M.test(c)?m.parseJSON(c):c)}catch(e){}m.data(a,b,c)}else c=void 0}return c}function P(a){var b;for(b in a)if(("data"!==b||!m.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function Q(a,b,d,e){if(m.acceptData(a)){var f,g,h=m.expando,i=a.nodeType,j=i?m.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||m.guid++:h),j[k]||(j[k]=i?{}:{toJSON:m.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=m.extend(j[k],b):j[k].data=m.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[m.camelCase(b)]=d),"string"==typeof b?null==(f=g[b])&&(f=g[m.camelCase(b)]):f=g,f}}function R(a,b,c){if(m.acceptData(a)){var d,e,f=a.nodeType,g=f?m.cache:a,h=f?a[m.expando]:m.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){m.isArray(b)?b=b.concat(m.map(b,m.camelCase)):b in d?b=[b]:(b=m.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;for(;e--;)delete d[b[e]];if(c?!P(d):!m.isEmptyObject(d))return}(c||(delete g[h].data,P(g[h])))&&(f?m.cleanData([a],!0):k.deleteExpando||g!=g.window?delete g[h]:g[h]=null)}}}function ab(){return!0}function bb(){return!1}function cb(){try{return y.activeElement}catch(a){}}function db(a){var b=eb.split("|"),c=a.createDocumentFragment();if(c.createElement)for(;b.length;)c.createElement(b.pop());return c}function ub(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==K?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==K?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||m.nodeName(d,b)?f.push(d):m.merge(f,ub(d,b));return void 0===b||b&&m.nodeName(a,b)?m.merge([a],f):f}function vb(a){W.test(a.type)&&(a.defaultChecked=a.checked)}function wb(a,b){return m.nodeName(a,"table")&&m.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function xb(a){return a.type=(null!==m.find.attr(a,"type"))+"/"+a.type,a}function yb(a){var b=pb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function zb(a,b){for(var c,d=0;null!=(c=a[d]);d++)m._data(c,"globalEval",!b||m._data(b[d],"globalEval"))}function Ab(a,b){if(1===b.nodeType&&m.hasData(a)){var c,d,e,f=m._data(a),g=m._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)m.event.add(b,c,h[c][d])}g.data&&(g.data=m.extend({},g.data))}}function Bb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!k.noCloneEvent&&b[m.expando]){e=m._data(b);for(d in e.events)m.removeEvent(b,d,e.handle);b.removeAttribute(m.expando)}"script"===c&&b.text!==a.text?(xb(b).text=a.text,yb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),k.html5Clone&&a.innerHTML&&!m.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&W.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}function Eb(b,c){var d,e=m(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:m.css(e[0],"display");return e.detach(),f}function Fb(a){var b=y,c=Db[a];return c||(c=Eb(a,b),"none"!==c&&c||(Cb=(Cb||m("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=(Cb[0].contentWindow||Cb[0].contentDocument).document,b.write(),b.close(),c=Eb(a,b),Cb.detach()),Db[a]=c),c}function Lb(a,b){return{get:function(){var c=a();if(null!=c)return c?void delete this.get:(this.get=b).apply(this,arguments)}}}function Ub(a,b){if(b in a)return b;for(var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=Tb.length;e--;)if((b=Tb[e]+c)in a)return b;return d}function Vb(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=m._data(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&U(d)&&(f[g]=m._data(d,"olddisplay",Fb(d.nodeName)))):(e=U(d),(c&&"none"!==c||!e)&&m._data(d,"olddisplay",e?c:m.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}function Wb(a,b,c){var d=Pb.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Xb(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=m.css(a,c+T[f],!0,e)),d?("content"===c&&(g-=m.css(a,"padding"+T[f],!0,e)),"margin"!==c&&(g-=m.css(a,"border"+T[f]+"Width",!0,e))):(g+=m.css(a,"padding"+T[f],!0,e),"padding"!==c&&(g+=m.css(a,"border"+T[f]+"Width",!0,e)));return g}function Yb(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Ib(a),g=k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=Jb(a,b,f),(0>e||null==e)&&(e=a.style[b]),Hb.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Xb(a,b,c||(g?"border":"content"),d,f)+"px"}function Zb(a,b,c,d,e){return new Zb.prototype.init(a,b,c,d,e)}function fc(){return setTimeout(function(){$b=void 0}),$b=m.now()}function gc(a,b){var c,d={height:a},e=0;for(b=b?1:0;4>e;e+=2-b)c=T[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function hc(a,b,c){for(var d,e=(ec[b]||[]).concat(ec["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function ic(a,b,c){var d,e,f,g,h,i,j,n=this,o={},p=a.style,q=a.nodeType&&U(a),r=m._data(a,"fxshow");c.queue||(h=m._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,n.always(function(){n.always(function(){h.unqueued--,m.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[p.overflow,p.overflowX,p.overflowY],j=m.css(a,"display"),"inline"===("none"===j?m._data(a,"olddisplay")||Fb(a.nodeName):j)&&"none"===m.css(a,"float")&&(k.inlineBlockNeedsLayout&&"inline"!==Fb(a.nodeName)?p.zoom=1:p.display="inline-block")),c.overflow&&(p.overflow="hidden",k.shrinkWrapBlocks()||n.always(function(){p.overflow=c.overflow[0],p.overflowX=c.overflow[1],p.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],ac.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(q?"hide":"show")){if("show"!==e||!r||void 0===r[d])continue;q=!0}o[d]=r&&r[d]||m.style(a,d)}else j=void 0;if(m.isEmptyObject(o))"inline"===("none"===j?Fb(a.nodeName):j)&&(p.display=j);else{r?"hidden"in r&&(q=r.hidden):r=m._data(a,"fxshow",{}),f&&(r.hidden=!q),q?m(a).show():n.done(function(){m(a).hide()}),n.done(function(){var b;m._removeData(a,"fxshow");for(b in o)m.style(a,b,o[b])});for(d in o)g=hc(q?r[d]:0,d,n),d in r||(r[d]=g.start,q&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function jc(a,b){var c,d,e,f,g;for(c in a)if(d=m.camelCase(c),e=b[d],f=a[c],m.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),(g=m.cssHooks[d])&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function kc(a,b,c){var d,e,f=0,g=dc.length,h=m.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=$b||fc(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:m.extend({},b),opts:m.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:$b||fc(),duration:c.duration,tweens:[],createTween:function(b,c){var d=m.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(jc(k,j.opts.specialEasing);g>f;f++)if(d=dc[f].call(j,a,k,j.opts))return d;return m.map(k,hc,j),m.isFunction(j.opts.start)&&j.opts.start.call(a,j),m.fx.timer(m.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function Lc(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(m.isFunction(c))for(;d=f[e++];)"+"===d.charAt(0)?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Mc(a,b,c,d){function g(h){var i;return e[h]=!0,m.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}var e={},f=a===Ic;return g(b.dataTypes[0])||!e["*"]&&g("*")}function Nc(a,b){var c,d,e=m.ajaxSettings.flatOptions||{};for(d in b)void 0!==b[d]&&((e[d]?a:c||(c={}))[d]=b[d]);return c&&m.extend(!0,a,c),a}function Oc(a,b,c){for(var d,e,f,g,h=a.contents,i=a.dataTypes;"*"===i[0];)i.shift(),void 0===e&&(e=a.mimeType||b.getResponseHeader("Content-Type"));if(e)for(g in h)if(h[g]&&h[g].test(e)){i.unshift(g);break}if(i[0]in c)f=i[0];else{for(g in c){if(!i[0]||a.converters[g+" "+i[0]]){f=g;break}d||(d=g)}f=f||d}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function Pc(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];for(f=k.shift();f;)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(!(g=j[i+" "+f]||j["* "+f]))for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){!0===g?g=j[e]:!0!==j[e]&&(f=h[0],k.unshift(h[1]));break}if(!0!==g)if(g&&a.throws)b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}function Vc(a,b,c,d){var e;if(m.isArray(b))m.each(b,function(b,e){c||Rc.test(a)?d(a,e):Vc(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==m.type(b))d(a,b);else for(e in b)Vc(a+"["+e+"]",b[e],c,d)}function Zc(){try{return new a.XMLHttpRequest}catch(b){}}function $c(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function dd(a){return m.isWindow(a)?a:9===a.nodeType&&(a.defaultView||a.parentWindow)}var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.1",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);
vendor: 4,565 bytes, line 17
17return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},m.extend=m.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||m.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(m.isPlainObject(c)||(b=m.isArray(c)))?(b?(b=!1,f=a&&m.isArray(a)?a:[]):f=a&&m.isPlainObject(a)?a:{},g[d]=m.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},m.extend({expando:"jQuery"+(l+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===m.type(a)},isArray:Array.isArray||function(a){return"array"===m.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!m.isArray(a)&&a-parseFloat(a)>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==m.type(a)||a.nodeType||m.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(k.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&m.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(o,"ms-").replace(p,q)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var e=0,f=a.length,g=r(a);if(c){if(g)for(;f>e&&!1!==b.apply(a[e],c);e++);else for(e in a)if(!1===b.apply(a[e],c))break}else if(g)for(;f>e&&!1!==b.call(a[e],e,a[e]);e++);else for(e in a)if(!1===b.call(a[e],e,a[e]))break;return a},trim:function(a){return null==a?"":(a+"").replace(n,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(r(Object(a))?m.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;)a[e++]=b[d++];if(c!==c)for(;void 0!==b[d];)a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var e=[],f=0,g=a.length,h=!c;g>f;f++)!b(a[f],f)!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=r(a),i=[];if(h)for(;g>f;f++)null!=(d=b(a[f],f,c))&&i.push(d);else for(f in a)null!=(d=b(a[f],f,c))&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),m.isFunction(a)?(c=d.call(arguments,2),e=function(){return a.apply(b||this,c.concat(d.call(arguments)))},e.guid=a.guid=a.guid||m.guid++,e):void 0},now:function(){return+new Date},support:k}),m.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});var s=function(a){function fb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],!a||"string"!=typeof a)return d;if(1!==(k=b.nodeType)&&9!==k)return[];if(p&&!e){if(f=_.exec(a))if(j=f[1]){if(9===k){if(!(h=b.getElementById(j))||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return I.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName&&b.getElementsByClassName)return I.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=9===k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){for(o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;l--;)o[l]=s+qb(o[l]);w=ab.test(a)&&ob(b.parentNode)||b,x=o.join(",")}if(x)try{return I.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function gb(){function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}var a=[];return b}function hb(a){return a[u]=!0,a}
vendor: 7,859 bytes, line 17
17function ib(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function jb(a,b){for(var c=a.split("|"),e=a.length;e--;)d.attrHandle[c[e]]=b}function kb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||D)-(~a.sourceIndex||D);if(d)return d;if(c)for(;c=c.nextSibling;)if(c===b)return-1;return a?1:-1}function nb(a){return hb(function(b){return b=+b,hb(function(c,d){for(var e,f=a([],c.length,b),g=f.length;g--;)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function ob(a){return a&&typeof a.getElementsByTagName!==C&&a}function pb(){}function qb(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function rb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){for(;b=b[d];)if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){for(;b=b[d];)if((1===b.nodeType||e)&&a(b,c,g))return!0}else for(;b=b[d];)if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function sb(a){return a.length>1?function(b,c,d){for(var e=a.length;e--;)if(!a[e](b,c,d))return!1;return!0}:a[0]}function tb(a,b,c){for(var d=0,e=b.length;e>d;d++)fb(a,b[d],c);return c}function ub(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function vb(a,b,c,d,e,f){return d&&!d[u]&&(d=vb(d)),e&&!e[u]&&(e=vb(e,f)),hb(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||tb(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ub(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d)for(j=ub(r,n),d(j,[],h,i),k=j.length;k--;)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l));if(f){if(e||a){if(e){for(j=[],k=r.length;k--;)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}for(k=r.length;k--;)(l=r[k])&&(j=e?K.call(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ub(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):I.apply(g,r)})}function wb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=rb(function(a){return a===b},h,!0),l=rb(function(a){return K.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d))}];f>i;i++)if(c=d.relative[a[i].type])m=[rb(sb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e&&!d.relative[a[e].type];e++);return vb(i>1&&sb(m),i>1&&qb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&wb(a.slice(i,e)),f>e&&wb(a=a.slice(e)),f>e&&qb(a))}m.push(c)}return sb(m)}function xb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){for(m=0;o=a[m++];)if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){for(m=0;o=b[m++];)o(r,s,g,h);if(f){if(p>0)for(;q--;)r[q]||s[q]||(s[q]=G.call(i));s=ub(s)}I.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&fb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?hb(f):f}var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+-new Date,v=a.document,w=0,x=0,y=gb(),z=gb(),A=gb(),B=function(a,b){return a===b&&(l=!0),0},C="undefined",D=1<<31,E={}.hasOwnProperty,F=[],G=F.pop,H=F.push,I=F.push,J=F.slice,K=F.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",N="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",O=N.replace("w","w#"),P="\\["+M+"*("+N+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+O+"))|)"+M+"*\\]",Q=":("+N+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+P+")*)|.*)\\)|)",R=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),S=new RegExp("^"+M+"*,"+M+"*"),T=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp("="+M+"*([^\\]'\"]*?)"+M+"*\\]","g"),V=new RegExp(Q),W=new RegExp("^"+O+"$"),X={ID:new RegExp("^#("+N+")"),CLASS:new RegExp("^\\.("+N+")"),TAG:new RegExp("^("+N.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+Q),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{I.apply(F=J.call(v.childNodes),v.childNodes),F[v.childNodes.length].nodeType}catch(eb){I={apply:F.length?function(a,b){H.apply(a,J.call(b))}:function(a,b){for(var c=a.length,d=0;a[c++]=b[d++];);a.length=c-1}}}c=fb.support={},f=fb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=fb.setDocument=function(a){var b,e=a?a.ownerDocument||a:v,g=e.defaultView;return e!==n&&9===e.nodeType&&e.documentElement?(n=e,o=e.documentElement,p=!f(e),g&&g!==g.top&&(g.addEventListener?g.addEventListener("unload",function(){m()},!1):g.attachEvent&&g.attachEvent("onunload",function(){m()})),c.attributes=ib(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ib(function(a){return a.appendChild(e.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(e.getElementsByClassName)&&ib(function(a){return a.innerHTML="<div class='a'></div><div class='a i'></div>",a.firstChild.className="i",2===a.getElementsByClassName("i").length}),c.getById=ib(function(a){return o.appendChild(a).id=u,!e.getElementsByName||!e.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if(typeof b.getElementById!==C&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c=typeof a.getAttributeNode!==C&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return typeof b.getElementsByTagName!==C?b.getElementsByTagName(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){for(;c=f[e++];)1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return typeof b.getElementsByClassName!==C&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(e.querySelectorAll))&&(ib(function(a){a.innerHTML="<select msallowclip=''><option selected=''></option></select>",a.querySelectorAll("[msallowclip^='']").length&&q.push("[*^$]="+M+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+M+"*(?:value|"+L+")"),a.querySelectorAll(":checked").length||q.push(":checked")}),ib(function(a){var b=e.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+M+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ib(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",Q)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;
vendor: 6,107 bytes, line 17
17return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b=b.parentNode;)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d||(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===e||a.ownerDocument===v&&t(v,a)?-1:b===e||b.ownerDocument===v&&t(v,b)?1:k?K.call(k,a)-K.call(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,f=a.parentNode,g=b.parentNode,h=[a],i=[b];if(!f||!g)return a===e?-1:b===e?1:f?-1:g?1:k?K.call(k,a)-K.call(k,b):0;if(f===g)return kb(a,b);for(c=a;c=c.parentNode;)h.unshift(c);for(c=b;c=c.parentNode;)i.unshift(c);for(;h[d]===i[d];)d++;return d?kb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},e):n},fb.matches=function(a,b){return fb(a,null,null,b)},fb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fb(b,n,null,[a]).length>0},fb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&E.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){for(;b=a[f++];)b===a[f]&&(e=d.push(f));for(;e--;)a.splice(d[e],1)}return k=null,a},e=fb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else for(;b=a[d++];)c+=e(b);return c},d=fb.selectors={cacheLength:50,createPseudo:hb,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+M+")"+a+"("+M+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==C&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fb.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){for(;p;){for(l=b;l=l[p];)if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){for(k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];l=++n&&l&&l[p]||(m=n=0)||o.pop();)if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else for(;(l=++n&&l&&l[p]||(m=n=0)||o.pop())&&((h?l.nodeName.toLowerCase()!==r:1!==l.nodeType)||!++m||(s&&((l[u]||(l[u]={}))[a]=[w,m]),l!==b)););return(m-=e)===d||m%d==0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?hb(function(a,c){for(var d,f=e(a,b),g=f.length;g--;)d=K.call(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:hb(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?hb(function(a,b,c,e){for(var f,g=d(a,null,e,[]),h=a.length;h--;)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:hb(function(a){return function(b){return fb(a,b).length>0}}),contains:hb(function(a){return function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:hb(function(a){return W.test(a||"")||fb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do{if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return(c=c.toLowerCase())===a||0===c.indexOf(a+"-")}while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return!1===a.disabled},disabled:function(a){return!0===a.disabled},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,!0===a.selected},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)}
vendor: 29,143 bytes, lines 17-18
17,input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:nb(function(){return[0]}),last:nb(function(a,b){return[b-1]}),eq:nb(function(a,b,c){return[0>c?c+b:c]}),even:nb(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:nb(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:nb(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:nb(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=function(a){return function(b){return"input"===b.nodeName.toLowerCase()&&b.type===a}}(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=function(a){return function(b){var c=b.nodeName.toLowerCase() 18;return("input"===c||"button"===c)&&b.type===a}}(b);return pb.prototype=d.filters=d.pseudos,d.setFilters=new pb,g=fb.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);for(h=a,i=[],j=d.preFilter;h;){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?fb.error(a):z(a,i).slice(0)},h=fb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){for(b||(b=g(a)),c=b.length;c--;)f=wb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xb(e,d)),f.selector=a}return f},i=fb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(!(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0]))return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}for(i=X.needsContext.test(a)?0:j.length;i--&&(k=j[i],!d.relative[l=k.type]);)if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&ob(b.parentNode)||b))){if(j.splice(i,1),!(a=f.length&&qb(j)))return I.apply(e,f),e;break}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&ob(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ib(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ib(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||jb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ib(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||jb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ib(function(a){return null==a.getAttribute("disabled")})||jb(L,function(a,b,c){var d;return c?void 0:!0===a[b]?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fb}(a);m.find=s,m.expr=s.selectors,m.expr[":"]=m.expr.pseudos,m.unique=s.uniqueSort,m.text=s.getText,m.isXMLDoc=s.isXML,m.contains=s.contains;var t=m.expr.match.needsContext,u=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,v=/^.[^:#\[\.,]*$/;m.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?m.find.matchesSelector(d,a)?[d]:[]:m.find.matches(a,m.grep(b,function(a){return 1===a.nodeType}))},m.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(m(a).filter(function(){for(b=0;e>b;b++)if(m.contains(d[b],this))return!0}));for(b=0;e>b;b++)m.find(a,d[b],c);return c=this.pushStack(e>1?m.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(w(this,a||[],!1))},not:function(a){return this.pushStack(w(this,a||[],!0))},is:function(a){return!!w(this,"string"==typeof a&&t.test(a)?m(a):a||[],!1).length}});var x,y=a.document,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;(m.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(!(c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:z.exec(a))||!c[1]&&b)return!b||b.jquery?(b||x).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof m?b[0]:b,m.merge(this,m.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:y,!0)),u.test(c[1])&&m.isPlainObject(b))for(c in b)m.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}if((d=y.getElementById(c[2]))&&d.parentNode){if(d.id!==c[2])return x.find(a);this.length=1,this[0]=d}return this.context=y,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):m.isFunction(a)?void 0!==x.ready?x.ready(a):a(m):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),m.makeArray(a,this))}).prototype=m.fn,x=m(y);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};m.extend({dir:function(a,b,c){for(var d=[],e=a[b];e&&9!==e.nodeType&&(void 0===c||1!==e.nodeType||!m(e).is(c));)1===e.nodeType&&d.push(e),e=e[b];return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),m.fn.extend({has:function(a){var b,c=m(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(m.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=t.test(a)||"string"!=typeof a?m(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&m.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?m.unique(f):f)},index:function(a){return a?"string"==typeof a?m.inArray(this[0],m(a)):m.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(m.unique(m.merge(this.get(),m(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}}),m.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return m.dir(a,"parentNode")},parentsUntil:function(a,b,c){return m.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return m.dir(a,"nextSibling")},prevAll:function(a){return m.dir(a,"previousSibling")},nextUntil:function(a,b,c){return m.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return m.dir(a,"previousSibling",c)},siblings:function(a){return m.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return m.sibling(a.firstChild)},contents:function(a){return m.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:m.merge([],a.childNodes)}},function(a,b){m.fn[a]=function(c,d){var e=m.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=m.filter(d,e)),this.length>1&&(C[a]||(e=m.unique(e)),B.test(a)&&(e=e.reverse())),this.pushStack(e)}});var E=/\S+/g,F={};m.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):m.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(c=a.memory&&l,d=!0,f=g||0,g=0,e=h.length,b=!0;h&&e>f;f++)if(!1===h[f].apply(l[0],l[1])&&a.stopOnFalse){c=!1;break}b=!1,h&&(i?i.length&&j(i.shift()):c?h=[]:k.disable())},k={add:function(){if(h){var d=h.length;!function f(b){m.each(b,function(b,c){var d=m.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this},remove:function(){return h&&m.each(arguments,function(a,c){for(var d;(d=m.inArray(c,h,d))>-1;)h.splice(d,1),b&&(e>=d&&e--,f>=d&&f--)}),this},has:function(a){return a?m.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],e=0,this},disable:function(){return h=i=c=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,c||k.disable(),this},locked:function(){return!i},fireWith:function(a,c){return!h||d&&!i||(c=c||[],c=[a,c.slice?c.slice():c],b?i.push(c):j(c)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!d}};return k},m.extend({Deferred:function(a){var b=[["resolve","done",m.Callbacks("once memory"),"resolved"],["reject","fail",m.Callbacks("once memory"),"rejected"],["notify","progress",m.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return m.Deferred(function(c){m.each(b,function(b,f){var g=m.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&m.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?m.extend(a,d):d}},e={};return d.pipe=d.then,m.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var i,j,k,b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&m.isFunction(a.promise)?e:0,g=1===f?a:m.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}};if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&m.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;m.fn.ready=function(a){return m.ready.promise().done(a),this},m.extend({isReady:!1,readyWait:1,holdReady:function(a){a?m.readyWait++:m.ready(!0)},ready:function(a){if(!0===a?!--m.readyWait:!m.isReady){if(!y.body)return setTimeout(m.ready);m.isReady=!0,!0!==a&&--m.readyWait>0||(H.resolveWith(y,[m]),m.fn.triggerHandler&&(m(y).triggerHandler("ready"),m(y).off("ready")))}}}),m.ready.promise=function(b){if(!H)if(H=m.Deferred(),"complete"===y.readyState)setTimeout(m.ready);else if(y.addEventListener)y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else{y.attachEvent("onreadystatechange",J),a.attachEvent("onload",J);var c=!1;try{c=null==a.frameElement&&y.documentElement}catch(d){}c&&c.doScroll&&function e(){if(!m.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}I(),m.ready()}}()}return H.promise(b)};var L,K="undefined";for(L in m(k))break;k.ownLast="0"!==L,k.inlineBlockNeedsLayout=!1,m(function(){var a,b,c,d;(c=y.getElementsByTagName("body")[0])&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",k.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(d))}),function(){var a=y.createElement("div");if(null==k.deleteExpando){k.deleteExpando=!0;try{delete a.test}catch(b){k.deleteExpando=!1}}a=null}(),m.acceptData=function(a){var b=m.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return(1===c||9===c)&&(!b||!0!==b&&a.getAttribute("classid")===b)};var M=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,N=/([A-Z])/g;m.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return!!(a=a.nodeType?m.cache[a[m.expando]]:a[m.expando])&&!P(a)},data:function(a,b,c){return Q(a,b,c)},removeData:function(a,b){return R(a,b)},_data:function(a,b,c){return Q(a,b,c,!0)},_removeData:function(a,b){return R(a,b,!0)}}),m.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=m.data(f),1===f.nodeType&&!m._data(f,"parsedAttrs"))){for(c=g.length;c--;)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=m.camelCase(d.slice(5)),O(f,d,e[d])));m._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){m.data(this,a)}):arguments.length>1?this.each(function(){m.data(this,a,b)}):f?O(f,a,m.data(f,a)):void 0},removeData:function(a){return this.each(function(){m.removeData(this,a)})}}),m.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=m._data(a,b),c&&(!d||m.isArray(c)?d=m._data(a,b,m.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=m.queue(a,b),d=c.length,e=c.shift(),f=m._queueHooks(a,b),g=function(){m.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return m._data(a,c)||m._data(a,c,{empty:m.Callbacks("once memory").add(function(){m._removeData(a,b+"queue"),m._removeData(a,c)})})}}),m.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?m.queue(this[0],a):void 0===b?this:this.each(function(){var c=m.queue(this,a,b);m._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&m.dequeue(this,a)})},dequeue:function(a){return this.each(function(){m.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=m.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};for("string"!=typeof a&&(b=a,a=void 0),a=a||"fx";g--;)(c=m._data(f[g],a+"queueHooks"))&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var S=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=["Top","Right","Bottom","Left"],U=function(a,b){return a=b||a,"none"===m.css(a,"display")||!m.contains(a.ownerDocument,a)},V=m.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===m.type(c)){e=!0;for(h in c)m.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,m.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(m(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},W=/^(?:checkbox|radio)$/i;!function(){var a=y.createElement("input"),b=y.createElement("div"),c=y.createDocumentFragment();if(b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",k.leadingWhitespace=3===b.firstChild.nodeType,k.tbody=!b.getElementsByTagName("tbody").length,k.htmlSerialize=!!b.getElementsByTagName("link").length,k.html5Clone="<:nav></:nav>"!==y.createElement("nav").cloneNode(!0).outerHTML,a.type="checkbox",a.checked=!0,c.appendChild(a),k.appendChecked=a.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,c.appendChild(b),b.innerHTML="<input type='radio' checked='checked' name='t'/>",k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,k.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){k.noCloneEvent=!1}),b.cloneNode(!0).click()),null==k.deleteExpando){k.deleteExpando=!0;try{delete b.test}catch(d){k.deleteExpando=!1}}}(),function(){var b,c,d=y.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(k[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),k[b+"Bubbles"]=!1===d.attributes[c].expando);d=null}();var X=/^(?:input|select|textarea)$/i,Y=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=/^([^.]*)(?:\.(.+)|)$/;m.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m._data(a);if(r){for(c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=m.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof m===K||a&&m.event.triggered===a.type?void 0:m.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(E)||[""],h=b.length;h--;)f=_.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=m.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=m.event.special[o]||{},l=m.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&m.expr.match.needsContext.test(e),namespace:p.join(".")},i),(n=g[o])||(n=g[o]=[],n.delegateCount=0,j.setup&&!1!==j.setup.call(a,d,p,k)||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?n.splice(n.delegateCount++,0,l):n.push(l),m.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m.hasData(a)&&m._data(a);if(r&&(k=r.events)){for(b=(b||"").match(E)||[""],j=b.length;j--;)if(h=_.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){for(l=m.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,n=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=n.length;f--;)g=n[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(n.splice(f,1),g.selector&&n.delegateCount--,l.remove&&l.remove.call(a,g));i&&!n.length&&(l.teardown&&!1!==l.teardown.call(a,p,r.handle)||m.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)m.event.remove(a,o+b[j],c,d,!0);m.isEmptyObject(k)&&(delete r.handle,m._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,n,o=[d||y],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||y,3!==d.nodeType&&8!==d.nodeType&&!$.test(p+m.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[m.expando]?b:new m.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:m.makeArray(c,[b]),k=m.event.special[p]||{},e||!k.trigger||!1!==k.trigger.apply(d,c))){if(!e&&!k.noBubble&&!m.isWindow(d)){for(i=k.delegateType||p,$.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||y)&&o.push(l.defaultView||l.parentWindow||a)}for(n=0;(h=o[n++])&&!b.isPropagationStopped();)b.type=n>1?i:k.bindType||p,f=(m._data(h,"events")||{})[b.type]&&m._data(h,"handle"),f&&f.apply(h,c),(f=g&&h[g])&&f.apply&&m.acceptData(h)&&(b.result=f.apply(h,c),!1===b.result&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||!1===k._default.apply(o.pop(),c))&&m.acceptData(d)&&g&&d[p]&&!m.isWindow(d)){l=d[g],l&&(d[g]=null),m.event.triggered=p;try{d[p]()}catch(r){}m.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=m.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(m._data(this,"events")||{})[a.type]||[],k=m.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||!1!==k.preDispatch.call(this,a)){for(h=m.event.handlers.call(this,a,j),b=0;(f=h[b++])&&!a.isPropagationStopped();)for(a.currentTarget=f.elem,g=0;(e=f.handlers[g++])&&!a.isImmediatePropagationStopped();)(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,void 0!==(c=((m.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i))&&!1===(a.result=c)&&(a.preventDefault(),a.stopPropagation()));return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(!0!==i.disabled||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?m(c,this).index(i)>=0:m.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},fix:function(a){if(a[m.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];for(g||(this.fixHooks[e]=g=Z.test(e)?this.mouseHooks:Y.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new m.Event(f),b=d.length;b--;)c=d[b],a[c]=f[c];return a.target||(a.target=f.srcElement||y),3===a.target.nodeType&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,g.filter?g.filter(a,f):a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button,g=b.fromElement;return null==a.pageX&&null!=b.clientX&&(d=a.target.ownerDocument||y,e=d.documentElement,c=d.body,a.pageX=b.clientX+(e&&e.scrollLeft||c&&c.scrollLeft||0)-(e&&e.clientLeft||c&&c.clientLeft||0),a.pageY=b.clientY+(e&&e.scrollTop||c&&c.scrollTop||0)-(e&&e.clientTop||c&&c.clientTop||0)),!a.relatedTarget&&g&&(a.relatedTarget=g===a.target?b.toElement:g),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==cb()&&this.focus)try{return this.focus(),!1}catch(a){}},delegateType:"focusin"},blur:{trigger:function(){return this===cb()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return m.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):void 0},_default:function(a){return m.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=m.extend(new m.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?m.event.trigger(e,null,b):m.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},m.removeEvent=y.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]===K&&(a[d]=null),a.detachEvent(d,c))},m.Event=function(a,b){return this instanceof m.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&!1===a.returnValue?ab:bb):this.type=a,b&&m.extend(this,b),this.timeStamp=a&&a.timeStamp||m.now(),void(this[m.expando]=!0)):new m.Event(a,b)},m.Event.prototype={isDefaultPrevented:bb,isPropagationStopped:bb,isImmediatePropagationStopped:bb,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ab,a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ab,a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ab,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},m.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){m.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!m.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.submitBubbles||(m.event.special.submit={setup:function(){return!m.nodeName(this,"form")&&void m.event.add(this,"click._submit keypress._submit",function(a){var b=a.target,c=m.nodeName(b,"input")||m.nodeName(b,"button")?b.form:void 0;c&&!m._data(c,"submitBubbles")&&(m.event.add(c,"submit._submit",function(a){a._submit_bubble=!0}),m._data(c,"submitBubbles",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&m.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){return!m.nodeName(this,"form")&&void m.event.remove(this,"._submit")}}),k.changeBubbles||(m.event.special.change={setup:function(){return X.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(m.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),m.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),m.event.simulate("change",this,a,!0)})),!1):void m.event.add(this,"beforeactivate._change",function(a){var b=a.target;X.test(b.nodeName)&&!m._data(b,"changeBubbles")&&(m.event.add(b,"change._change",function(a){!this.parentNode||a.isSimulated||a.isTrigger||m.event.simulate("change",this.parentNode,a,!0)}),m._data(b,"changeBubbles",!0))})},handle:function(a){var b=a.target;return this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type?a.handleObj.handler.apply(this,arguments):void 0},teardown:function(){return m.event.remove(this,"._change"),!X.test(this.nodeName)}}),k.focusinBubbles||m.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){m.event.simulate(b,a.target,m.event.fix(a),!0)};m.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=m._data(d,b);e||d.addEventListener(a,c,!0),m._data(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=m._data(d,b)-1;e?m._data(d,b,e):(d.removeEventListener(a,c,!0),m._removeData(d,b))}}}),m.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(f in a)this.on(f,b,c,a[f],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),!1===d)d=bb;else if(!d)return this;return 1===e&&(g=d,d=function(a){return m().off(a),g.apply(this,arguments)},d.guid=g.guid||(g.guid=m.guid++)),this.each(function(){m.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,m(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(!1===b||"function"==typeof b)&&(c=b,b=void 0),!1===c&&(c=bb),this.each(function(){m.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){m.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?m.event.trigger(a,b,c,!0):void 0}});var eb="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",fb=/ jQuery\d+="(?:null|\d+)"/g,gb=new RegExp("<(?:"+eb+")[\\s/>]","i"),hb=/^\s+/,ib=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jb=/<([\w:]+)/,kb=/<tbody/i,lb=/<|&#?\w+;/,mb=/<(?:script|style|link)/i,nb=/checked\s*(?:[^=]|=\s*.checked.)/i,ob=/^$|\/(?:java|ecma)script/i,pb=/^true\/(.*)/,qb=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,rb={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:k.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},sb=db(y),tb=sb.appendChild(y.createElement("div"));rb.optgroup=rb.option,rb.tbody=rb.tfoot=rb.colgroup=rb.caption=rb.thead,rb.th=rb.td,m.extend({clone:function(a,b,c){var d,e,f,g,h,i=m.contains(a.ownerDocument,a);if(k.html5Clone||m.isXMLDoc(a)||!gb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(tb.innerHTML=a.outerHTML,tb.removeChild(f=tb.firstChild)),!(k.noCloneEvent&&k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||m.isXMLDoc(a)))for(d=ub(f),h=ub(a),g=0;null!=(e=h[g]);++g)d[g]&&Bb(e,d[g]);if(b)if(c)for(h=h||ub(a),d=d||ub(f),g=0;null!=(e=h[g]);g++)Ab(e,d[g]);else Ab(a,f);return d=ub(f,"script"),d.length>0&&zb(d,!i&&ub(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,l,n=a.length,o=db(b),p=[],q=0;n>q;q++)if((f=a[q])||0===f)if("object"===m.type(f))m.merge(p,f.nodeType?[f]:f);else if(lb.test(f)){for(h=h||o.appendChild(b.createElement("div")),i=(jb.exec(f)||["",""])[1].toLowerCase(),l=rb[i]||rb._default,h.innerHTML=l[1]+f.replace(ib,"<$1></$2>")+l[2],e=l[0];e--;)h=h.lastChild;if(!k.leadingWhitespace&&hb.test(f)&&p.push(b.createTextNode(hb.exec(f)[0])),!k.tbody)for(f="table"!==i||kb.test(f)?"<table>"!==l[1]||kb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;e--;)m.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j);for(m.merge(p,h.childNodes),h.textContent="";h.firstChild;)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));for(h&&o.removeChild(h),k.appendChecked||m.grep(ub(p,"input"),vb),q=0;f=p[q++];)if((!d||-1===m.inArray(f,d))&&(g=m.contains(f.ownerDocument,f),h=ub(o.appendChild(f),"script"),g&&zb(h),c))for(e=0;f=h[e++];)ob.test(f.type||"")&&c.push(f);return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=m.expando,j=m.cache,l=k.deleteExpando,n=m.event.special;null!=(d=a[h]);h++)if((b||m.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)n[e]?m.event.remove(d,e):m.removeEvent(d,e,g.handle);j[f]&&(delete j[f],l?delete d[i]:typeof d.removeAttribute!==K?d.removeAttribute(i):d[i]=null,c.push(f))}}}),m.fn.extend({text:function(a){return V(this,function(a){return void 0===a?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||y).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if
vendor: 11,666 bytes, lines 18-19
18(1===this.nodeType||11===this.nodeType||9===this.nodeType){wb(this,a).appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?m.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||m.cleanData(ub(c)),c.parentNode&&(b&&m.contains(c.ownerDocument,c)&&zb(ub(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){for(1===a.nodeType&&m.cleanData(ub(a,!1));a.firstChild;)a.removeChild(a.firstChild);a.options&&m.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return m.clone(this,a,b)})},html:function(a){return V(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(fb,""):void 0;if(!("string"!=typeof a||mb.test(a)||!k.htmlSerialize&&gb.test(a)||!k.leadingWhitespace&&hb.test(a)||rb[(jb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(ib,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(m.cleanData(ub(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,m.cleanData(ub(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,n=this,o=l-1,p=a[0],q=m.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&nb.test(p))return this.each(function(c){var d=n.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(i=m.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=m.map(ub(i,"script"),xb),f=g.length;l>j;j++)d=i,j!==o&&(d=m.clone(d,!0,!0),f&&m.merge(g,ub(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,m.map(g,yb),j=0;f>j;j++)d=g[j],ob.test(d.type||"")&&!m._data(d,"globalEval")&&m.contains(h,d)&&(d.src?m._evalUrl&&m._evalUrl(d.src):m.globalEval((d.text||d.textContent||d.innerHTML||"").replace(qb,"")));i=c=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){m.fn[a]=function(a){for(var c,d=0,e=[],g=m(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),m(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Cb,Db={};!function(){var a;k.shrinkWrapBlocks=function(){if(null!=a)return a;a=!1;var b,c,d;return c=y.getElementsByTagName("body")[0],c&&c.style?(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",b.appendChild(y.createElement("div")).style.width="5px",a=3!==b.offsetWidth),c.removeChild(d),a):void 0}}();var Ib,Jb,Gb=/^margin/,Hb=new RegExp("^("+S+")(?!px)[a-z%]+$","i"),Kb=/^(top|right|bottom|left)$/;a.getComputedStyle?(Ib=function(a){return a.ownerDocument.defaultView.getComputedStyle(a,null)},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c.getPropertyValue(b)||c[b]:void 0,c&&(""!==g||m.contains(a.ownerDocument,a)||(g=m.style(a,b)),Hb.test(g)&&Gb.test(b)&&(d=h.width, 19e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0===g?g:g+""}):y.documentElement.currentStyle&&(Ib=function(a){return a.currentStyle},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c[b]:void 0,null==g&&h&&h[b]&&(g=h[b]),Hb.test(g)&&!Kb.test(b)&&(d=h.left,e=a.runtimeStyle,f=e&&e.left,f&&(e.left=a.currentStyle.left),h.left="fontSize"===b?"1em":g,g=h.pixelLeft+"px",h.left=d,f&&(e.left=f)),void 0===g?g:g+""||"auto"}),!function(){function i(){var b,c,d,i;(c=y.getElementsByTagName("body")[0])&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),b.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",e=f=!1,h=!0,a.getComputedStyle&&(e="1%"!==(a.getComputedStyle(b,null)||{}).top,f="4px"===(a.getComputedStyle(b,null)||{width:"4px"}).width,i=b.appendChild(y.createElement("div")),i.style.cssText=b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",b.style.width="1px",h=!parseFloat((a.getComputedStyle(i,null)||{}).marginRight)),b.innerHTML="<table><tr><td></td><td>t</td></tr></table>",i=b.getElementsByTagName("td"),i[0].style.cssText="margin:0;border:0;padding:0;display:none",g=0===i[0].offsetHeight,g&&(i[0].style.display="",i[1].style.display="none",g=0===i[0].offsetHeight),c.removeChild(d))}var b,c,d,e,f,g,h;b=y.createElement("div"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],(c=d&&d.style)&&(c.cssText="float:left;opacity:.5",k.opacity="0.5"===c.opacity,k.cssFloat=!!c.cssFloat,b.style.backgroundClip="content-box",b.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===b.style.backgroundClip,k.boxSizing=""===c.boxSizing||""===c.MozBoxSizing||""===c.WebkitBoxSizing,m.extend(k,{reliableHiddenOffsets:function(){return null==g&&i(),g},boxSizingReliable:function(){return null==f&&i(),f},pixelPosition:function(){return null==e&&i(),e},reliableMarginRight:function(){return null==h&&i(),h}}))}(),m.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var Mb=/alpha\([^)]*\)/i,Nb=/opacity\s*=\s*([^)]*)/,Ob=/^(none|table(?!-c[ea]).+)/,Pb=new RegExp("^("+S+")(.*)$","i"),Qb=new RegExp("^([+-])=("+S+")","i"),Rb={position:"absolute",visibility:"hidden",display:"block"},Sb={letterSpacing:"0",fontWeight:"400"},Tb=["Webkit","O","Moz","ms"];m.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Jb(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:k.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=m.camelCase(b),i=a.style;if(b=m.cssProps[h]||(m.cssProps[h]=Ub(i,h)),g=m.cssHooks[b]||m.cssHooks[h],void 0===c)return g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b];if(f=typeof c,"string"===f&&(e=Qb.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(m.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||m.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),!(g&&"set"in g&&void 0===(c=g.set(a,c,d)))))try{i[b]=c}catch(j){}}},css:function(a,b,c,d){var e,f,g,h=m.camelCase(b);return b=m.cssProps[h]||(m.cssProps[h]=Ub(a.style,h)),g=m.cssHooks[b]||m.cssHooks[h],g&&"get"in g&&(f=g.get(a,!0,c)),void 0===f&&(f=Jb(a,b,d)),"normal"===f&&b in Sb&&(f=Sb[b]),""===c||c?(e=parseFloat(f),!0===c||m.isNumeric(e)?e||0:f):f}}),m.each(["height","width"],function(a,b){m.cssHooks[b]={get:function(a,c,d){return c?Ob.test(m.css(a,"display"))&&0===a.offsetWidth?m.swap(a,Rb,function(){return Yb(a,b,d)}):Yb(a,b,d):void 0},set:function(a,c,d){var e=d&&Ib(a);return Wb(a,c,d?Xb(a,b,d,k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,e),e):0)}}}),k.opacity||(m.cssHooks.opacity={get:function(a,b){return Nb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=m.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1,(b>=1||""===b)&&""===m.trim(f.replace(Mb,""))&&c.removeAttribute&&(c.removeAttribute("filter"),""===b||d&&!d.filter)||(c.filter=Mb.test(f)?f.replace(Mb,e):f+" "+e)}}),m.cssHooks.marginRight=Lb(k.reliableMarginRight,function(a,b){return b?m.swap(a,{display:"inline-block"},Jb,[a,"marginRight"]):void 0}),m.each({margin:"",padding:"",border:"Width"},function(a,b){m.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+T[d]+b]=f[d]||f[d-2]||f[0];return e}},Gb.test(a)||(m.cssHooks[a+b].set=Wb)}),m.fn.extend({css:function(a,b){return V(this,function(a,b,c){var d,e,f={},g=0;if(m.isArray(b)){for(d=Ib(a),e=b.length;e>g;g++)f[b[g]]=m.css(a,b[g],!1,d);return f}return void 0!==c?m.style(a,b,c):m.css(a,b)},a,b,arguments.length>1)},show:function(){return Vb(this,!0)},hide:function(){return Vb(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){U(this)?m(this).show():m(this).hide()})}}),m.Tween=Zb,Zb.prototype={constructor:Zb,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(m.cssNumber[c]?"":"px")},cur:function(){var a=Zb.propHooks[this.prop];return a&&a.get?a.get(this):Zb.propHooks._default.get(this)},run:function(a){var b,c=Zb.propHooks[this.prop];return this.pos=b=this.options.duration?m.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Zb.propHooks._default.set(this),this}},Zb.prototype.init.prototype=Zb.prototype,Zb.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=m.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){m.fx.step[a.prop]?m.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[m.cssProps[a.prop]]||m.cssHooks[a.prop])?m.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Zb.propHooks.scrollTop=Zb.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},m.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},m.fx=Zb.prototype.init,m.fx.step={};var $b,_b,ac=/^(?:toggle|show|hide)$/,bc=new RegExp("^(?:([+-])=|)("+S+")([a-z%]*)$","i"),cc=/queueHooks$/,dc=[ic],ec={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=bc.exec(b),f=e&&e[3]||(m.cssNumber[a]?"":"px"),g=(m.cssNumber[a]||"px"!==f&&+d)&&bc.exec(m.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do{h=h||".5",g/=h,m.style(c.elem,a,g+f)}while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};m.Animation=m.extend(kc,{tweener:function(a,b){m.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],ec[c]=ec[c]||[],ec[c].unshift(b)},prefilter:function(a,b){b?dc.unshift(a):dc.push(a)}}),m.speed=function(a,b,c){var d=a&&"object"==typeof a?m.extend({},a):{complete:c||!c&&b||m.isFunction(a)&&a,duration:a,easing:c&&b||b&&!m.isFunction(b)&&b};return d.duration=m.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in m.fx.speeds?m.fx.speeds[d.duration]:m.fx.speeds._default,(null==d.queue||!0===d.queue)&&(
vendor: 8,225 bytes, line 19
19d.queue="fx"),d.old=d.complete,d.complete=function(){m.isFunction(d.old)&&d.old.call(this),d.queue&&m.dequeue(this,d.queue)},d},m.fn.extend({fadeTo:function(a,b,c,d){return this.filter(U).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=m.isEmptyObject(a),f=m.speed(b,c,d),g=function(){var b=kc(this,m.extend({},a),f);(e||m._data(this,"finish"))&&b.stop(!0)};return g.finish=g,e||!1===f.queue?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&!1!==a&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=m.timers,g=m._data(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&cc.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&m.dequeue(this,a)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var b,c=m._data(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=m.timers,g=d?d.length:0;for(c.finish=!0,m.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),m.each(["toggle","show","hide"],function(a,b){var c=m.fn[b];m.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(gc(b,!0),a,d,e)}}),m.each({slideDown:gc("show"),slideUp:gc("hide"),slideToggle:gc("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){m.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),m.timers=[],m.fx.tick=function(){var a,b=m.timers,c=0;for($b=m.now();c<b.length;c++)(a=b[c])()||b[c]!==a||b.splice(c--,1);b.length||m.fx.stop(),$b=void 0},m.fx.timer=function(a){m.timers.push(a),a()?m.fx.start():m.timers.pop()},m.fx.interval=13,m.fx.start=function(){_b||(_b=setInterval(m.fx.tick,m.fx.interval))},m.fx.stop=function(){clearInterval(_b),_b=null},m.fx.speeds={slow:600,fast:200,_default:400},m.fn.delay=function(a,b){return a=m.fx?m.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a,b,c,d,e;b=y.createElement("div"),b.setAttribute("className","t"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=y.createElement("select"),e=c.appendChild(y.createElement("option")),a=b.getElementsByTagName("input")[0],d.style.cssText="top:1px",k.getSetAttribute="t"!==b.className,k.style=/top/.test(d.getAttribute("style")),k.hrefNormalized="/a"===d.getAttribute("href"),k.checkOn=!!a.value,k.optSelected=e.selected,k.enctype=!!y.createElement("form").enctype,c.disabled=!0,k.optDisabled=!e.disabled,a=y.createElement("input"),a.setAttribute("value",""),k.input=""===a.getAttribute("value"),a.value="t",a.setAttribute("type","radio"),k.radioValue="t"===a.value}();var lc=/\r/g;m.fn.extend({val:function(a){var b,c,d,e=this[0];return arguments.length?(d=m.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,m(this).val()):a,null==e?e="":"number"==typeof e?e+="":m.isArray(e)&&(e=m.map(e,function(a){return null==a?"":a+""})),(b=m.valHooks[this.type]||m.valHooks[this.nodeName.toLowerCase()])&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))})):e?(b=m.valHooks[e.type]||m.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(lc,""):null==c?"":c)):void 0}}),m.extend({valHooks:{option:{get:function(a){var b=m.find.attr(a,"value");return null!=b?b:m.trim(m.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&m.nodeName(c.parentNode,"optgroup"))){if(b=m(c).val(),f)return b;g.push(b)}return g},set:function(a,b){for(var c,d,e=a.options,f=m.makeArray(b),g=e.length;g--;)if(d=e[g],m.inArray(m.valHooks.option.get(d),f)>=0)try{d.selected=c=!0}catch(h){d.scrollHeight}else d.selected=!1;return c||(a.selectedIndex=-1),e}}}}),m.each(["radio","checkbox"],function(){m.valHooks[this]={set:function(a,b){return m.isArray(b)?a.checked=m.inArray(m(a).val(),b)>=0:void 0}},k.checkOn||(m.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var mc,nc,oc=m.expr.attrHandle,pc=/^(?:checked|selected)$/i,qc=k.getSetAttribute,rc=k.input;m.fn.extend({attr:function(a,b){return V(this,m.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){m.removeAttr(this,a)})}}),m.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===K?m.prop(a,b,c):(1===f&&m.isXMLDoc(a)||(b=b.toLowerCase(),d=m.attrHooks[b]||(m.expr.match.bool.test(b)?nc:mc)),void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=m.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void m.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)for(;c=f[e++];)d=m.propFix[c]||c,m.expr.match.bool.test(c)?rc&&qc||!pc.test(c)?a[d]=!1:a[m.camelCase("default-"+c)]=a[d]=!1:m.attr(a,c,""),a.removeAttribute(qc?c:d)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&m.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),nc={set:function(a,b,c){return!1===b?m.removeAttr(a,c):rc&&qc||!pc.test(c)?a.setAttribute(!qc&&m.propFix[c]||c,c):a[m.camelCase("default-"+c)]=a[c]=!0,c}},m.each(m.expr.match.bool.source.match(/\w+/g),function(a,b){var c=oc[b]||m.find.attr;oc[b]=rc&&qc||!pc.test(b)?function(a,b,d){var e,f;return d||(f=oc[b],oc[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,oc[b]=f),e}:function(a,b,c){return c?void 0:a[m.camelCase("default-"+b)]?b.toLowerCase():null}}),rc&&qc||(m.attrHooks.value={set:function(a,b,c){return m.nodeName(a,"input")?void(a.defaultValue=b):mc&&mc.set(a,b,c)}}),qc||(mc={set:function(a,b,c){var d=a.getAttributeNode(c);return d||a.setAttributeNode(d=a.ownerDocument.createAttribute(c)),d.value=b+="","value"===c||b===a.getAttribute(c)?b:void 0}},oc.id=oc.name=oc.coords=function(a,b,c){var d;return c?void 0:(d=a.getAttributeNode(b))&&""!==d.value?d.value:null},m.valHooks.button={get:function(a,b){var c=a.getAttributeNode(b);return c&&c.specified?c.value:void 0},set:mc.set},m.attrHooks.contenteditable={set:function(a,b,c){mc.set(a,""!==b&&b,c)}},m.each(["width","height"],function(a,b){m.attrHooks[b]={set:function(a,c){return""===c?(a.setAttribute(b,"auto"),c):void 0}}})),k.style||(m.attrHooks.style={get:function(a){return a.style.cssText||void 0},set:function(a,b){return a.style.cssText=b+""}});var sc=/^(?:input|select|textarea|button|object)$/i,tc=/^(?:a|area)$/i;m.fn.extend({prop:function(a,b){return V(this,m.prop,a,b,arguments.length>1)},removeProp:function(a){return a=m.propFix[a]||a,this.each(function(){try{this[a]=void 0,delete this[a]}catch(b){}})}}),m.extend({propFix:{for:"htmlFor",class:"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!m.isXMLDoc(a),f&&(b=m.propFix[b]||b,e=m.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=m.find.attr(a,"tabindex");return b?parseInt(b,10):sc.test(a.nodeName)||tc.test(a.nodeName)&&a.href?0:-1}}}}),k.hrefNormalized||m.each(["href","src"],function(a,b){m.propHooks[b]={get:function(a){return a.getAttribute(b,4)}}}),k.optSelected||(m.propHooks.selected={get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}}),m.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){m.propFix[this.toLowerCase()]=this}),k.enctype||(m.propFix.enctype="encoding");var uc=/[\t\r\n\f]/g;m.fn.extend({addClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j="string"==typeof a&&a;
vendor: 11,169 bytes, line 19
19if(m.isFunction(a))return this.each(function(b){m(this).addClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):" ")){for(f=0;e=b[f++];)d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=m.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j=0===arguments.length||"string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).removeClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):"")){for(f=0;e=b[f++];)for(;d.indexOf(" "+e+" ")>=0;)d=d.replace(" "+e+" "," ");g=a?m.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(m.isFunction(a)?function(c){m(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c)for(var b,d=0,e=m(this),f=a.match(E)||[];b=f[d++];)e.hasClass(b)?e.removeClass(b):e.addClass(b);else(c===K||"boolean"===c)&&(this.className&&m._data(this,"__className__",this.className),this.className=this.className||!1===a?"":m._data(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(uc," ").indexOf(b)>=0)return!0;return!1}}),m.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){m.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),m.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var vc=m.now(),wc=/\?/,xc=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;m.parseJSON=function(b){if(a.JSON&&a.JSON.parse)return a.JSON.parse(b+"");var c,d=null,e=m.trim(b+"");return e&&!m.trim(e.replace(xc,function(a,b,e,f){return c&&b&&(d=0),0===d?a:(c=e||b,d+=!f-!e,"")}))?Function("return "+e)():m.error("Invalid JSON: "+b)},m.parseXML=function(b){var c,d;if(!b||"string"!=typeof b)return null;try{a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b))}catch(e){c=void 0}return c&&c.documentElement&&!c.getElementsByTagName("parsererror").length||m.error("Invalid XML: "+b),c};var yc,zc,Ac=/#.*$/,Bc=/([?&])_=[^&]*/,Cc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Dc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ec=/^(?:GET|HEAD)$/,Fc=/^\/\//,Gc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Hc={},Ic={},Jc="*/".concat("*");try{zc=location.href}catch(Kc){zc=y.createElement("a"),zc.href="",zc=zc.href}yc=Gc.exec(zc.toLowerCase())||[],m.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:zc,type:"GET",isLocal:Dc.test(yc[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Jc,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":m.parseJSON,"text xml":m.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Nc(Nc(a,m.ajaxSettings),b):Nc(m.ajaxSettings,a)},ajaxPrefilter:Lc(Hc),ajaxTransport:Lc(Ic),ajax:function(a,b){function x(a,b,c,d){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),i=void 0,f=d||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,c&&(u=Oc(k,v,c)),u=Pc(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(m.lastModified[e]=w),(w=v.getResponseHeader("etag"))&&(m.etag[e]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,h&&n.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),h&&(n.trigger("ajaxComplete",[v,k]),--m.active||m.event.trigger("ajaxStop")))}"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=m.ajaxSetup({},b),l=k.context||k,n=k.context&&(l.nodeType||l.jquery)?m(l):m.event,o=m.Deferred(),p=m.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!j)for(j={};b=Cc.exec(f);)j[b[1].toLowerCase()]=b[2];b=j[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?f:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return i&&i.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||zc)+"").replace(Ac,"").replace(Fc,yc[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=m.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(c=Gc.exec(k.url.toLowerCase()),k.crossDomain=!(!c||c[1]===yc[1]&&c[2]===yc[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(yc[3]||("http:"===yc[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=m.param(k.data,k.traditional)),Mc(Hc,k,b,v),2===t)return v;h=k.global,h&&0==m.active++&&m.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!Ec.test(k.type),e=k.url,k.hasContent||(k.data&&(e=k.url+=(wc.test(e)?"&":"?")+k.data,delete k.data),!1===k.cache&&(k.url=Bc.test(e)?e.replace(Bc,"$1_="+vc++):e+(wc.test(e)?"&":"?")+"_="+vc++)),k.ifModified&&(m.lastModified[e]&&v.setRequestHeader("If-Modified-Since",m.lastModified[e]),m.etag[e]&&v.setRequestHeader("If-None-Match",m.etag[e])),(k.data&&k.hasContent&&!1!==k.contentType||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+Jc+"; q=0.01":""):k.accepts["*"]);for(d in k.headers)v.setRequestHeader(d,k.headers[d]);if(k.beforeSend&&(!1===k.beforeSend.call(l,v,k)||2===t))return v.abort();u="abort";for(d in{success:1,error:1,complete:1})v[d](k[d]);if(i=Mc(Ic,k,b,v)){v.readyState=1,h&&n.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,i.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");return v},getJSON:function(a,b,c){return m.get(a,b,c,"json")},getScript:function(a,b){return m.get(a,void 0,b,"script")}}),m.each(["get","post"],function(a,b){m[b]=function(a,c,d,e){return m.isFunction(c)&&(e=e||d,d=c,c=void 0),m.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),m.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){m.fn[b]=function(a){return this.on(b,a)}}),m._evalUrl=function(a){return m.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},m.fn.extend({wrapAll:function(a){if(m.isFunction(a))return this.each(function(b){m(this).wrapAll(a.call(this,b))});if(this[0]){var b=m(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){for(var a=this;a.firstChild&&1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return this.each(m.isFunction(a)?function(b){m(this).wrapInner(a.call(this,b))}:function(){var b=m(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=m.isFunction(a);return this.each(function(c){m(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){m.nodeName(this,"body")||m(this).replaceWith(this.childNodes)}).end()}}),m.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0||!k.reliableHiddenOffsets()&&"none"===(a.style&&a.style.display||m.css(a,"display"))},m.expr.filters.visible=function(a){return!m.expr.filters.hidden(a)};var Qc=/%20/g,Rc=/\[\]$/,Sc=/\r?\n/g,Tc=/^(?:submit|button|image|reset|file)$/i,Uc=/^(?:input|select|textarea|keygen)/i;m.param=function(a,b){var c,d=[],e=function(a,b){b=m.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=m.ajaxSettings&&m.ajaxSettings.traditional),m.isArray(a)||a.jquery&&!m.isPlainObject(a))m.each(a,function(){e(this.name,this.value)});else for(c in a)Vc(c,a[c],b,e);return d.join("&").replace(Qc,"+")},m.fn.extend({serialize:function(){return m.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=m.prop(this,"elements");return a?m.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!m(this).is(":disabled")&&Uc.test(this.nodeName)&&!Tc.test(a)&&(this.checked||!W.test(a))}).map(function(a,b){var c=m(this).val();return null==c?null:m.isArray(c)?m.map(c,function(a){return{name:b.name,value:a.replace(Sc,"\r\n")}}):{name:b.name,value:c.replace(Sc,"\r\n")}}).get()}}),m.ajaxSettings.xhr=void 0!==a.ActiveXObject?function(){return!this.isLocal&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&Zc()||$c()}:Zc;var Wc=0,Xc={},Yc=m.ajaxSettings.xhr();a.ActiveXObject&&m(a).on("unload",function(){for(var a in Xc)Xc[a](void 0,!0)}),k.cors=!!Yc&&"withCredentials"in Yc,(Yc=k.ajax=!!Yc)&&m.ajaxTransport(function(a){if(!a.crossDomain||k.cors){var b;return{send:function(c,d){var e,f=a.xhr(),g=++Wc;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)void 0!==c[e]&&f.setRequestHeader(e,c[e]+"");f.send(a.hasContent&&a.data||null),b=function(c,e){var h,i,j;if(b&&(e||4===f.readyState))if(delete Xc[g],b=void 0,f.onreadystatechange=m.noop,e)4!==f.readyState&&f.abort();else{j={},h=f.status,"string"==typeof f.responseText&&(j.text=f.responseText);try{i=f.statusText}catch(k){i=""}h||!a.isLocal||a.crossDomain?1223===h&&(h=204):h=j.text?200:404}j&&d(h,i,j,f.getAllResponseHeaders())},a.async?4===f.readyState?setTimeout(b):f.onreadystatechange=Xc[g]=b:b()},abort:function(){b&&b(void 0,!0)}}}}),m.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return m.globalEval(a),a}}}),m.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}
vendor: 5,360 bytes, lines 19-29
19),m.ajaxTransport("script",function(a){if(a.crossDomain){var b,c=y.head||m("head")[0]||y.documentElement;return{send:function(d,e){b=y.createElement("script"),b.async=!0,a.scriptCharset&&(b.charset=a.scriptCharset),b.src=a.url,b.onload=b.onreadystatechange=function(a,c){(c||!b.readyState||/loaded|complete/.test(b.readyState))&&(b.onload=b.onreadystatechange=null,b.parentNode&&b.parentNode.removeChild(b),b=null,c||e(200,"success"))},c.insertBefore(b,c.firstChild)},abort:function(){b&&b.onload(void 0,!0)}}}});var _c=[],ad=/(=)\?(?=&|$)|\?\?/;m.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=_c.pop()||m.expando+"_"+vc++;return this[a]=!0,a}}),m.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=!1!==b.jsonp&&(ad.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&ad.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=m.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(ad,"$1"+e):!1!==b.jsonp&&(b.url+=(wc.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||m.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,_c.push(e)),g&&m.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),m.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||y;var d=u.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=m.buildFragment([a],b,e),e&&e.length&&m(e).remove(),m.merge([],d.childNodes))};var bd=m.fn.load;m.fn.load=function(a,b,c){if("string"!=typeof a&&bd)return bd.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=m.trim(a.slice(h,a.length)),a=a.slice(0,h)),m.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(f="POST"),g.length>0&&m.ajax({url:a,type:f,dataType:"html",data:b}).done(function(a){e=arguments,g.html(d?m("<div>").append(m.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,e||[a.responseText,b,a])}),this},m.expr.filters.animated=function(a){return m.grep(m.timers,function(b){return a===b.elem}).length};var cd=a.document.documentElement;m.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=m.css(a,"position"),l=m(a),n={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=m.css(a,"top"),i=m.css(a,"left"),j=("absolute"===k||"fixed"===k)&&m.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),m.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(n.top=b.top-h.top+g),null!=b.left&&(n.left=b.left-h.left+e),"using"in b?b.using.call(a,n):l.css(n)}},m.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){m.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;return f?(b=f.documentElement,m.contains(b,e)?(typeof e.getBoundingClientRect!==K&&(d=e.getBoundingClientRect()),c=dd(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d):void 0},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===m.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),m.nodeName(a[0],"html")||(c=a.offset()),c.top+=m.css(a[0],"borderTopWidth",!0),c.left+=m.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-m.css(d,"marginTop",!0),left:b.left-c.left-m.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||cd;a&&!m.nodeName(a,"html")&&"static"===m.css(a,"position");)a=a.offsetParent;return a||cd})}}),m.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);m.fn[a]=function(d){return V(this,function(a,d,e){var f=dd(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?m(f).scrollLeft():e,c?e:m(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),m.each(["top","left"],function(a,b){m.cssHooks[b]=Lb(k.pixelPosition,function(a,c){return c?(c=Jb(a,b),Hb.test(c)?m(a).position()[b]+"px":c):void 0})}),m.each({Height:"height",Width:"width"},function(a,b){m.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){m.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(!0===d||!0===e?"margin":"border");return V(this,function(b,c,d){var e;return m.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?m.css(b,c,g):m.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),m.fn.size=function(){return this.length},m.fn.andSelf=m.fn.addBack, 20"function"==typeof define&&define.amd&&define("jquery",[],function(){return m});var ed=a.jQuery,fd=a.$;return m.noConflict=function(b){return a.$===m&&(a.$=fd),b&&a.jQuery===m&&(a.jQuery=ed),m},typeof b===K&&(a.jQuery=a.$=m),m}),/*! 21 * jQuery Validation Plugin v1.17.0 22 * 23 * https://jqueryvalidation.org/ 24 * 25 * Copyright (c) 2017 Jörn Zaefferer 26 * Released under the MIT license 27 */ 28function(factory){"function"==typeof define&&define.amd?define(["jquery"],factory):"object"==typeof module&&module.exports?module.exports=factory(require("jquery")):factory(jQuery)}(function($){$.extend($.fn,{ 29// https://jqueryvalidation.org/validate/
vendor: 2,558 bytes, lines 30-57
30validate:function(options){ 31// If nothing is selected, return nothing; can't chain anyway 32if(!this.length)return void(options&&options.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing.")); 33// Check if a validator for this form was already created 34var validator=$.data(this[0],"validator"); 35// Add novalidate tag if HTML5. 36// Validate the form on submit 37return validator||(this.attr("novalidate","novalidate"),validator=new $.validator(options,this[0]),$.data(this[0],"validator",validator),validator.settings.onsubmit&&(this.on("click.validate",":submit",function(event){ 38// Track the used submit button to properly handle scripted 39// submits later. 40validator.submitButton=event.currentTarget, 41// Allow suppressing validation by adding a cancel class to the submit button 42$(this).hasClass("cancel")&&(validator.cancelSubmit=!0), 43// Allow suppressing validation by adding the html5 formnovalidate attribute to the submit button 44void 0!==$(this).attr("formnovalidate")&&(validator.cancelSubmit=!0)}),this.on("submit.validate",function(event){function handle(){var hidden,result; 45// Insert a hidden input as a replacement for the missing submit button 46// The hidden input is inserted in two cases: 47// - A user defined a `submitHandler` 48// - There was a pending request due to `remote` method and `stopRequest()` 49// was called to submit the form in case it's valid 50// And clean up afterwards; thanks to no-block-scope, hidden can be referenced 51return validator.submitButton&&(validator.settings.submitHandler||validator.formSubmitted)&&(hidden=$("<input type='hidden'/>").attr("name",validator.submitButton.name).val($(validator.submitButton).val()).appendTo(validator.currentForm)),!validator.settings.submitHandler||(result=validator.settings.submitHandler.call(validator,validator.currentForm,event),hidden&&hidden.remove(),void 0!==result&&result)} 52// Prevent submit for invalid forms or custom submit handlers 53// Prevent form submit to be able to see console output 54// Prevent submit for invalid forms or custom submit handlers 55return validator.settings.debug&&event.preventDefault(),validator.cancelSubmit?(validator.cancelSubmit=!1,handle()):validator.form()?validator.pendingRequest?(validator.formSubmitted=!0,!1):handle():(validator.focusInvalid(),!1)})),validator)}, 56// https://jqueryvalidation.org/valid/ 57valid:function(){var valid,validator,errorList;return $(this[0]).is("form")?valid=this.validate().form():(errorList=[],valid=!0,validator=$(this[0].form).validate(),this.each(function(){(valid=vali
57dator.element(this)&&valid)||(errorList=errorList.concat(validator.errorList))}),validator.errorList=errorList),valid}, 58// https://jqueryvalidation.org/rules/ 59rules:function(command,argument){var settings,staticRules,existingRules,data,param,filtered,element=this[0]; 60// If nothing is selected, return empty object; can't chain anyway 61if(null!=element&&(!element.form&&element.hasAttribute("contenteditable")&&(element.form=this.closest("form")[0],element.name=this.attr("name")),null!=element.form)){if(command)switch(settings=$.data(element.form,"validator").settings,staticRules=settings.rules,existingRules=$.validator.staticRules(element),command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument)), 62// Remove messages from rules, but allow them to be set separately 63delete existingRules.messages,staticRules[element.name]=existingRules,argument.messages&&(settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages));break;case"remove":return argument?(filtered={},$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method],delete existingRules[method]}),filtered):(delete staticRules[element.name],existingRules)} 64// Make sure required is at front 65// Make sure remote is at back 66return data=$.validator.normalizeRules($.extend({},$.validator.classRules(element),$.validator.attributeRules(element),$.validator.dataRules(element),$.validator.staticRules(element)),element),data.required&&(param=data.required,delete data.required,data=$.extend({required:param},data)),data.remote&&(param=data.remote,delete data.remote,data=$.extend(data,{remote:param})),data}}}), 67// Custom selectors 68$.extend($.expr.pseudos||$.expr[":"],{// '|| $.expr[ ":" ]' here enables backwards compatibility to jQuery 1.7. Can be removed when dropping jQ 1.7.x support 69// https://jqueryvalidation.org/blank-selector/ 70blank:function(a){return!$.trim(""+$(a).val())}, 71// https://jqueryvalidation.org/filled-selector/ 72filled:function(a){var val=$(a).val();return null!==val&&!!$.trim(""+val)}, 73// https://jqueryvalidation.org/unchecked-selector/ 74unchecked:function(a){return!$(a).prop("checked")}}), 75// Constructor for validator 76$.validator=function(options,form){this.settings=$.extend(!0,{},$.validator.defaults,options),this.currentForm=form,this.init()}, 77// https://jqueryvalidation.org/jQuery.validator.format/ 78$.validator.format=function(source,params){return 1===arguments.length?function(){var args=$.makeArray(arguments);return args.unshift(source),$.validator.format.apply(this,args)}:void 0===params?source:(arguments.length>2&¶ms.constructor!==Array&&(params=$.makeArray(arguments).slice(1)),params.constructor!==Array&&(params=[params]),$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),function(){return n})}),source)},$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",pendingClass:"pending",validClass:"valid",errorElement:"label",focusCleanup:!1,focusInvalid:!0,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(element){this.lastActive=element, 79// Hide error label and remove error class on focus if enabled 80this.settings.focusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass),this.hideThese(this.errorsFor(element)))},onfocusout:function(element){this.checkable(element)||!(element.name in this.submitted)&&this.optional(element)||this.element(element)},onkeyup:function(element,event){ 81// Avoid revalidate the field when pressing one of the following keys 82// Shift => 16 83// Ctrl => 17 84// Alt => 18 85// Caps lock => 20 86// End => 35 87// Home => 36 88// Left arrow => 37 89// Up arrow => 38 90// Right arrow => 39 91// Down arrow => 40 92// Insert => 45 93// Num lock => 144 94// AltGr key => 225 95var excludedKeys=[16,17,18,20,35,36,37,38,39,40,45,144,225];9===event.which&&""===this.elementValue(element)||-1!==$.inArray(event.keyCode,excludedKeys)||(element.name in this.submitted||element.name in this.invalid)&&this.element
vendor: 4,501 bytes, lines 95-110
95(element)},onclick:function(element){ 96// Click on selects, radiobuttons and checkboxes 97element.name in this.submitted?this.element(element):element.parentNode.name in this.submitted&&this.element(element.parentNode)},highlight:function(element,errorClass,validClass){"radio"===element.type?this.findByName(element.name).addClass(errorClass).removeClass(validClass):$(element).addClass(errorClass).removeClass(validClass)},unhighlight:function(element,errorClass,validClass){"radio"===element.type?this.findByName(element.name).removeClass(errorClass).addClass(validClass):$(element).removeClass(errorClass).addClass(validClass)}}, 98// https://jqueryvalidation.org/jQuery.validator.setDefaults/ 99setDefaults:function(settings){$.extend($.validator.defaults,settings)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",equalTo:"Please enter the same value again.",maxlength:$.validator.format("Please enter no more than {0} characters."),minlength:$.validator.format("Please enter at least {0} characters."),rangelength:$.validator.format("Please enter a value between {0} and {1} characters long."),range:$.validator.format("Please enter a value between {0} and {1}."),max:$.validator.format("Please enter a value less than or equal to {0}."),min:$.validator.format("Please enter a value greater than or equal to {0}."),step:$.validator.format("Please enter a multiple of {0}.")},autoCreateRanges:!1,prototype:{init:function(){function delegate(event){ 100// Set form expando on contenteditable 101!this.form&&this.hasAttribute("contenteditable")&&(this.form=$(this).closest("form")[0],this.name=$(this).attr("name"));var validator=$.data(this.form,"validator"),eventType="on"+event.type.replace(/^validate/,""),settings=validator.settings;settings[eventType]&&!$(this).is(settings.ignore)&&settings[eventType].call(validator,this,event)}this.labelContainer=$(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm),this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var rules,groups=this.groups={};$.each(this.settings.groups,function(key,value){"string"==typeof value&&(value=value.split(/\s/)),$.each(value,function(index,name){groups[name]=key})}),rules=this.settings.rules,$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value)}),$(this.currentForm).on("focusin.validate focusout.validate keyup.validate",":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'], [type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'], [type='radio'], [type='checkbox'], [contenteditable], [type='button']",delegate).on("click.validate","select, option, [type='radio'], [type='checkbox']",delegate),this.settings.invalidHandler&&$(this.currentForm).on("invalid-form.validate",this.settings.invalidHandler)}, 102// https://jqueryvalidation.org/Validator.form/ 103form:function(){return this.checkForm(),$.extend(this.submitted,this.errorMap),this.invalid=$.extend({},this.errorMap),this.valid()||$(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var i=0,elements=this.currentElements=this.elements();elements[i];i++)this.check(elements[i]);return this.valid()}, 104// https://jqueryvalidation.org/Validator.element/ 105element:function(element){var rs,group,cleanElement=this.clean(element),checkElement=this.validationTargetFor(cleanElement),v=this,result=!0; 106// If this element is grouped, then validate all group elements already 107// containing a value 108// Hide error containers on last error 109// Add aria-invalid status for screen readers 110return void 0===checkElement?delete this.invalid[cleanElement.name]:(this.prepareElement(checkElement),this.currentElements=$(checkElement),group=this.groups[checkElement.name],group&&$.each(this.groups,function(name,testgroup){testgroup===group&&name!==checkElement.name&&(cleanElement=v.validationTargetFor(v.clean(v.findByName(name))))&&cleanElement.name in v.invali
110d&&(v.currentElements.push(cleanElement),result=v.check(cleanElement)&&result)}),rs=!1!==this.check(checkElement),result=result&&rs,this.invalid[checkElement.name]=!rs,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),$(element).attr("aria-invalid",!rs)),result}, 111// https://jqueryvalidation.org/Validator.showErrors/ 112showErrors:function(errors){if(errors){var validator=this; 113// Add items to error list and map 114$.extend(this.errorMap,errors),this.errorList=$.map(this.errorMap,function(message,name){return{message:message,element:validator.findByName(name)[0]}}), 115// Remove items from success list 116this.successList=$.grep(this.successList,function(element){return!(element.name in errors)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()}, 117// https://jqueryvalidation.org/Validator.resetForm/ 118resetForm:function(){$.fn.resetForm&&$(this.currentForm).resetForm(),this.invalid={},this.submitted={},this.prepareForm(),this.hideErrors();var elements=this.elements().removeData("previousValue").removeAttr("aria-invalid");this.resetElements(elements)},resetElements:function(elements){var i;if(this.settings.unhighlight)for(i=0;elements[i];i++)this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,""),this.findByName(elements[i].name).removeClass(this.settings.validClass);else elements.removeClass(this.settings.errorClass).removeClass(this.settings.validClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(obj){/* jshint unused: false */ 119var i,count=0;for(i in obj) 120// This check allows counting elements with empty error 121// message as invalid elements 122void 0!==obj[i]&&null!==obj[i]&&!1!==obj[i]&&count++;return count},hideErrors:function(){this.hideThese(this.toHide)},hideThese:function(errors){errors.not(this.containers).text(""),this.addWrapper(errors).hide()},valid:function(){return 0===this.size()},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(e){}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&1===$.grep(this.errorList,function(n){return n.element.name===lastActive.name}).length&&lastActive},elements:function(){var validator=this,rulesCache={}; 123// Select all valid inputs inside the form (no submit or reset buttons) 124return $(this.currentForm).find("input, select, textarea, [contenteditable]").not(":submit, :reset, :image, :disabled").not(this.settings.ignore).filter(function(){var name=this.name||$(this).attr("name"); 125// Select only the first element for each name, and only those with rules specified 126// For contenteditable 127// Set form expando on contenteditable 128// Select only the first element for each name, and only those with rules specified 129return!name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.hasAttribute("contenteditable")&&(this.form=$(this).closest("form")[0],this.name=name),!(name in rulesCache||!validator.objectLength($(this).rules()))&&(rulesCache[name]=!0,!0)})},clean:function(selector){return $(selector)[0]},errors:function(){var errorClass=this.settings.errorClass.split(" ").join(".");return $(this.settings.errorElement+"."+errorClass,this.errorContext)},resetInternals:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=$([]),this.toHide=$([])},reset:function(){this.resetInternals(),this.currentElements=$([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(element){this.reset(),this.toHide=this.errorsFor(element)},elementValue:function(element){var val,idx,$element=$(element),type=element.type; 130// Modern browser (chrome & safari) 131// Legacy browsers 132// Unix-based path 133// Windows-based path 134return"radio"===type||"checkbox"===type?this.findByName(element.name).filter(":checked").val():"number"===type&&void 0!==element.validity?element.validity.badInput?"NaN":$element.val():(val=element.hasAttribute("contenteditable")?$element.text():$element.val(),"file"===type?"C:\\fakepath\\"===val.substr(0,12)?val.substr(12):(idx=val.lastIndexOf("/"))>=0?val.substr(idx+1):(idx=val.lastIndexOf("\\"),idx>=0?val.substr(idx+1):val):"string"==typeof val?val.replace(/\r/g,""):val)},check:function(element){element=this.validationTargetFor(this.clean(element));var result,method,rule,normalizer,rules=$(element).rules(),rulesCount=$.map(rules,function(n,i){return i}).length,dependencyMismatch=!1,val=this.elementValue(element); 135// If normalizer is defined, then call it to retreive the changed value instead 136// of using the real one. 137// Note that `this` in the normalizer is `element`. 138if( 139// Prioritize the local normalizer defined for this element over the global one 140// if the former exists, otherwise user the global one in case it exists.
vendor: 4,493 bytes, lines 141-167
141"function"==typeof rules.normalizer?normalizer=rules.normalizer:"function"==typeof this.settings.normalizer&&(normalizer=this.settings.normalizer),normalizer){if("string"!=typeof(val=normalizer.call(element,val)))throw new TypeError("The normalizer should return a string value."); 142// Delete the normalizer from rules to avoid treating it as a pre-defined method. 143delete rules.normalizer}for(method in rules){rule={method:method,parameters:rules[method]};try{ 144// If a method indicates that the field is optional and therefore valid, 145// don't mark it as valid when there are no other rules 146if("dependency-mismatch"===(result=$.validator.methods[method].call(this,val,element,rule.parameters))&&1===rulesCount){dependencyMismatch=!0;continue}if(dependencyMismatch=!1,"pending"===result)return void(this.toHide=this.toHide.not(this.errorsFor(element)));if(!result)return this.formatAndAdd(element,rule),!1}catch(e){throw this.settings.debug&&window.console&&console.log("Exception occurred when checking element "+element.id+", check the '"+rule.method+"' method.",e),e instanceof TypeError&&(e.message+=". Exception occurred when checking element "+element.id+", check the '"+rule.method+"' method."),e}}if(!dependencyMismatch)return this.objectLength(rules)&&this.successList.push(element),!0}, 147// Return the custom message for the given element and validation method 148// specified in the element's HTML5 data attribute 149// return the generic message if present and no method specific message is present 150customDataMessage:function(element,method){return $(element).data("msg"+method.charAt(0).toUpperCase()+method.substring(1).toLowerCase())||$(element).data("msg")}, 151// Return the custom message for the given element name and validation method 152customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor===String?m:m[method])}, 153// Return the first defined argument, allowing empty strings 154findDefined:function(){for(var i=0;i<arguments.length;i++)if(void 0!==arguments[i])return arguments[i]}, 155// The second parameter 'rule' used to be a string, and extended to an object literal 156// of the following form: 157// rule = { 158// method: "method name", 159// parameters: "the given method parameters" 160// } 161// 162// The old behavior still supported, kept to maintain backward compatibility with 163// old code, and will be removed in the next major release. 164defaultMessage:function(element,rule){"string"==typeof rule&&(rule={method:rule});var message=this.findDefined(this.customMessage(element.name,rule.method),this.customDataMessage(element,rule.method), 165// 'title' is never undefined, so handle empty string as undefined 166!this.settings.ignoreTitle&&element.title||void 0,$.validator.messages[rule.method],"<strong>Warning: No message defined for "+element.name+"</strong>"),theregex=/\$?\{(\d+)\}/g;return"function"==typeof message?message=message.call(this,rule.parameters,element):theregex.test(message)&&(message=$.validator.format(message.replace(theregex,"{$1}"),rule.parameters)),message},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule);this.errorList.push({message:message,element:element,method:rule.method}),this.errorMap[element.name]=message,this.submitted[element.name]=message},addWrapper:function(toToggle){return this.settings.wrapper&&(toToggle=toToggle.add(toToggle.parent(this.settings.wrapper))),toToggle},defaultShowErrors:function(){var i,elements,error;for(i=0;this.errorList[i];i++)error=this.errorList[i],this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass,this.settings.validClass),this.showLabel(error.element,error.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(i=0;this.successList[i];i++)this.showLabel(this.successList[i]);if(this.settings.unhighlight)for(i=0,elements=this.validElements();elements[i];i++)this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return $(this.errorList).map(function(){return this.element})},showLabel:function(element,message){var place,group,errorID,v,error=this.errorsFor(element),elementID=this.idOrName(element),describedBy=$(element).attr("aria-describedby");error.length?( 167// Refresh error/success class
168error.removeClass(this.settings.validClass).addClass(this.settings.errorClass), 169// Replace message on existing label 170error.html(message)):( 171// Create error element 172error=$("<"+this.settings.errorElement+">").attr("id",elementID+"-error").addClass(this.settings.errorClass).html(message||""), 173// Maintain reference to the element to be placed into the DOM 174place=error,this.settings.wrapper&&( 175// Make sure the element is visible, even in IE 176// actually showing the wrapped element is handled elsewhere 177place=error.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(place):this.settings.errorPlacement?this.settings.errorPlacement.call(this,place,$(element)):place.insertAfter(element), 178// Link error back to the element 179error.is("label")? 180// If the error is a label, then associate using 'for' 181error.attr("for",elementID):0===error.parents("label[for='"+this.escapeCssMeta(elementID)+"']").length&&(errorID=error.attr("id"), 182// Respect existing non-error aria-describedby 183describedBy?describedBy.match(new RegExp("\\b"+this.escapeCssMeta(errorID)+"\\b"))||( 184// Add to end of list if not already present 185describedBy+=" "+errorID):describedBy=errorID,$(element).attr("aria-describedby",describedBy),( 186// If this element is grouped, then assign to all elements in the same group 187group=this.groups[element.name])&&(v=this,$.each(v.groups,function(name,testgroup){testgroup===group&&$("[name='"+v.escapeCssMeta(name)+"']",v.currentForm).attr("aria-describedby",error.attr("id"))})))),!message&&this.settings.success&&(error.text(""),"string"==typeof this.settings.success?error.addClass(this.settings.success):this.settings.success(error,element)),this.toShow=this.toShow.add(error)},errorsFor:function(element){var name=this.escapeCssMeta(this.idOrName(element)),describer=$(element).attr("aria-describedby"),selector="label[for='"+name+"'], label[for='"+name+"'] *"; 188// 'aria-describedby' should directly reference the error element 189return describer&&(selector=selector+", #"+this.escapeCssMeta(describer).replace(/\s+/g,", #")),this.errors().filter(selector)}, 190// See https://api.jquery.com/category/selectors/, for CSS 191// meta-characters that should be escaped in order to be used with JQuery 192// as a literal part of a name/id or any selector. 193escapeCssMeta:function(string){return string.replace(/([\\!"#$%&'()*+,.\/:;<=>?@\[\]^`{|}~])/g,"\\$1")},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name)},validationTargetFor:function(element){ 194// Always apply ignore filter 195// If radio/checkbox, validate first element in group instead 196return this.checkable(element)&&(element=this.findByName(element.name)),$(element).not(this.settings.ignore)[0]},checkable:function(element){return/radio|checkbox/i.test(element.type)},findByName:function(name){return $(this.currentForm).find("[name='"+this.escapeCssMeta(name)+"']")},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case"select":return $("option:selected",element).length;case"input":if(this.checkable(element))return this.findByName(element.name).filter(":checked").length}return value.length},depend:function(param,element){return!this.dependTypes[typeof param]||this.dependTypes[typeof param](param,element)},dependTypes:{boolean:function(param){return param},string:function(param,element){return!!$(param,element.form).length},function:function(param,element){return param(element)}},optional:function(element){var val=this.elementValue(element);return!$.validator.methods.required.call(this,val,element)&&"dependency-mismatch"},startRequest:function(element){this.pending[element.name]||(this.pendingRequest++,$(element).addClass(this.settings.pendingClass),this.pending[element.name]=!0)},stopRequest:function(element,valid){this.pendingRequest--, 197// Sometimes synchronization fails, make sure pendingRequest is never < 0 198this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[element.name],$(element).removeClass(this.settings.pendingClass),valid&&0===this.pendingRequest&&this.formSubmitted&&this.form()?($(this.currentForm).submit(), 199// Remove the hidden input that was used as a replacement for the 200// missing submit button. The hidden input is added by `handle()` 201// to ensure that the value of the used submit button is passed on 202// for scripted submits triggered by this method 203this.submitButton&&$("input:hidden[name='"+this.submitButton.name+"']",this.currentForm).remove(),this.formSubmitted=!1):!valid&&0===this.pendingRequest&&this.formSubmitted&&($(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(element,method){return method="string"==typeof method&&method||"remote",$.data(element,"previousValue")||$.data(element,"previousValue",{old:null,valid:!0,message:this.defaultMessage(element,{method:method})})}, 204// Cleans up all forms and elements, removes validator-specific events 205destroy:function(){this.resetForm(),$(this.currentForm).off(".validate").removeData("validator").find(".validate-equalTo-blur").off(".validate-equalTo").removeClass("val
vendor: 9,877 bytes, lines 205-288
205idate-equalTo-blur")}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(className,rules){className.constructor===String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className)},classRules:function(element){var rules={},classes=$(element).attr("class");return classes&&$.each(classes.split(" "),function(){this in $.validator.classRuleSettings&&$.extend(rules,$.validator.classRuleSettings[this])}),rules},normalizeAttributeRule:function(rules,type,method,value){ 206// Convert the value to a number for number inputs, and for text for backwards compability 207// allows type="date" and others to be compared as strings 208/min|max|step/.test(method)&&(null===type||/number|range|text/.test(type))&&(value=Number(value), 209// Support Opera Mini, which returns NaN for undefined minlength 210isNaN(value)&&(value=void 0)),value||0===value?rules[method]=value:type===method&&"range"!==type&&( 211// Exception: the jquery validate 'range' method 212// does not test for the html5 'range' type 213rules[method]=!0)},attributeRules:function(element){var method,value,rules={},$element=$(element),type=element.getAttribute("type");for(method in $.validator.methods) 214// Support for <input required> in both html5 and older browsers 215"required"===method?(value=element.getAttribute(method), 216// Some browsers return an empty string for the required attribute 217// and non-HTML5 browsers might have required="" markup 218""===value&&(value=!0), 219// Force non-HTML5 browsers to return bool 220value=!!value):value=$element.attr(method),this.normalizeAttributeRule(rules,type,method,value); 221// 'maxlength' may be returned as -1, 2147483647 ( IE ) and 524288 ( safari ) for text inputs 222return rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)&&delete rules.maxlength,rules},dataRules:function(element){var method,value,rules={},$element=$(element),type=element.getAttribute("type");for(method in $.validator.methods)value=$element.data("rule"+method.charAt(0).toUpperCase()+method.substring(1).toLowerCase()),this.normalizeAttributeRule(rules,type,method,value);return rules},staticRules:function(element){var rules={},validator=$.data(element.form,"validator");return validator.settings.rules&&(rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{}),rules},normalizeRules:function(rules,element){ 223// Handle dependency check 224// Evaluate parameters 225// Clean number parameters 226// Auto-create ranges 227return $.each(rules,function(prop,val){ 228// Ignore rule when param is explicitly false, eg. required:false 229if(!1===val)return void delete rules[prop];if(val.param||val.depends){var keepRule=!0;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element)}keepRule?rules[prop]=void 0===val.param||val.param:($.data(element.form,"validator").resetElements($(element)),delete rules[prop])}}),$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)&&"normalizer"!==rule?parameter(element):parameter}),$.each(["minlength","maxlength"],function(){rules[this]&&(rules[this]=Number(rules[this]))}),$.each(["rangelength","range"],function(){var parts;rules[this]&&($.isArray(rules[this])?rules[this]=[Number(rules[this][0]),Number(rules[this][1])]:"string"==typeof rules[this]&&(parts=rules[this].replace(/[\[\]]/g,"").split(/[\s,]+/),rules[this]=[Number(parts[0]),Number(parts[1])]))}),$.validator.autoCreateRanges&&(null!=rules.min&&null!=rules.max&&(rules.range=[rules.min,rules.max],delete rules.min,delete rules.max),null!=rules.minlength&&null!=rules.maxlength&&(rules.rangelength=[rules.minlength,rules.maxlength],delete rules.minlength,delete rules.maxlength)),rules}, 230// Converts a simple string to a {string: true} rule, e.g., "required" to {required:true} 231normalizeRule:function(data){if("string"==typeof data){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=!0}),data=transformed}return data}, 232// https://jqueryvalidation.org/jQuery.validator.addMethod/ 233addMethod:function(name,method,message){$.validator.methods[name]=method,$.validator.messages[name]=void 0!==message?message:$.validator.messages[name],method.length<3&&$.validator.addClassRules(name,$.validator.normalizeRule(name))}, 234// https://jqueryvalidation.org/jQuery.validator.methods/ 235methods:{ 236// https://jqueryvalidation.org/required-method/ 237required:function(value,element,param){ 238// Check if dependency is met 239if(!this.depend(param,element))return"dependency-mismatch";if("select"===element.nodeName.toLowerCase()){ 240// Could be an array for select-multiple or a string, both are fine this way 241var val=$(element).val();return val&&val.length>0}return this.checkable(element)?this.getLength(value,element)>0:value.length>0}, 242// https://jqueryvalidation.org/email-method/ 243email:function(value,element){ 244// From https://html.spec.whatwg.org/multipage/forms.html#valid-e-mail-address 245// Retrieved 2014-01-14 246// If you have a problem with this implementation, report a bug against the above spec 247// Or use custom methods to implement your own email validation 248return this.optional(element)||/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(value)}, 249// https://jqueryvalidation.org/url-method/ 250url:function(value,element){ 251// Copyright (c) 2010-2013 Diego Perini, MIT licensed 252// https://gist.github.com/dperini/729294 253// see also https://mathiasbynens.be/demo/url-regex 254// modified to allow protocol-relative URLs 255return this.optional(element)||/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[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.test(value)}, 256// https://jqueryvalidation.org/date-method/ 257date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value).toString())}, 258// https://jqueryvalidation.org/dateISO-method/ 259dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value)}, 260// https://jqueryvalidation.org/number-method/ 261number:function(value,element){return this.optional(element)||/^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(value)}, 262// https://jqueryvalidation.org/digits-method/ 263digits:function(value,element){return this.optional(element)||/^\d+$/.test(value)}, 264// https://jqueryvalidation.org/minlength-method/ 265minlength:function(value,element,param){var length=$.isArray(value)?value.length:this.getLength(value,element);return this.optional(element)||length>=param}, 266// https://jqueryvalidation.org/maxlength-method/ 267maxlength:function(value,element,param){var length=$.isArray(value)?value.length:this.getLength(value,element);return this.optional(element)||length<=param}, 268// https://jqueryvalidation.org/rangelength-method/ 269rangelength:function(value,element,param){var length=$.isArray(value)?value.length:this.getLength(value,element);return this.optional(element)||length>=param[0]&&length<=param[1]}, 270// https://jqueryvalidation.org/min-method/ 271min:function(value,element,param){return this.optional(element)||value>=param}, 272// https://jqueryvalidation.org/max-method/ 273max:function(value,element,param){return this.optional(element)||value<=param}, 274// https://jqueryvalidation.org/range-method/ 275range:function(value,element,param){return this.optional(element)||value>=param[0]&&value<=param[1]}, 276// https://jqueryvalidation.org/step-method/ 277step:function(value,element,param){var decimals,type=$(element).attr("type"),errorMessage="Step attribute on input type "+type+" is not supported.",supportedTypes=["text","number","range"],re=new RegExp("\\b"+type+"\\b"),notSupported=type&&!re.test(supportedTypes.join()),decimalPlaces=function(num){var match=(""+num).match(/(?:\.(\d+))?$/);return match&&match[1]?match[1].length:0},toInt=function(num){return Math.round(num*Math.pow(10,decimals))},valid=!0; 278// Works only for text, number and range input types 279// TODO find a way to support input types date, datetime, datetime-local, month, time and week 280if(notSupported)throw new Error(errorMessage); 281// Value can't have too many decimals 282return decimals=decimalPlaces(param),(decimalPlaces(value)>decimals||toInt(value)%toInt(param)!=0)&&(valid=!1),this.optional(element)||valid}, 283// https://jqueryvalidation.org/equalTo-method/ 284equalTo:function(value,element,param){ 285// Bind to the blur event of the target in order to revalidate whenever the target field is updated 286var target=$(param);return this.settings.onfocusout&&target.not(".validate-equalTo-blur").length&&target.addClass("validate-equalTo-blur").on("blur.validate-equalTo",function(){$(element).valid()}),value===target.val()}, 287// https://jqueryvalidation.org/remote-method/ 288remote:function(value,element,param,method){if(this.optional(element))return"dependency-mismatch";method="string"==typeof method&&method||"remote";var validator,data,optionDataString,previous=this.previousValue(element,method);return this.settings.messages[element.name]||(this.settings.messages[element.name]={}),previous.originalMessage=previous.originalMessage||this.settings.messages[element.name][method],this.settings.messages[element.name][method]=previous.message,param="string"==typeof param&&{url:param}||param,optionDataString=$.param($.extend({data:value},param.data)),previous.old===optionDataString?previous.valid:(previous.old=optionDataString,validator=this,this.startRequest
288(element),data={},data[element.name]=value,$.ajax($.extend(!0,{mode:"abort",port:"validate"+element.name,dataType:"json",data:data,context:validator.currentForm,success:function(response){var errors,message,submitted,valid=!0===response||"true"===response;validator.settings.messages[element.name][method]=previous.originalMessage,valid?(submitted=validator.formSubmitted,validator.resetInternals(),validator.toHide=validator.errorsFor(element),validator.formSubmitted=submitted,validator.successList.push(element),validator.invalid[element.name]=!1,validator.showErrors()):(errors={},message=response||validator.defaultMessage(element,{method:method,parameters:value}),errors[element.name]=previous.message=message,validator.invalid[element.name]=!0,validator.showErrors(errors)),previous.valid=valid,validator.stopRequest(element,valid)}},param)),"pending")}}}); 289// Ajax mode: abort 290// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]}); 291// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort() 292var ajax,pendingRequests={}; 293// Use a prefilter if available (1.5+) 294// Proxy ajax 295return $.ajaxPrefilter?$.ajaxPrefilter(function(settings,_,xhr){var port=settings.port;"abort"===settings.mode&&(pendingRequests[port]&&pendingRequests[port].abort(),pendingRequests[port]=xhr)}):(ajax=$.ajax,$.ajax=function(settings){var mode=("mode"in settings?settings:$.ajaxSettings).mode,port=("port"in settings?settings:$.ajaxSettings).port;return"abort"===mode?(pendingRequests[port]&&pendingRequests[port].abort(),pendingRequests[port]=ajax.apply(this,arguments),pendingRequests[port]):ajax.apply(this,arguments)}),$}),/*! 296 Modaal - accessible modals - v0.4.3 297 by Humaan, for all humans. 298 http://humaan.com 299 */ 300/** 301 Modaal jQuery Plugin : Accessible Modals 302 303 ==== General Options === 304 type (string) : ajax, inline, image, iframe, confirm. Defaults to 'inline' 305 content_source (stribg) : Accepts a string value for your target element, such as '#my-content'. This allows for when trigger element is 306 an `<a href="#">` link. Not to be confused with the already existing `source` event. 307 animation (string) : Fade, expand, down, up. Defaults to 'fade' 308 after_callback_delay (integer) : Specify a delay value for the after open callbacks. This is necessary because with the bundled animations 309 have a set duration in the bundled CSS. Specify a delay of the same amount as the animation duration in so 310 more accurately fire the after open/close callbacks. Defaults 350, does not apply if animation is 'none', 311 after open callbacks are dispatched immediately 312 313 is_locked (boolean) : Set this to true to disable closing the modal via keypress or clicking the background. Beware that if 314 type != 'confirm' there will be no interface to dismiss the modal if is_locked = true, you'd have to 315 programmatically arrange to dismiss the modal. Confirm modals are always locked regardless of this option 316 Defaults to false 317 318 hide_close (boolean) : Set this to true to hide the close modal button. Key press and overlay click will still close the modal. 319 This method is best used when you want to put a custom close button inside the modal container space. 320 321 background (string) : Background overlay style. Defaults to '#000' 322 overlay_opacity (float) : Background overlay transparency. Defaults to 0.8 323 overlay_close (boolean) : Set this to false if you want to disable click to close on overlay background. 324 325 accessible_title (string) : Accessible title. Default 'Dialog Window' 326 start_open (boolean) : Set this to true to launch the Modaal window immediately on page open 327 fullscreen (boolean) : Set this to true to make the modaal fill the entire screen, false will default to own width/height attributes. 328 custom_class (string) : Fill in this string with a custom class that will be applied to the outer most modal wrapper. 329 330 width (integer) : Desired width of the modal. Required for iframe type. Defaults to undefined //TODO 331 height (integer) : Desired height of the modal. Required for iframe type. Defaults to undefined //TODO 332 333 background_scroll (boolean) : Set this to true to enable the page to scroll behind the open modal. 334 335 should_open (boolean|function) : Boolean or closure that returns a boolean to determine whether to open the modal or not. 336 337 close_text : String for close button text. Available for localisation and alternative languages to be used. 338 close_aria_label : String for close button aria-label attribute (value that screen readers will read out). Available for localisation and alternative languages to be used. 339 340 === Events === 341 before_open (function) : Callback function executed before modal is opened 342 after_open (function) : Callback function executed after modal is opened 343 before_close (function) : Callback function executed before modal is closed 344 after_close (function) : Callback function executed after modal is closed 345 source (function(element, src)) : Callback function executed on the default source, it is intended to transform the 346 source (href in an AJAX modal or iframe). The function passes in the triggering element 347 as well as the default source depending of the modal type. The default output of the 348 function is an untransformed default source. 349 350 351 === Confirm Options & Events === 352 confirm_button_text (string) : Text on the confirm button. Defaults to 'Confirm' 353 confirm_cancel_button_text (string) : Text on the confirm modal cancel button. Defaults to 'Cancel' 354 confirm_title (string) : Title for confirm modal. Default 'Confirm Title' 355 confirm_content (string) : HTML content for confirm message 356 confirm_callback (function) : Callback function for when the confirm button is pressed as opposed to cancel 357 confirm_cancel_callback (function) : Callback function for when the cancel button is pressed 358 359 360 === Gallery Options & Events === 361 gallery_active_class (string) : Active class applied to the currently active image or image slide in a gallery 'gallery_active_item' 362 outer_controls (boolean) : Set to true to put the next/prev controls outside the Modaal wrapper, at the edges of the browser window. 363 before_image_change (function) : Callback function executed before the image slide changes in a gallery modal. Default function( current_item, incoming_item ) 364 after_image_change (function) : Callback function executed after the image slide changes in a gallery modal. Default function ( current_item ) 365 366 367 === AJAX Options & Events === 368 loading_content (string) : HTML content for loading message. Default 'Loading …' 369 loading_class (string) : Class name to be applied while content is loaded via AJAX. Default 'is_loading' 370 ajax_error_class (string) : Class name to be applied when content has failed to load. Default is 'modaal-error' 371 ajax_success (function) : Callback for when AJAX content is loaded in 372 373 374 === SOCIAL CONTENT ===
vendor: 30,344 bytes, lines 375-744
375 instagram_id (string) : Unique photo ID for an Instagram photo. 376 377*/ 378function($){ 379// Check and Set Inline Options 380// ------------------------------------------------------------ 381function modaal_inline_options(self){ 382// new empty options 383var options={},inline_options=!1; 384// option: type 385self.attr("data-modaal-type")&&(inline_options=!0,options.type=self.attr("data-modaal-type")), 386// option: type 387self.attr("data-modaal-content-source")&&(inline_options=!0,options.content_source=self.attr("data-modaal-content-source")), 388// option: animation 389self.attr("data-modaal-animation")&&(inline_options=!0,options.animation=self.attr("data-modaal-animation")), 390// option: animation_speed 391self.attr("data-modaal-animation-speed")&&(inline_options=!0,options.animation_speed=self.attr("data-modaal-animation-speed")), 392// option: after_callback_delay 393self.attr("data-modaal-after-callback-delay")&&(inline_options=!0,options.after_callback_delay=self.attr("data-modaal-after-callback-delay")), 394// option: is_locked 395self.attr("data-modaal-is-locked")&&(inline_options=!0,options.is_locked="true"===self.attr("data-modaal-is-locked")), 396// option: hide_close 397self.attr("data-modaal-hide-close")&&(inline_options=!0,options.hide_close="true"===self.attr("data-modaal-hide-close")), 398// option: background 399self.attr("data-modaal-background")&&(inline_options=!0,options.background=self.attr("data-modaal-background")), 400// option: overlay_opacity 401self.attr("data-modaal-overlay-opacity")&&(inline_options=!0,options.overlay_opacity=self.attr("data-modaal-overlay-opacity")), 402// option: overlay_close 403self.attr("data-modaal-overlay-close")&&(inline_options=!0,options.overlay_close="false"!==self.attr("data-modaal-overlay-close")), 404// option: accessible_title 405self.attr("data-modaal-accessible-title")&&(inline_options=!0,options.accessible_title=self.attr("data-modaal-accessible-title")), 406// option: start_open 407self.attr("data-modaal-start-open")&&(inline_options=!0,options.start_open="true"===self.attr("data-modaal-start-open")), 408// option: fullscreen 409self.attr("data-modaal-fullscreen")&&(inline_options=!0,options.fullscreen="true"===self.attr("data-modaal-fullscreen")), 410// option: custom_class 411self.attr("data-modaal-custom-class")&&(inline_options=!0,options.custom_class=self.attr("data-modaal-custom-class")), 412// option: close_text 413self.attr("data-modaal-close-text")&&(inline_options=!0,options.close_text=self.attr("data-modaal-close-text")), 414// option: close_aria_label 415self.attr("data-modaal-close-aria-label")&&(inline_options=!0,options.close_aria_label=self.attr("data-modaal-close-aria-label")), 416// option: background_scroll 417self.attr("data-modaal-background-scroll")&&(inline_options=!0,options.background_scroll="true"===self.attr("data-modaal-background-scroll")), 418// option: width 419self.attr("data-modaal-width")&&(inline_options=!0,options.width=parseInt(self.attr("data-modaal-width"))), 420// option: height 421self.attr("data-modaal-height")&&(inline_options=!0,options.height=parseInt(self.attr("data-modaal-height"))), 422// option: confirm_button_text 423self.attr("data-modaal-confirm-button-text")&&(inline_options=!0,options.confirm_button_text=self.attr("data-modaal-confirm-button-text")), 424// option: confirm_cancel_button_text 425self.attr("data-modaal-confirm-cancel-button-text")&&(inline_options=!0,options.confirm_cancel_button_text=self.attr("data-modaal-confirm-cancel-button-text")), 426// option: confirm_title 427self.attr("data-modaal-confirm-title")&&(inline_options=!0,options.confirm_title=self.attr("data-modaal-confirm-title")), 428// option: confirm_content 429self.attr("data-modaal-confirm-content")&&(inline_options=!0,options.confirm_content=self.attr("data-modaal-confirm-content")), 430// option: gallery_active_class 431self.attr("data-modaal-gallery-active-class")&&(inline_options=!0,options.gallery_active_class=self.attr("data-modaal-gallery-active-class")), 432// option: loading_content 433self.attr("data-modaal-loading-content")&&(inline_options=!0,options.loading_content=self.attr("data-modaal-loading-content")), 434// option: loading_class 435self.attr("data-modaal-loading-class")&&(inline_options=!0,options.loading_class=self.attr("data-modaal-loading-class")), 436// option: ajax_error_class 437self.attr("data-modaal-ajax-error-class")&&(inline_options=!0,options.ajax_error_class=self.attr("data-modaal-ajax-error-class")), 438// option: start_open 439self.attr("data-modaal-instagram-id")&&(inline_options=!0,options.instagram_id=self.attr("data-modaal-instagram-id")), 440// now set it up for the trigger, but only if inline_options is true 441inline_options&&self.modaal(options)}var Modaal={init:function(options,elem){var self=this; 442// Define next/prev buttons 443if(self.dom=$("body"),self.$elem=$(elem),self.options=$.extend({},$.fn.modaal.options,self.$elem.data(),options),self.xhr=null, 444// set up the scope 445self.scope={is_open:!1,id:"modaal_"+(new Date).getTime()+Math.random().toString(16).substring(2),source:self.options.content_source?self.options.content_source:self.$elem.attr("href")}, 446// add scope attribute to trigger element 447self.$elem.attr("data-modaal-scope",self.scope.id), 448// private options 449self.private_options={active_class:"is_active"},self.lastFocus=null, 450// if is_locked 451self.options.is_locked||"confirm"==self.options.type||self.options.hide_close?self.scope.close_btn="":self.scope.close_btn='<button type="button" class="modaal-close" id="modaal-close" aria-label="'+self.options.close_aria_label+'"><span>'+self.options.close_text+"</span></button>", 452// reset animation_speed 453"none"===self.options.animation&&(self.options.animation_speed=0,self.options.after_callback_delay=0), 454// On click to open modal 455$(elem).on("click.Modaal",function(e){e.preventDefault(),self.create_modaal(self,e)}),!0===self.options.outer_controls)var mod_class="outer";else var mod_class="inner";self.scope.prev_btn='<button type="button" class="modaal-gallery-control modaal-gallery-prev modaal-gallery-prev-'+mod_class+'" id="modaal-gallery-prev" aria-label="Previous image (use left arrow to change)"><span>Previous Image</span></button>',self.scope.next_btn='<button type="button" class="modaal-gallery-control modaal-gallery-next modaal-gallery-next-'+mod_class+'" id="modaal-gallery-next" aria-label="Next image (use right arrow to change)"><span>Next Image</span></button>', 456// Check for start_open 457!0===self.options.start_open&&self.create_modaal(self)}, 458// Initial create to determine which content type it requires 459// ---------------------------------------------------------------- 460create_modaal:function(self,e){var source,self=this;if( 461// Save last active state before modal 462self.lastFocus=self.$elem,!1!==self.options.should_open&&("function"!=typeof self.options.should_open||!1!==self.options.should_open())){switch( 463// CB: before_open 464self.options.before_open.call(self,e),self.options.type){case"inline":self.create_basic();break;case"ajax":source=self.options.source(self.$elem,self.scope.source),self.fetch_ajax(source);break;case"confirm":self.options.is_locked=!0,self.create_confirm();break;case"image":self.create_image();break;case"iframe":source=self.options.source(self.$elem,self.scope.source),self.create_iframe(source);break;case"video":self.create_video(self.scope.source);break;case"instagram":self.create_instagram()} 465// call events to be watched (click, tab, keyup, keydown etc.) 466self.watch_events()}}, 467// Watching Modal 468// ---------------------------------------------------------------- 469watch_events:function(){var self=this;self.dom.off("click.Modaal keyup.Modaal keydown.Modaal"), 470// Body keydown 471self.dom.on("keydown.Modaal",function(e){var key=e.keyCode,target=e.target; 472// look for tab change and reset focus to modal window 473// done in keydown so the check fires repeatedly when you hold the tab key down 4749==key&&self.scope.is_open&&($.contains(document.getElementById(self.scope.id),target)||$("#"+self.scope.id).find('*[tabindex="0"]').focus())}), 475// Body keyup 476self.dom.on("keyup.Modaal",function(e){var key=e.keyCode,target=e.target; 477// Watch for shift + tab key press. if open shift focus to close button. 478// is gallery open and images length is > 1 479// arrow left for back 480// arrow right for next 481return e.shiftKey&&9==e.keyCode&&self.scope.is_open&&($.contains(document.getElementById(self.scope.id),target)||$("#"+self.scope.id).find(".modaal-close").focus()),!self.options.is_locked&&27==key&&self.scope.is_open?!$(document.activeElement).is("input:not(:checkbox):not(:radio)")&&void self.modaal_close():"image"==self.options.type?(37==key&&self.scope.is_open&&!$("#"+self.scope.id+" .modaal-gallery-prev").hasClass("is_hidden")&&self.gallery_update("prev"),void(39==key&&self.scope.is_open&&!$("#"+self.scope.id+" .modaal-gallery-next").hasClass("is_hidden")&&self.gallery_update("next"))):void 0}), 482// Body click/touch 483self.dom.on("click.Modaal",function(e){var trigger=$(e.target); 484// General Controls: If it's not locked allow greedy close 485if(!self.options.is_locked&&(self.options.overlay_close&&trigger.is(".modaal-inner-wrapper")||trigger.is(".modaal-close")||trigger.closest(".modaal-close").length))return void self.modaal_close(); 486//Confirm Controls 487if(trigger.is(".modaal-confirm-btn")) 488// if 'OK' button is clicked, run confirm_callback() 489return trigger.is(".modaal-ok")&&self.options.confirm_callback.call(self,self.lastFocus),trigger.is(".modaal-cancel")&&self.options.confirm_cancel_callback.call(self,self.lastFocus),void self.modaal_close(); 490// Gallery Controls 491if(trigger.is(".modaal-gallery-control")){ 492// it not active, don't do nuthin! 493if(trigger.hasClass("is_hidden"))return; 494// trigger previous 495// trigger next 496return trigger.is(".modaal-gallery-prev")&&self.gallery_update("prev"),void(trigger.is(".modaal-gallery-next")&&self.gallery_update("next"))}})}, 497// Append markup into DOM 498build_modal:function(content){var self=this,igClass="";"instagram"==self.options.type&&(igClass=" modaal-instagram");var animation_class,wrap_class="video"==self.options.type?"modaal-video-wrap":"modaal-content";switch(self.options.animation){case"fade":animation_class=" modaal-start_fade";break;case"slide-down":animation_class=" modaal-start_slidedown";break;default:animation_class=" modaal-start_none"} 499// fullscreen check 500var fullscreen_class="";self.options.fullscreen&&(fullscreen_class=" modaal-fullscreen"), 501// custom class check 502""===self.options.custom_class&&void 0===self.options.custom_class||(self.options.custom_class=" "+self.options.custom_class); 503// if width and heights exists and is typeof number 504var dimensionsStyle="";self.options.width&&self.options.height&&"number"==typeof self.options.width&&"number"==typeof self.options.height? 505// if width and height exist, and they are both numbers 506dimensionsStyle=' style="max-width:'+self.options.width+"px;height:"+self.options.height+'px;overflow:auto;"':self.options.width&&"number"==typeof self.options.width? 507// if only width 508dimensionsStyle=' style="max-width:'+self.options.width+'px;"':self.options.height&&"number"==typeof self.options.height&&( 509// if only height 510dimensionsStyle=' style="height:'+self.options.height+'px;overflow:auto;"'), 511// Reset dimensions style (width and height) for certain types 512("image"==self.options.type||"video"==self.options.type||"instagram"==self.options.type||self.options.fullscreen)&&(dimensionsStyle=""); 513// if is touch 514// this is a bug fix for iOS to allow regular click events on div elements. 515var touchTrigger="";self.is_touch()&&(touchTrigger=' style="cursor:pointer;"');var build_markup='<div class="modaal-wrapper modaal-'+self.options.type+animation_class+igClass+fullscreen_class+self.options.custom_class+'" id="'+self.scope.id+'"><div class="modaal-outer-wrapper"><div class="modaal-inner-wrapper"'+touchTrigger+">"; 516// hide if video 517"video"!=self.options.type&&(build_markup+='<div class="modaal-container"'+dimensionsStyle+">"), 518// add the guts of the content 519build_markup+='<div class="'+wrap_class+' modaal-focus" aria-hidden="false" aria-label="'+self.options.accessible_title+" - "+self.options.close_aria_label+'" role="dialog">', 520// If it's inline type, we want to clone content instead of dropping it straight in 521"inline"==self.options.type?build_markup+='<div class="modaal-content-container" role="document"></div>': 522// Drop in the content if it's not inline 523build_markup+=content, 524// close wrap_class 525build_markup+="</div>"+self.scope.close_btn, 526// hide if video 527"video"!=self.options.type&&(build_markup+="</div>"), 528// close off modaal-inner-wrapper 529build_markup+="</div>", 530// If type is image AND outer_controls is true: add gallery next and previous controls. 531"image"==self.options.type&&!0===self.options.outer_controls&&(build_markup+=self.scope.prev_btn+self.scope.next_btn), 532// close off modaal-wrapper 533build_markup+="</div></div>", 534// append ajax modal markup to dom 535$("#"+self.scope.id+"_overlay").length<1&&self.dom.append(build_markup), 536// if inline, clone content into space 537"inline"==self.options.type&&content.appendTo("#"+self.scope.id+" .modaal-content-container"), 538// Trigger overlay show (which triggers modal show) 539self.modaal_overlay("show")}, 540// Create Basic Inline Modal 541// ---------------------------------------------------------------- 542create_basic:function(){var self=this,target=$(self.scope.source),content="";target.length?(content=target.contents().detach(),target.empty()):content="Content could not be loaded. Please check the source and try again.", 543// now push content into markup 544self.build_modal(content)}, 545// Create Instagram Modal 546// ---------------------------------------------------------------- 547create_instagram:function(){var self=this,id=self.options.instagram_id,content="",error_msg="Instagram photo couldn't be loaded, please check the embed code and try again."; 548// ID exists, is not empty null or undefined. 549if(self.build_modal('<div class="modaal-content-container'+(""!=self.options.loading_class?" "+self.options.loading_class:"")+'">'+self.options.loading_content+"</div>"),""!=id&&null!==id&&void 0!==id){ 550// set up oembed url 551var ig_url="https://api.instagram.com/oembed?url=http://instagr.am/p/"+id+"/";$.ajax({url:ig_url,dataType:"jsonp",cache:!1,success:function(data){ 552// Create temp dom element from which we'll clone into the modaal instance. This is required to bypass the unusual small thumb issue instagram oembed was serving up 553self.dom.append('<div id="temp-ig" style="width:0;height:0;overflow:hidden;">'+data.html+"</div>"), 554// Check if it has loaded once before. 555// This is to stop the Embeds.process from throwing and error the first time it's being loaded. 556// private_options are individual to a modaal_scope so will not work across multiple scopes when checking if true, only that one item. 557self.dom.attr("data-igloaded")?window.instgrm.Embeds.process(): 558// first time it's loaded, let's set a new private option to use next time it's opened. 559self.dom.attr("data-igloaded","true"); 560// now set location for new content 561// timeout is required as well to bypass the unusual small thumb issue instagram oembed was serving up 562var target="#"+self.scope.id+" .modaal-content-container";$(target).length>0&&setTimeout(function(){$("#temp-ig").contents().clone().appendTo(target),$("#temp-ig").remove()},1e3)},error:function(){content=error_msg; 563// now set location for new content 564var target=$("#"+self.scope.id+" .modaal-content-container");target.length>0&&(target.removeClass(self.options.loading_class).addClass(self.options.ajax_error_class),target.html(content))}})}else content=error_msg;return!1}, 565// Fetch Ajax Data 566// ---------------------------------------------------------------- 567fetch_ajax:function(url){var self=this; 568// If no accessible title, set it to 'Dialog Window' 569null==self.options.accessible_title&&(self.options.accessible_title="Dialog Window"),null!==self.xhr&&(self.xhr.abort(),self.xhr=null),self.build_modal('<div class="modaal-content-container'+(""!=self.options.loading_class?" "+self.options.loading_class:"")+'">'+self.options.loading_content+"</div>"),self.xhr=$.ajax(url,{success:function(data){ 570// content fetch is successful so push it into markup 571var target=$("#"+self.scope.id).find(".modaal-content-container");target.length>0&&(target.removeClass(self.options.loading_class),target.html(data),self.options.ajax_success.call(self,target))},error:function(xhr){ 572// There were some errors so return an error message 573if("abort"!=xhr.statusText){var target=$("#"+self.scope.id+" .modaal-content-container");target.length>0&&(target.removeClass(self.options.loading_class).addClass(self.options.ajax_error_class),target.html("Content could not be loaded. Please check the source and try again."))}}})}, 574// Create Confirm Modal 575// ---------------------------------------------------------------- 576create_confirm:function(){var content,self=this;content='<div class="modaal-content-container"><h1 id="modaal-title">'+self.options.confirm_title+'</h1><div class="modaal-confirm-content">'+self.options.confirm_content+'</div><div class="modaal-confirm-wrap"><button type="button" class="modaal-confirm-btn modaal-ok" aria-label="Confirm">'+self.options.confirm_button_text+'</button><button type="button" class="modaal-confirm-btn modaal-cancel" aria-label="Cancel">'+self.options.confirm_cancel_button_text+"</button></div></div></div>", 577// now push content into markup 578self.build_modal(content)}, 579// Create Image/Gallery Modal 580// ---------------------------------------------------------------- 581create_image:function(){var content,gallery_total,self=this,modaal_image_markup=""; 582// If has group attribute 583if(self.$elem.is("[data-group]")||self.$elem.is("[rel]")){ 584// find gallery groups 585var use_group=self.$elem.is("[data-group]"),gallery_group=use_group?self.$elem.attr("data-group"):self.$elem.attr("rel"),gallery_group_items=$(use_group?'[data-group="'+gallery_group+'"]':'[rel="'+gallery_group+'"]'); 586// remove any previous active attribute to any in the group 587gallery_group_items.removeAttr("data-gallery-active","is_active"), 588// add active attribute to the item clicked 589self.$elem.attr("data-gallery-active","is_active"), 590// how many in the grouping are there (-1 to connect with each function starting with 0) 591gallery_total=gallery_group_items.length-1; 592// prepare array for gallery data 593var gallery=[]; 594// start preparing markup 595modaal_image_markup='<div class="modaal-gallery-item-wrap">', 596// loop each grouping item and push it into our gallery array 597gallery_group_items.each(function(i,item){ 598// setup default content 599var img_src="",img_alt="",img_description="",img_active=!1,img_src_error=!1,data_modaal_desc=item.getAttribute("data-modaal-desc"),data_item_active=item.getAttribute("data-gallery-active"); 600// if item has inline custom source, use that instead of href. Fall back to href if available. 601$(item).attr("data-modaal-content-source")?img_src=$(item).attr("data-modaal-content-source"):$(item).attr("href")?img_src=$(item).attr("href"):$(item).attr("src")?img_src=$(item).attr("src"):(img_src="trigger requires href or data-modaal-content-source attribute",img_src_error=!0), 602// Does it have a modaal description 603""!=data_modaal_desc&&null!==data_modaal_desc&&void 0!==data_modaal_desc?(img_alt=data_modaal_desc,img_description='<div class="modaal-gallery-label"><span class="modaal-accessible-hide">Image '+(i+1)+" - </span>"+data_modaal_desc+"</div>"):img_description='<div class="modaal-gallery-label"><span class="modaal-accessible-hide">Image '+(i+1)+"</span></div>", 604// is it the active item 605data_item_active&&(img_active=!0); 606// set new object for values we want 607var gallery_item={url:img_src,alt:img_alt,rawdesc:data_modaal_desc,desc:img_description,active:img_active,src_error:img_src_error}; 608// push object into gallery array 609gallery.push(gallery_item)}); 610// now loop through all items in the gallery and build up the markup 611for(var i=0;i<gallery.length;i++){ 612// Set default active class, then check if array item active is true and update string for class 613var is_active="",aria_label=gallery[i].rawdesc?"Image: "+gallery[i].rawdesc:"Image "+i+" no description";gallery[i].active&&(is_active=" "+self.private_options.active_class); 614// if gallery item has source error, output message rather than undefined image 615var image_output=gallery[i].src_error?gallery[i].url:'<img src="'+gallery[i].url+'" alt=" " style="width:100%">'; 616// for each item build up the markup 617modaal_image_markup+='<div class="modaal-gallery-item gallery-item-'+i+is_active+'" aria-label="'+aria_label+'">'+image_output+gallery[i].desc+"</div>"} 618// Close off the markup for the gallery 619modaal_image_markup+="</div>", 620// Add next and previous buttons if outside 6211!=self.options.outer_controls&&(modaal_image_markup+=self.scope.prev_btn+self.scope.next_btn)}else{ 622// This is only a single gallery item so let's grab the necessary values 623// define the source, check if content_source option exists, and use that or fall back to href. 624var this_img_src,img_src_error=!1;self.$elem.attr("data-modaal-content-source")?this_img_src=self.$elem.attr("data-modaal-content-source"):self.$elem.attr("href")?this_img_src=self.$elem.attr("href"):self.$elem.attr("src")?this_img_src=self.$elem.attr("src"):(this_img_src="trigger requires href or data-modaal-content-source attribute",img_src_error=!0);var this_img_alt_txt="",this_img_alt="",aria_label="";self.$elem.attr("data-modaal-desc")?(aria_label=self.$elem.attr("data-modaal-desc"),this_img_alt_txt=self.$elem.attr("data-modaal-desc"),this_img_alt='<div class="modaal-gallery-label"><span class="modaal-accessible-hide">Image - </span>'+this_img_alt_txt+"</div>"):aria_label="Image with no description"; 625// if image item has source error, output message rather than undefined image 626var image_output=img_src_error?this_img_src:'<img src="'+this_img_src+'" alt=" " style="width:100%">'; 627// build up the html 628modaal_image_markup='<div class="modaal-gallery-item is_active" aria-label="'+aria_label+'">'+image_output+this_img_alt+"</div>"} 629// Update content variable 630content=modaal_image_markup, 631// now push content into markup 632self.build_modal(content), 633// setup next & prev buttons 634$(".modaal-gallery-item.is_active").is(".gallery-item-0")&&$(".modaal-gallery-prev").hide(),$(".modaal-gallery-item.is_active").is(".gallery-item-"+gallery_total)&&$(".modaal-gallery-next").hide()}, 635// Gallery Change Image 636// ---------------------------------------------------------------- 637gallery_update:function(direction){var self=this,this_gallery=$("#"+self.scope.id),this_gallery_item=this_gallery.find(".modaal-gallery-item"),this_gallery_total=this_gallery_item.length-1; 638// if single item, don't proceed 639if(0==this_gallery_total)return!1;var prev_btn=this_gallery.find(".modaal-gallery-prev"),next_btn=this_gallery.find(".modaal-gallery-next"),new_img_w=0,new_img_h=0,current_item=this_gallery.find(".modaal-gallery-item."+self.private_options.active_class),incoming_item="next"==direction?current_item.next(".modaal-gallery-item"):current_item.prev(".modaal-gallery-item"); 640// stop change if at start of end 641// stop change if at start of end 642// lock dimensions 643return self.options.before_image_change.call(self,current_item,incoming_item),("prev"!=direction||!this_gallery.find(".gallery-item-0").hasClass("is_active"))&&(("next"!=direction||!this_gallery.find(".gallery-item-"+this_gallery_total).hasClass("is_active"))&&void current_item.stop().animate({opacity:0},250,function(){ 644// Move to appropriate image 645incoming_item.addClass("is_next").css({position:"absolute",display:"block",opacity:0}); 646// Collect doc width 647var doc_width=$(document).width(),width_threshold=doc_width>1140?280:50; 648// start toggle to 'is_next' 649new_img_w=this_gallery.find(".modaal-gallery-item.is_next").width(),new_img_h=this_gallery.find(".modaal-gallery-item.is_next").height();var new_natural_w=this_gallery.find(".modaal-gallery-item.is_next img").prop("naturalWidth"),new_natural_h=this_gallery.find(".modaal-gallery-item.is_next img").prop("naturalHeight"); 650// if new image is wider than doc width 651new_natural_w>doc_width-width_threshold?( 652// set new width just below doc width 653new_img_w=doc_width-width_threshold, 654// Set temp widths so we can calulate the correct height; 655this_gallery.find(".modaal-gallery-item.is_next").css({width:new_img_w}),this_gallery.find(".modaal-gallery-item.is_next img").css({width:new_img_w}), 656// Set new height variable 657new_img_h=this_gallery.find(".modaal-gallery-item.is_next").find("img").height()):( 658// new img is not wider than screen, so let's set the new dimensions 659new_img_w=new_natural_w,new_img_h=new_natural_h), 660// resize gallery region 661this_gallery.find(".modaal-gallery-item-wrap").stop().animate({width:new_img_w,height:new_img_h},250,function(){ 662// hide old active image 663current_item.removeClass(self.private_options.active_class+" "+self.options.gallery_active_class).removeAttr("style"),current_item.find("img").removeAttr("style"), 664// show new image 665incoming_item.addClass(self.private_options.active_class+" "+self.options.gallery_active_class).removeClass("is_next").css("position",""), 666// animate in new image (now has the normal is_active class 667incoming_item.stop().animate({opacity:1},250,function(){$(this).removeAttr("style").css({width:"100%"}),$(this).find("img").css("width","100%"), 668// remove dimension lock 669this_gallery.find(".modaal-gallery-item-wrap").removeAttr("style"), 670// CB: After image change 671self.options.after_image_change.call(self,incoming_item)}), 672// Focus on the new gallery item 673this_gallery.find(".modaal-gallery-item").removeAttr("tabindex"),this_gallery.find(".modaal-gallery-item."+self.private_options.active_class).attr("tabindex","0").focus(), 674// hide/show next/prev 675this_gallery.find(".modaal-gallery-item."+self.private_options.active_class).is(".gallery-item-0")?prev_btn.stop().animate({opacity:0},150,function(){$(this).hide()}):prev_btn.stop().css({display:"block",opacity:prev_btn.css("opacity")}).animate({opacity:1},150),this_gallery.find(".modaal-gallery-item."+self.private_options.active_class).is(".gallery-item-"+this_gallery_total)?next_btn.stop().animate({opacity:0},150,function(){$(this).hide()}):next_btn.stop().css({display:"block",opacity:prev_btn.css("opacity")}).animate({opacity:1},150)})}))}, 676// Create Video Modal 677// ---------------------------------------------------------------- 678create_video:function(url){var content,self=this; 679// video markup 680content='<iframe src="'+url+'" class="modaal-video-frame" frameborder="0" allowfullscreen></iframe>', 681// now push content into markup 682self.build_modal('<div class="modaal-video-container">'+content+"</div>")}, 683// Create iFrame Modal 684// ---------------------------------------------------------------- 685create_iframe:function(url){var content,self=this; 686// video markup 687content=null!==self.options.width||void 0!==self.options.width||null!==self.options.height||void 0!==self.options.height?'<iframe src="'+url+'" class="modaal-iframe-elem" frameborder="0" allowfullscreen></iframe>':'<div class="modaal-content-container">Please specify a width and height for your iframe</div>', 688// now push content into markup 689self.build_modal(content)}, 690// Open Modaal 691// ---------------------------------------------------------------- 692modaal_open:function(){var self=this,modal_wrapper=$("#"+self.scope.id),animation_type=self.options.animation;"none"===animation_type&&(modal_wrapper.removeClass("modaal-start_none"),self.options.after_open.call(self,modal_wrapper)), 693// Open with fade 694"fade"===animation_type&&modal_wrapper.removeClass("modaal-start_fade"), 695// Open with slide down 696"slide-down"===animation_type&&modal_wrapper.removeClass("modaal-start_slide_down");var focusTarget=modal_wrapper; 697// Switch focusTarget tabindex (switch from other modal if exists) 698$(".modaal-wrapper *[tabindex=0]").removeAttr("tabindex"),focusTarget="image"==self.options.type?$("#"+self.scope.id).find(".modaal-gallery-item."+self.private_options.active_class):modal_wrapper.find(".modaal-iframe-elem").length?modal_wrapper.find(".modaal-iframe-elem"):modal_wrapper.find(".modaal-video-wrap").length?modal_wrapper.find(".modaal-video-wrap"):modal_wrapper.find(".modaal-focus"), 699// now set the focus 700focusTarget.attr("tabindex","0").focus(), 701// Run after_open 702"none"!==animation_type&& 703// CB: after_open 704setTimeout(function(){self.options.after_open.call(self,modal_wrapper)},self.options.after_callback_delay)}, 705// Close Modal 706// ---------------------------------------------------------------- 707modaal_close:function(){var self=this,modal_wrapper=$("#"+self.scope.id); 708// CB: before_close 709self.options.before_close.call(self,modal_wrapper),null!==self.xhr&&(self.xhr.abort(),self.xhr=null), 710// Now we close the modal 711"none"===self.options.animation&&modal_wrapper.addClass("modaal-start_none"), 712// Close with fade 713"fade"===self.options.animation&&modal_wrapper.addClass("modaal-start_fade"), 714// Close with slide up (using initial slide down) 715"slide-down"===self.options.animation&&modal_wrapper.addClass("modaal-start_slide_down"), 716// CB: after_close and remove 717setTimeout(function(){ 718// clone inline content back to origin place 719"inline"==self.options.type&&$("#"+self.scope.id+" .modaal-content-container").contents().detach().appendTo(self.scope.source), 720// remove markup from dom 721modal_wrapper.remove(), 722// CB: after_close 723self.options.after_close.call(self), 724// scope is now closed 725self.scope.is_open=!1},self.options.after_callback_delay), 726// Call overlay hide 727self.modaal_overlay("hide"), 728// Roll back to last focus state before modal open. If was closed programmatically, this might not be set 729null!=self.lastFocus&&self.lastFocus.focus()}, 730// Overlay control (accepts action for show or hide) 731// ---------------------------------------------------------------- 732modaal_overlay:function(action){var self=this;"show"==action?( 733// Modal is open so update scope 734self.scope.is_open=!0, 735// set body to overflow hidden if background_scroll is false 736self.options.background_scroll||self.dom.addClass("modaal-noscroll"), 737// append modaal overlay 738$("#"+self.scope.id+"_overlay").length<1&&self.dom.append('<div class="modaal-overlay" id="'+self.scope.id+'_overlay"></div>'), 739// now show 740$("#"+self.scope.id+"_overlay").css("background",self.options.background).stop().animate({opacity:self.options.overlay_opacity},self.options.animation_speed,function(){ 741// now open the modal 742self.modaal_open()})):"hide"==action&& 743// now hide the overlay 744$("#"+self.scope.id+"_overlay").stop().animate({opacity:0}
744,self.options.animation_speed,function(){ 745// remove overlay from dom 746$(this).remove(), 747// remove body overflow lock 748self.dom.removeClass("modaal-noscroll")})}, 749// Check if is touch 750// ---------------------------------------------------------------- 751is_touch:function(){return"ontouchstart"in window||navigator.maxTouchPoints}},modaal_existing_selectors=[]; 752// Declare the modaal jQuery method 753// ------------------------------------------------------------ 754$.fn.modaal=function(options){return this.each(function(i){var existing_modaal=$(this).data("modaal");if(existing_modaal){ 755// Checking for string value, used for methods 756if("string"==typeof options)switch(options){case"open": 757// create the modal 758existing_modaal.create_modaal(existing_modaal);break;case"close":existing_modaal.modaal_close()}}else{ 759// Not a string, so let's setup the modal ready to use 760var modaal=Object.create(Modaal);modaal.init(options,this),$.data(this,"modaal",modaal), 761// push this select into existing selectors array which is referenced during modaal_dom_observer 762modaal_existing_selectors.push({element:$(this).attr("class"),options:options})}})}, 763// Default options 764// ------------------------------------------------------------ 765$.fn.modaal.options={ 766//General 767type:"inline",content_source:null,animation:"fade",animation_speed:300,after_callback_delay:350,is_locked:!1,hide_close:!1,background:"#000",overlay_opacity:"0.8",overlay_close:!0,accessible_title:"Dialog Window",start_open:!1,fullscreen:!1,custom_class:"",background_scroll:!1,should_open:!0,close_text:"Close",close_aria_label:"Close (Press escape to close)",width:null,height:null, 768//Events 769before_open:function(){},after_open:function(){},before_close:function(){},after_close:function(){},source:function(element,src){return src}, 770//Confirm Modal 771confirm_button_text:"Confirm",// text on confirm button 772confirm_cancel_button_text:"Cancel",confirm_title:"Confirm Title",// title for confirm modal 773confirm_content:"<p>This is the default confirm dialog content. Replace me through the options</p>",// html for confirm message 774confirm_callback:function(){},confirm_cancel_callback:function(){}, 775//Gallery Modal 776gallery_active_class:"gallery_active_item",outer_controls:!1,before_image_change:function(current_item,incoming_item){},after_image_change:function(current_item){}, 777//Ajax Modal 778loading_content:'<div class="modaal-loading-spinner"><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div><div><div></div></div></div>',loading_class:"is_loading",ajax_error_class:"modaal-error",ajax_success:function(){}, 779//Instagram 780instagram_id:null}, 781// On body load (or now, if already loaded), init any modaals defined inline 782// Ensure this is done after $.fn.modaal and default options are declared 783// ---------------------------------------------------------------- 784$(function(){var single_modaal=$(".modaal"); 785// Check for existing modaal elements 786single_modaal.length&&single_modaal.each(function(){modaal_inline_options($(this))}); 787// Obvserve DOM mutations for newly added triggers 788var modaal_dom_observer=new MutationObserver(function(mutations){mutations.forEach(function(mutation){if(mutation.addedNodes&&mutation.addedNodes.length>0) 789// element added to DOM 790{[].some.call(mutation.addedNodes,function(el){var elm=$(el);(elm.is("a")||elm.is("button"))&&(elm.hasClass("modaal")? 791// is inline Modaal, initialise options 792modaal_inline_options(elm): 793// is not inline modaal. Check for existing selector 794modaal_existing_selectors.forEach(function(modaalSelector){if(modaalSelector.element==elm.attr("class"))return $(elm).modaal(modaalSelector.options),!1}))})}})}),observer_config={subtree:!0,attributes:!0,childList:!0,characterData:!0}; 795// pass in the target node, as well as the observer options 796setTimeout(function(){modaal_dom_observer.observe(document.body,observer_config)},500)})}(jQuery,window,document),function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?module.exports=factory():"function"==typeof define&&define.amd?define(factory):global.moment=factory()}(this,function(){"use strict";function hooks(){return hookCallback.apply(null,arguments)}function isArray(input){return input instanceof Array||"[object Array]"===Object.prototype.toString.call(input)}function isObject(input){ 797// IE8 will treat undefined and null as object if it wasn't for 798// input != null 799return null!=input&&"[object Object]"===Object.prototype.toString.call(input)}function isObjectEmpty(obj){var k;for(k in obj) 800// even if its not own property I'd still call it non-empty 801return!1;return!0}function isUndefined(input){return void 0===input}function isNumber(input){return"number"==typeof input||"[object Number]"===Object.prototype.toString.call(input)}function isDate(input){return input instanceof Date||"[object Date]"===Object.prototype.toString.call(input)}function map(arr,fn){var i,res=[];for(i=0;i<arr.length;++i)res.push(fn(arr[i],i));return res}function hasOwnProp(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function extend(a,b){for(var i in b)hasOwnProp(b,i)&&(a[i]=b[i]);return hasOwnProp(b,"toString")&&(a.toString=b.toString),hasOwnProp(b,"valueOf")&&(a.valueOf=b.valueOf),a}function createUTC(input,format,locale,strict){return createLocalOrUTC(in
vendor: 20,532 bytes, lines 801-873
801put,format,locale,strict,!0).utc()}function defaultParsingFlags(){ 802// We need to deep clone this object. 803return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function getParsingFlags(m){return null==m._pf&&(m._pf=defaultParsingFlags()),m._pf}function isValid(m){if(null==m._isValid){var flags=getParsingFlags(m),parsedParts=some$1.call(flags.parsedDateParts,function(i){return null!=i}),isNowValid=!isNaN(m._d.getTime())&&flags.overflow<0&&!flags.empty&&!flags.invalidMonth&&!flags.invalidWeekday&&!flags.nullInput&&!flags.invalidFormat&&!flags.userInvalidated&&(!flags.meridiem||flags.meridiem&&parsedParts);if(m._strict&&(isNowValid=isNowValid&&0===flags.charsLeftOver&&0===flags.unusedTokens.length&&void 0===flags.bigHour),null!=Object.isFrozen&&Object.isFrozen(m))return isNowValid;m._isValid=isNowValid}return m._isValid}function createInvalid(flags){var m=createUTC(NaN);return null!=flags?extend(getParsingFlags(m),flags):getParsingFlags(m).userInvalidated=!0,m}function copyConfig(to,from){var i,prop,val;if(isUndefined(from._isAMomentObject)||(to._isAMomentObject=from._isAMomentObject),isUndefined(from._i)||(to._i=from._i),isUndefined(from._f)||(to._f=from._f),isUndefined(from._l)||(to._l=from._l),isUndefined(from._strict)||(to._strict=from._strict),isUndefined(from._tzm)||(to._tzm=from._tzm),isUndefined(from._isUTC)||(to._isUTC=from._isUTC),isUndefined(from._offset)||(to._offset=from._offset),isUndefined(from._pf)||(to._pf=getParsingFlags(from)),isUndefined(from._locale)||(to._locale=from._locale),momentProperties.length>0)for(i=0;i<momentProperties.length;i++)prop=momentProperties[i],val=from[prop],isUndefined(val)||(to[prop]=val);return to} 804// Moment prototype object 805function Moment(config){copyConfig(this,config),this._d=new Date(null!=config._d?config._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)), 806// Prevent infinite loop in case updateOffset creates new moment 807// objects. 808!1===updateInProgress&&(updateInProgress=!0,hooks.updateOffset(this),updateInProgress=!1)}function isMoment(obj){return obj instanceof Moment||null!=obj&&null!=obj._isAMomentObject}function absFloor(number){return number<0?Math.ceil(number)||0:Math.floor(number)}function toInt(argumentForCoercion){var coercedNumber=+argumentForCoercion,value=0;return 0!==coercedNumber&&isFinite(coercedNumber)&&(value=absFloor(coercedNumber)),value} 809// compare two arrays, return the number of differences 810function compareArrays(array1,array2,dontConvert){var i,len=Math.min(array1.length,array2.length),lengthDiff=Math.abs(array1.length-array2.length),diffs=0;for(i=0;i<len;i++)(dontConvert&&array1[i]!==array2[i]||!dontConvert&&toInt(array1[i])!==toInt(array2[i]))&&diffs++;return diffs+lengthDiff}function warn(msg){!1===hooks.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+msg)}function deprecate(msg,fn){var firstTime=!0;return extend(function(){if(null!=hooks.deprecationHandler&&hooks.deprecationHandler(null,msg),firstTime){for(var arg,args=[],i=0;i<arguments.length;i++){if(arg="","object"==typeof arguments[i]){arg+="\n["+i+"] ";for(var key in arguments[0])arg+=key+": "+arguments[0][key]+", ";arg=arg.slice(0,-2)}else arg=arguments[i];args.push(arg)}warn(msg+"\nArguments: "+Array.prototype.slice.call(args).join("")+"\n"+(new Error).stack),firstTime=!1}return fn.apply(this,arguments)},fn)}function deprecateSimple(name,msg){null!=hooks.deprecationHandler&&hooks.deprecationHandler(name,msg),deprecations[name]||(warn(msg),deprecations[name]=!0)}function isFunction(input){return input instanceof Function||"[object Function]"===Object.prototype.toString.call(input)}function set(config){var prop,i;for(i in config)prop=config[i],isFunction(prop)?this[i]=prop:this["_"+i]=prop;this._config=config, 811// Lenient ordinal parsing accepts just a number in addition to 812// number + (possibly) stuff coming from _dayOfMonthOrdinalParse. 813// TODO: Remove "ordinalParse" fallback in next major release. 814this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function mergeConfigs(parentConfig,childConfig){var prop,res=extend({},parentConfig);for(prop in childConfig)hasOwnProp(childConfig,prop)&&(isObject(parentConfig[prop])&&isObject(childConfig[prop])?(res[prop]={},extend(res[prop],parentConfig[prop]),extend(res[prop],childConfig[prop])):null!=childConfig[prop]?res[prop]=childConfig[prop]:delete res[prop]);for(prop in parentConfig)hasOwnProp(parentConfig,prop)&&!hasOwnProp(childConfig,prop)&&isObject(parentConfig[prop])&&( 815// make sure changes to properties don't modify parent config 816res[prop]=extend({},res[prop]));return res}function Locale(config){null!=config&&this.set(config)}function calendar(key,mom,now){var output=this._calendar[key]||this._calendar.sameElse;return isFunction(output)?output.call(mom,now):output}function longDateFormat(key){var format=this._longDateFormat[key],formatUpper=this._longDateFormat[key.toUpperCase()];return format||!formatUpper?format:(this._longDateFormat[key]=formatUpper.replace(/MMMM|MM|DD|dddd/g,function(val){return val.slice(1)}),this._longDateFormat[key])}function invalidDate(){return this._invalidDate}function ordinal(number){return this._ordinal.replace("%d",number)}function relativeTime(number,withoutSuffix,string,isFuture){var output=this._relativeTime[string];return isFunction(output)?output(number,withoutSuffix,string,isFuture):output.replace(/%d/i,number)}function pastFuture(diff,output){var format=this._relativeTime[diff>0?"future":"past"];return isFunction(format)?format(output):format.replace(/%s/i,output)}function addUnitAlias(unit,shorthand){var lowerCase=unit.toLowerCase();aliases[lowerCase]=aliases[lowerCase+"s"]=aliases[shorthand]=unit}function normalizeUnits(units){return"string"==typeof units?aliases[units]||aliases[units.toLowerCase()]:void 0}function normalizeObjectUnits(inputObject){var normalizedProp,prop,normalizedInput={};for(prop in inputObject)hasOwnProp(inputObject,prop)&&(normalizedProp=normalizeUnits(prop))&&(normalizedInput[normalizedProp]=inputObject[prop]);return normalizedInput}function addUnitPriority(unit,priority){priorities[unit]=priority}function getPrioritizedUnits(unitsObj){var units=[];for(var u in unitsObj)units.push({unit:u,priority:priorities[u]});return units.sort(function(a,b){return a.priority-b.priority}),units}function makeGetSet(unit,keepTime){return function(value){return null!=value?(set$1(this,unit,value),hooks.updateOffset(this,keepTime),this):get(this,unit)}}function get(mom,unit){return mom.isValid()?mom._d["get"+(mom._isUTC?"UTC":"")+unit]():NaN}function set$1(mom,unit,value){mom.isValid()&&mom._d["set"+(mom._isUTC?"UTC":"")+unit](value)} 817// MOMENTS 818function stringGet(units){return units=normalizeUnits(units),isFunction(this[units])?this[units]():this}function stringSet(units,value){if("object"==typeof units){units=normalizeObjectUnits(units);for(var prioritized=getPrioritizedUnits(units),i=0;i<prioritized.length;i++)this[prioritized[i].unit](units[prioritized[i].unit])}else if(units=normalizeUnits(units),isFunction(this[units]))return this[units](value);return this}function zeroFill(number,targetLength,forceSign){var absNumber=""+Math.abs(number),zerosToFill=targetLength-absNumber.length;return(number>=0?forceSign?"+":"":"-")+Math.pow(10,Math.max(0,zerosToFill)).toString().substr(1)+absNumber} 819// token: 'M' 820// padded: ['MM', 2] 821// ordinal: 'Mo' 822// callback: function () { this.month() + 1 } 823function addFormatToken(token,padded,ordinal,callback){var func=callback;"string"==typeof callback&&(func=function(){return this[callback]()}),token&&(formatTokenFunctions[token]=func),padded&&(formatTokenFunctions[padded[0]]=function(){return zeroFill(func.apply(this,arguments),padded[1],padded[2])}),ordinal&&(formatTokenFunctions[ordinal]=function(){return this.localeData().ordinal(func.apply(this,arguments),token)})}function removeFormattingTokens(input){return input.match(/\[[\s\S]/)?input.replace(/^\[|\]$/g,""):input.replace(/\\/g,"")}function makeFormatFunction(format){var i,length,array=format.match(formattingTokens);for(i=0,length=array.length;i<length;i++)formatTokenFunctions[array[i]]?array[i]=formatTokenFunctions[array[i]]:array[i]=removeFormattingTokens(array[i]);return function(mom){var i,output="";for(i=0;i<length;i++)output+=isFunction(array[i])?array[i].call(mom,format):array[i];return output}} 824// format date using native date object 825function formatMoment(m,format){return m.isValid()?(format=expandFormat(format,m.localeData()),formatFunctions[format]=formatFunctions[format]||makeFormatFunction(format),formatFunctions[format](m)):m.localeData().invalidDate()}function expandFormat(format,locale){function replaceLongDateFormatTokens(input){return locale.longDateFormat(input)||input}var i=5;for(localFormattingTokens.lastIndex=0;i>=0&&localFormattingTokens.test(format);)format=format.replace(localFormattingTokens,replaceLongDateFormatTokens),localFormattingTokens.lastIndex=0,i-=1;return format}function addRegexToken(token,regex,strictRegex){regexes[token]=isFunction(regex)?regex:function(isStrict,localeData){return isStrict&&strictRegex?strictRegex:regex}}function getParseRegexForToken(token,config){return hasOwnProp(regexes,token)?regexes[token](config._strict,config._locale):new RegExp(unescapeFormat(token))} 826// Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript 827function unescapeFormat(s){return regexEscape(s.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(matched,p1,p2,p3,p4){return p1||p2||p3||p4}))}function regexEscape(s){return s.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function addParseToken(token,callback){var i,func=callback;for("string"==typeof token&&(token=[token]),isNumber(callback)&&(func=function(input,array){array[callback]=toInt(input)}),i=0;i<token.length;i++)tokens[token[i]]=func}function addWeekParseToken(token,callback){addParseToken(token,function(input,array,config,token){config._w=config._w||{},callback(input,config._w,config,token)})}function addTimeToArrayFromToken(token,input,config){null!=input&&hasOwnProp(tokens,token)&&tokens[token](input,config._a,config,token)}function daysInMonth(year,month){return new Date(Date.UTC(year,month+1,0)).getUTCDate()}function localeMonths(m,format){return m?isArray(this._months)?this._months[m.month()]:this._months[(this._months.isFormat||MONTHS_IN_FORMAT).test(format)?"format":"standalone"][m.month()]:isArray(this._months)?this._months:this._months.standalone}function localeMonthsShort(m,format){return m?isArray(this._monthsShort)?this._monthsShort[m.month()]:this._monthsShort[MONTHS_IN_FORMAT.test(format)?"format":"standalone"][m.month()]:isArray(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function handleStrictParse(monthName,format,strict){var i,ii,mom,llc=monthName.toLocaleLowerCase();if(!this._monthsParse)for( 828// this is not used 829this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],i=0;i<12;++i)mom=createUTC([2e3,i]),this._shortMonthsParse[i]=this.monthsShort(mom,"").toLocaleLowerCase(),this._longMonthsParse[i]=this.months(mom,"").toLocaleLowerCase();return strict?"MMM"===format?(ii=indexOf$1.call(this._shortMonthsParse,llc),-1!==ii?ii:null):(ii=indexOf$1.call(this._longMonthsParse,llc),-1!==ii?ii:null):"MMM"===format?-1!==(ii=indexOf$1.call(this._shortMonthsParse,llc))?ii:(ii=indexOf$1.call(this._longMonthsParse,llc),-1!==ii?ii:null):-1!==(ii=indexOf$1.call(this._longMonthsParse,llc))?ii:(ii=indexOf$1.call(this._shortMonthsParse,llc),-1!==ii?ii:null)}function localeMonthsParse(monthName,format,strict){var i,mom,regex;if(this._monthsParseExact)return handleStrictParse.call(this,monthName,format,strict); 830// TODO: add sorting 831// Sorting makes sure if one month (or abbr) is a prefix of another 832// see sorting in computeMonthsParse 833for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),i=0;i<12;i++){ 834// test the regex 835if( 836// make the regex if we don't have it already 837mom=createUTC([2e3,i]),strict&&!this._longMonthsParse[i]&&(this._longMonthsParse[i]=new RegExp("^"+this.months(mom,"").replace(".","")+"$","i"),this._shortMonthsParse[i]=new RegExp("^"+this.monthsShort(mom,"").replace(".","")+"$","i")),strict||this._monthsParse[i]||(regex="^"+this.months(mom,"")+"|^"+this.monthsShort(mom,""),this._monthsParse[i]=new RegExp(regex.replace(".",""),"i")),strict&&"MMMM"===format&&this._longMonthsParse[i].test(monthName))return i;if(strict&&"MMM"===format&&this._shortMonthsParse[i].test(monthName))return i;if(!strict&&this._monthsParse[i].test(monthName))return i}} 838// MOMENTS 839function setMonth(mom,value){var dayOfMonth;if(!mom.isValid()) 840// No op 841return mom;if("string"==typeof value)if(/^\d+$/.test(value))value=toInt(value);else 842// TODO: Another silent failure? 843if(value=mom.localeData().monthsParse(value),!isNumber(value))return mom;return dayOfMonth=Math.min(mom.date(),daysInMonth(mom.year(),value)),mom._d["set"+(mom._isUTC?"UTC":"")+"Month"](value,dayOfMonth),mom}function getSetMonth(value){return null!=value?(setMonth(this,value),hooks.updateOffset(this,!0),this):get(this,"Month")}function getDaysInMonth(){return daysInMonth(this.year(),this.month())}function monthsShortRegex(isStrict){return this._monthsParseExact?(hasOwnProp(this,"_monthsRegex")||computeMonthsParse.call(this),isStrict?this._monthsShortStrictRegex:this._monthsShortRegex):(hasOwnProp(this,"_monthsShortRegex")||(this._monthsShortRegex=defaultMonthsShortRegex),this._monthsShortStrictRegex&&isStrict?this._monthsShortStrictRegex:this._monthsShortRegex)}function monthsRegex(isStrict){return this._monthsParseExact?(hasOwnProp(this,"_monthsRegex")||computeMonthsParse.call(this),isStrict?this._monthsStrictRegex:this._monthsRegex):(hasOwnProp(this,"_monthsRegex")||(this._monthsRegex=defaultMonthsRegex),this._monthsStrictRegex&&isStrict?this._monthsStrictRegex:this._monthsRegex)}function computeMonthsParse(){function cmpLenRev(a,b){return b.length-a.length}var i,mom,shortPieces=[],longPieces=[],mixedPieces=[];for(i=0;i<12;i++) 844// make the regex if we don't have it already 845mom=createUTC([2e3,i]),shortPieces.push(this.monthsShort(mom,"")),longPieces.push(this.months(mom,"")),mixedPieces.push(this.months(mom,"")),mixedPieces.push(this.monthsShort(mom,""));for( 846// Sorting makes sure if one month (or abbr) is a prefix of another it 847// will match the longer piece. 848shortPieces.sort(cmpLenRev),longPieces.sort(cmpLenRev),mixedPieces.sort(cmpLenRev),i=0;i<12;i++)shortPieces[i]=regexEscape(shortPieces[i]),longPieces[i]=regexEscape(longPieces[i]);for(i=0;i<24;i++)mixedPieces[i]=regexEscape(mixedPieces[i]);this._monthsRegex=new RegExp("^("+mixedPieces.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+longPieces.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+shortPieces.join("|")+")","i")} 849// HELPERS 850function daysInYear(year){return isLeapYear(year)?366:365}function isLeapYear(year){return year%4==0&&year%100!=0||year%400==0}function getIsLeapYear(){return isLeapYear(this.year())}function createDate(y,m,d,h,M,s,ms){ 851// can't just apply() to create a date: 852// https://stackoverflow.com/q/181348 853var date=new Date(y,m,d,h,M,s,ms); 854// the date constructor remaps years 0-99 to 1900-1999 855return y<100&&y>=0&&isFinite(date.getFullYear())&&date.setFullYear(y),date}function createUTCDate(y){var date=new Date(Date.UTC.apply(null,arguments)); 856// the Date.UTC function remaps years 0-99 to 1900-1999 857return y<100&&y>=0&&isFinite(date.getUTCFullYear())&&date.setUTCFullYear(y),date} 858// start-of-first-week - start-of-year 859function firstWeekOffset(year,dow,doy){var// first-week day -- which january is always in the first week (4 for iso, 1 for other) 860fwd=7+dow-doy;return-(7+createUTCDate(year,0,fwd).getUTCDay()-dow)%7+fwd-1} 861// https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday 862function dayOfYearFromWeeks(year,week,weekday,dow,doy){var resYear,resDayOfYear,localWeekday=(7+weekday-dow)%7,weekOffset=firstWeekOffset(year,dow,doy),dayOfYear=1+7*(week-1)+localWeekday+weekOffset;return dayOfYear<=0?(resYear=year-1,resDayOfYear=daysInYear(resYear)+dayOfYear):dayOfYear>daysInYear(year)?(resYear=year+1,resDayOfYear=dayOfYear-daysInYear(year)):(resYear=year,resDayOfYear=dayOfYear),{year:resYear,dayOfYear:resDayOfYear}}function weekOfYear(mom,dow,doy){var resWeek,resYear,weekOffset=firstWeekOffset(mom.year(),dow,doy),week=Math.floor((mom.dayOfYear()-weekOffset-1)/7)+1;return week<1?(resYear=mom.year()-1,resWeek=week+weeksInYear(resYear,dow,doy)):week>weeksInYear(mom.year(),dow,doy)?(resWeek=week-weeksInYear(mom.year(),dow,doy),resYear=mom.year()+1):(resYear=mom.year(),resWeek=week),{week:resWeek,year:resYear}}function weeksInYear(year,dow,doy){var weekOffset=firstWeekOffset(year,dow,doy),weekOffsetNext=firstWeekOffset(year+1,dow,doy);return(daysInYear(year)-weekOffset+weekOffsetNext)/7} 863// HELPERS 864// LOCALES 865function localeWeek(mom){return weekOfYear(mom,this._week.dow,this._week.doy).week}function localeFirstDayOfWeek(){return this._week.dow}function localeFirstDayOfYear(){return this._week.doy} 866// MOMENTS 867function getSetWeek(input){var week=this.localeData().week(this);return null==input?week:this.add(7*(input-week),"d")}function getSetISOWeek(input){var week=weekOfYear(this,1,4).week;return null==input?week:this.add(7*(input-week),"d")} 868// HELPERS 869function parseWeekday(input,locale){return"string"!=typeof input?input:isNaN(input)?(input=locale.weekdaysParse(input),"number"==typeof input?input:null):parseInt(input,10)}function parseIsoWeekday(input,locale){return"string"==typeof input?locale.weekdaysParse(input)%7||7:isNaN(input)?null:input}function localeWeekdays(m,format){return m?isArray(this._weekdays)?this._weekdays[m.day()]:this._weekdays[this._weekdays.isFormat.test(format)?"format":"standalone"][m.day()]:isArray(this._weekdays)?this._weekdays:this._weekdays.standalone}function localeWeekdaysShort(m){return m?this._weekdaysShort[m.day()]:this._weekdaysShort}function localeWeekdaysMin(m){return m?this._weekdaysMin[m.day()]:this._weekdaysMin}function handleStrictParse$1(weekdayName,format,strict){var i,ii,mom,llc=weekdayName.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],i=0;i<7;++i)mom=createUTC([2e3,1]).day(i),this._minWeekdaysParse[i]=this.weekdaysMin(mom,"").toLocaleLowerCase(),this._shortWeekdaysParse[i]=this.weekdaysShort(mom,"").toLocaleLowerCase(),this._weekdaysParse[i]=this.weekdays(mom,"").toLocaleLowerCase();return strict?"dddd"===format?(ii=indexOf$1.call(this._weekdaysParse,llc),-1!==ii?ii:null):"ddd"===format?(ii=indexOf$1.call(this._shortWeekdaysParse,llc),-1!==ii?ii:null):(ii=indexOf$1.call(this._minWeekdaysParse,llc),-1!==ii?ii:null):"dddd"===format?-1!==(ii=indexOf$1.call(this._weekdaysParse,llc))?ii:-1!==(ii=indexOf$1.call(this._shortWeekdaysParse,llc))?ii:(ii=indexOf$1.call(this._minWeekdaysParse,llc),-1!==ii?ii:null):"ddd"===format?-1!==(ii=indexOf$1.call(this._shortWeekdaysParse,llc))?ii:-1!==(ii=indexOf$1.call(this._weekdaysParse,llc))?ii:(ii=indexOf$1.call(this._minWeekdaysParse,llc),-1!==ii?ii:null):-1!==(ii=indexOf$1.call(this._minWeekdaysParse,llc))?ii:-1!==(ii=indexOf$1.call(this._weekdaysParse,llc))?ii:(ii=indexOf$1.call(this._shortWeekdaysParse,llc),-1!==ii?ii:null)}function localeWeekdaysParse(weekdayName,format,strict){var i,mom,regex;if(this._weekdaysParseExact)return handleStrictParse$1.call(this,weekdayName,format,strict);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),i=0;i<7;i++){ 870// test the regex 871if( 872// make the regex if we don't have it already 873mom=createUTC([2e3,1]).day(i),strict&&!this._fullWeekdaysParse[i]&&(this._fullWeekdaysParse[i]=new RegExp("^"+this.weekdays(mom,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[i]=new RegExp("^"+this.weekdaysShort(mom,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[i]=new RegExp("^"+this.weekdaysMin(mom,"").replace(".",".?")+"$","i")),this._weekdaysParse[i]||(regex="^"+this.weekdays(mom,"")+"|^"+this.weekdaysShort(mom,"")+"|^"+this.weekdaysMin(mom,""),this._weekdaysParse[i]=new RegExp(regex.replace(".",""),"i")),str
vendor: 4,320 bytes, lines 873-895
873ict&&"dddd"===format&&this._fullWeekdaysParse[i].test(weekdayName))return i;if(strict&&"ddd"===format&&this._shortWeekdaysParse[i].test(weekdayName))return i;if(strict&&"dd"===format&&this._minWeekdaysParse[i].test(weekdayName))return i;if(!strict&&this._weekdaysParse[i].test(weekdayName))return i}} 874// MOMENTS 875function getSetDayOfWeek(input){if(!this.isValid())return null!=input?this:NaN;var day=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=input?(input=parseWeekday(input,this.localeData()),this.add(input-day,"d")):day}function getSetLocaleDayOfWeek(input){if(!this.isValid())return null!=input?this:NaN;var weekday=(this.day()+7-this.localeData()._week.dow)%7;return null==input?weekday:this.add(input-weekday,"d")}function getSetISODayOfWeek(input){if(!this.isValid())return null!=input?this:NaN; 876// behaves the same as moment#day except 877// as a getter, returns 7 instead of 0 (1-7 range instead of 0-6) 878// as a setter, sunday should belong to the previous week. 879if(null!=input){var weekday=parseIsoWeekday(input,this.localeData());return this.day(this.day()%7?weekday:weekday-7)}return this.day()||7}function weekdaysRegex(isStrict){return this._weekdaysParseExact?(hasOwnProp(this,"_weekdaysRegex")||computeWeekdaysParse.call(this),isStrict?this._weekdaysStrictRegex:this._weekdaysRegex):(hasOwnProp(this,"_weekdaysRegex")||(this._weekdaysRegex=defaultWeekdaysRegex),this._weekdaysStrictRegex&&isStrict?this._weekdaysStrictRegex:this._weekdaysRegex)}function weekdaysShortRegex(isStrict){return this._weekdaysParseExact?(hasOwnProp(this,"_weekdaysRegex")||computeWeekdaysParse.call(this),isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(hasOwnProp(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=defaultWeekdaysShortRegex),this._weekdaysShortStrictRegex&&isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function weekdaysMinRegex(isStrict){return this._weekdaysParseExact?(hasOwnProp(this,"_weekdaysRegex")||computeWeekdaysParse.call(this),isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(hasOwnProp(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=defaultWeekdaysMinRegex),this._weekdaysMinStrictRegex&&isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function computeWeekdaysParse(){function cmpLenRev(a,b){return b.length-a.length}var i,mom,minp,shortp,longp,minPieces=[],shortPieces=[],longPieces=[],mixedPieces=[];for(i=0;i<7;i++) 880// make the regex if we don't have it already 881mom=createUTC([2e3,1]).day(i),minp=this.weekdaysMin(mom,""),shortp=this.weekdaysShort(mom,""),longp=this.weekdays(mom,""),minPieces.push(minp),shortPieces.push(shortp),longPieces.push(longp),mixedPieces.push(minp),mixedPieces.push(shortp),mixedPieces.push(longp);for( 882// Sorting makes sure if one weekday (or abbr) is a prefix of another it 883// will match the longer piece. 884minPieces.sort(cmpLenRev),shortPieces.sort(cmpLenRev),longPieces.sort(cmpLenRev),mixedPieces.sort(cmpLenRev),i=0;i<7;i++)shortPieces[i]=regexEscape(shortPieces[i]),longPieces[i]=regexEscape(longPieces[i]),mixedPieces[i]=regexEscape(mixedPieces[i]);this._weekdaysRegex=new RegExp("^("+mixedPieces.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+longPieces.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+shortPieces.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+minPieces.join("|")+")","i")} 885// FORMATTING 886function hFormat(){return this.hours()%12||12}function kFormat(){return this.hours()||24}function meridiem(token,lowercase){addFormatToken(token,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),lowercase)})} 887// PARSING 888function matchMeridiem(isStrict,locale){return locale._meridiemParse} 889// LOCALES 890function localeIsPM(input){ 891// IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays 892// Using charAt should be more compatible. 893return"p"===(input+"").toLowerCase().charAt(0)}function localeMeridiem(hours,minutes,isLower){return hours>11?isLower?"pm":"PM":isLower?"am":"AM"}function normalizeLocale(key){return key?key.toLowerCase().replace("_","-"):key} 894// pick the locale from the array 895// try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list tr
895ying each 896// substring from most specific to least, but move to the next array item if it's a more specific variant than the current root 897function chooseLocale(names){for(var j,next,locale,split,i=0;i<names.length;){for(split=normalizeLocale(names[i]).split("-"),j=split.length,next=normalizeLocale(names[i+1]),next=next?next.split("-"):null;j>0;){if(locale=loadLocale(split.slice(0,j).join("-")))return locale;if(next&&next.length>=j&&compareArrays(split,next,!0)>=j-1) 898//the next array item is better than a shallower substring of this one 899break;j--}i++}return null}function loadLocale(name){var oldLocale=null; 900// TODO: Find a better way to register and load all the locales in Node 901if(!locales[name]&&"undefined"!=typeof module&&module&&module.exports)try{oldLocale=globalLocale._abbr,require("./locale/"+name), 902// because defineLocale currently also sets the global locale, we 903// want to undo that for lazy loaded locales 904getSetGlobalLocale(oldLocale)}catch(e){}return locales[name]} 905// This function will load locale and then set the global locale. If 906// no arguments are passed in, it will simply return the current global 907// locale key. 908function getSetGlobalLocale(key,values){var data; 909// moment.duration._locale = moment._locale = data; 910return key&&(data=isUndefined(values)?getLocale(key):defineLocale(key,values))&&(globalLocale=data),globalLocale._abbr}function defineLocale(name,config){if(null!==config){var parentConfig=baseConfig;if(config.abbr=name,null!=locales[name])deprecateSimple("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),parentConfig=locales[name]._config;else if(null!=config.parentLocale){if(null==locales[config.parentLocale])return localeFamilies[config.parentLocale]||(localeFamilies[config.parentLocale]=[]),localeFamilies[config.parentLocale].push({name:name,config:config}),null;parentConfig=locales[config.parentLocale]._config} 911// backwards compat for now: also set the locale 912// make sure we set the locale AFTER all child locales have been 913// created, so we won't end up with the child locale set. 914return locales[name]=new Locale(mergeConfigs(parentConfig,config)),localeFamilies[name]&&localeFamilies[name].forEach(function(x){defineLocale(x.name,x.config)}),getSetGlobalLocale(name),locales[name]} 915// useful for testing 916return delete locales[name],null}function updateLocale(name,config){if(null!=config){var locale,parentConfig=baseConfig; 917// MERGE 918null!=locales[name]&&(parentConfig=locales[name]._config),config=mergeConfigs(parentConfig,config),locale=new Locale(config),locale.parentLocale=locales[name],locales[name]=locale, 919// backwards compat for now: also set the locale 920getSetGlobalLocale(name)}else 921// pass null for config to unupdate, useful for tests 922null!=locales[name]&&(null!=locales[name].parentLocale?locales[name]=locales[name].parentLocale:null!=locales[name]&&delete locales[name]);return locales[name]} 923// returns locale data 924function getLocale(key){var locale;if(key&&key._locale&&key._locale._abbr&&(key=key._locale._abbr),!key)return globalLocale;if(!isArray(key)){if( 925//short-circuit everything else 926locale=loadLocale(key))return locale;key=[key]}return chooseLocale(key)}function listLocales(){return keys$1(locales)}function checkOverflow(m){var overflow,a=m._a;return a&&-2===getParsingFlags(m).overflow&&(overflow=a[MONTH]<0||a[MONTH]>11?MONTH:a[DATE]<1||a[DATE]>daysInMonth(a[YEAR],a[MONTH])?DATE:a[HOUR]<0||a[HOUR]>24||24===a[HOUR]&&(0!==a[MINUTE]||0!==a[SECOND]||0!==a[MILLISECOND])?HOUR:a[MINUTE]<0||a[MINUTE]>59?MINUTE:a[SECOND]<0||a[SECOND]>59?SECOND:a[MILLISECOND]<0||a[MILLISECOND]>999?MILLISECOND:-1,getParsingFlags(m)._overflowDayOfYear&&(overflow<YEAR||overflow>DATE)&&(overflow=DATE),getParsingFlags(m)._overflowWeeks&&-1===overflow&&(overflow=WEEK),getParsingFlags(m)._overflowWeekday&&-1===overflow&&(overflow=WEEKDAY),getParsingFlags(m).overflow=overflow),m} 927// date from iso format 928function configFromISO(config){var i,l,allowTime,dateFormat,timeFormat,tzFormat,string=config._i,match=extendedIsoRegex.exec(string)||basicIsoRegex.exec(string);if(match){for(getParsingFlags(config).iso=!0,i=0,l=isoDates.length;i<l;i++)if(isoDates[i][1].exec(match[1])){dateFormat=isoDates[i][0],allowTime=!1!==isoDates[i][2];break}if(null==dateFormat)return void(config._isValid=!1);if(match[3]){for(i=0,l=isoTimes.length;i<l;i++)if(isoTimes[i][1].exec(match[3])){ 929// match[2] should be 'T' or space 930timeFormat=(match[2]||" ")+isoTimes[i][0];break}if(null==timeFormat)return void(config._isValid=!1)}if(!allowTime&&null!=timeFormat)return void(config._isValid=!1);if(match[4]){if(!tzRegex.exec(match[4]))return void(config._isValid=!1);tzFormat="Z"}config._f=dateFormat+(timeFormat||"")+(tzFormat||""),configFromStringAndFormat(config)}
930else config._isValid=!1} 931// date and time from ref 2822 format 932function configFromRFC2822(config){var string,match,dayFormat,dateFormat,timeFormat,tzFormat,timezone,timezoneIndex,timezones={" GMT":" +0000"," EDT":" -0400"," EST":" -0500"," CDT":" -0500"," CST":" -0600"," MDT":" -0600"," MST":" -0700"," PDT":" -0700"," PST":" -0800"},military="YXWVUTSRQPONZABCDEFGHIKLM";if(string=config._i.replace(/\([^\)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s|\s$/g,""),// Remove leading and trailing spaces 933match=basicRfcRegex.exec(string)){ 934// TODO: Replace the vanilla JS Date object with an indepentent day-of-week check. 935if(dayFormat=match[1]?"ddd"+(5===match[1].length?", ":" "):"",dateFormat="D MMM "+(match[2].length>10?"YYYY ":"YY "),timeFormat="HH:mm"+(match[4]?":ss":""),match[1]){// day of week given 936var momentDate=new Date(match[2]),momentDay=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][momentDate.getDay()];if(match[1].substr(0,3)!==momentDay)return getParsingFlags(config).weekdayMismatch=!0,void(config._isValid=!1)}switch(match[5].length){case 2:// military 9370===timezoneIndex?timezone=" +0000":(timezoneIndex=military.indexOf(match[5][1].toUpperCase())-12,timezone=(timezoneIndex<0?" -":" +")+(""+timezoneIndex).replace(/^-?/,"0").match(/..$/)[0]+"00");break;case 4:// Zone 938timezone=timezones[match[5]];break;default:// UT or +/-9999 939timezone=timezones[" GMT"]}match[5]=timezone,config._i=match.splice(1).join(""),tzFormat=" ZZ",config._f=dayFormat+dateFormat+timeFormat+tzFormat,configFromStringAndFormat(config),getParsingFlags(config).rfc2822=!0}else config._isValid=!1} 940// date from iso format or fallback 941function configFromString(config){var matched=aspNetJsonRegex.exec(config._i);if(null!==matched)return void(config._d=new Date(+matched[1]));configFromISO(config),!1===config._isValid&&(delete config._isValid,configFromRFC2822(config),!1===config._isValid&&(delete config._isValid, 942// Final attempt, use Input Fallback 943hooks.createFromInputFallback(config)))} 944// Pick the first defined of two or three arguments. 945function defaults(a,b,c){return null!=a?a:null!=b?b:c}function currentDateArray(config){ 946// hooks is actually the exported moment object 947var nowValue=new Date(hooks.now());return config._useUTC?[nowValue.getUTCFullYear(),nowValue.getUTCMonth(),nowValue.getUTCDate()]:[nowValue.getFullYear(),nowValue.getMonth(),nowValue.getDate()]} 948// convert an array to a date. 949// the array should mirror the parameters below 950// note: all values past the year are optional and will default to the lowest possible value. 951// [year, month, day , hour, minute, second, millisecond] 952function configFromArray(config){var i,date,currentDate,yearToUse,input=[];if(!config._d){ 953// Default to current date. 954// * if no year, month, day of month are given, default to today 955// * if day of month is given, default month and year 956// * if month is given, default only year 957// * if year is given, don't default anything 958for(currentDate=currentDateArray(config), 959//compute day of the year from weeks and weekdays 960config._w&&null==config._a[DATE]&&null==config._a[MONTH]&&dayOfYearFromWeekInfo(config), 961//if the day of the year is set, figure out what it is 962null!=config._dayOfYear&&(yearToUse=defaults(config._a[YEAR],currentDate[YEAR]),(config._dayOfYear>daysInYear(yearToUse)||0===config._dayOfYear)&&(getParsingFlags(config)._overflowDayOfYear=!0),date=createUTCDate(yearToUse,0,config._dayOfYear),config._a[MONTH]=date.getUTCMonth(),config._a[DATE]=date.getUTCDate()),i=0;i<3&&null==config._a[i];++i)config._a[i]=input[i]=currentDate[i]; 963// Zero out whatever was not defaulted, including time 964for(;i<7;i++)config._a[i]=input[i]=null==config._a[i]?2===i?1:0:config._a[i]; 965// Check for 24:00:00.000 96624===config._a[HOUR]&&0===config._a[MINUTE]&&0===config._a[SECOND]&&0===config._a[MILLISECOND]&&(config._nextDay=!0,config._a[HOUR]=0),config._d=(config._useUTC?createUTCDate:createDate).apply(null,input), 967// Apply timezone offset from input. The actual utcOffset can be changed 968// with parseZone. 969null!=config._tzm&&config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm),config._nextDay&&(config._a[HOUR]=24)}}function dayOfYearFromWeekInfo(config){var w,weekYear,week,weekday,dow,doy,temp,weekdayOverflow;
vendor: 14,353 bytes, lines 969-1063
969if(w=config._w,null!=w.GG||null!=w.W||null!=w.E)dow=1,doy=4, 970// TODO: We need to take the current isoWeekYear, but that depends on 971// how we interpret now (local, utc, fixed offset). So create 972// a now version of current config (take local/utc/offset flags, and 973// create now). 974weekYear=defaults(w.GG,config._a[YEAR],weekOfYear(createLocal(),1,4).year),week=defaults(w.W,1),((weekday=defaults(w.E,1))<1||weekday>7)&&(weekdayOverflow=!0);else{dow=config._locale._week.dow,doy=config._locale._week.doy;var curWeek=weekOfYear(createLocal(),dow,doy);weekYear=defaults(w.gg,config._a[YEAR],curWeek.year), 975// Default to current week. 976week=defaults(w.w,curWeek.week),null!=w.d?(( 977// weekday -- low day numbers are considered next week 978weekday=w.d)<0||weekday>6)&&(weekdayOverflow=!0):null!=w.e?( 979// local weekday -- counting starts from begining of week 980weekday=w.e+dow,(w.e<0||w.e>6)&&(weekdayOverflow=!0)): 981// default to begining of week 982weekday=dow}week<1||week>weeksInYear(weekYear,dow,doy)?getParsingFlags(config)._overflowWeeks=!0:null!=weekdayOverflow?getParsingFlags(config)._overflowWeekday=!0:(temp=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),config._a[YEAR]=temp.year,config._dayOfYear=temp.dayOfYear)} 983// date from string and format string 984function configFromStringAndFormat(config){ 985// TODO: Move this to another part of the creation flow to prevent circular deps 986if(config._f===hooks.ISO_8601)return void configFromISO(config);if(config._f===hooks.RFC_2822)return void configFromRFC2822(config);config._a=[],getParsingFlags(config).empty=!0; 987// This array is used to make a Date, either with `new Date` or `Date.UTC` 988var i,parsedInput,tokens,token,skipped,string=""+config._i,stringLength=string.length,totalParsedInputLength=0;for(tokens=expandFormat(config._f,config._locale).match(formattingTokens)||[],i=0;i<tokens.length;i++)token=tokens[i],parsedInput=(string.match(getParseRegexForToken(token,config))||[])[0], 989// console.log('token', token, 'parsedInput', parsedInput, 990// 'regex', getParseRegexForToken(token, config)); 991parsedInput&&(skipped=string.substr(0,string.indexOf(parsedInput)),skipped.length>0&&getParsingFlags(config).unusedInput.push(skipped),string=string.slice(string.indexOf(parsedInput)+parsedInput.length),totalParsedInputLength+=parsedInput.length), 992// don't parse if it's not a known token 993formatTokenFunctions[token]?(parsedInput?getParsingFlags(config).empty=!1:getParsingFlags(config).unusedTokens.push(token),addTimeToArrayFromToken(token,parsedInput,config)):config._strict&&!parsedInput&&getParsingFlags(config).unusedTokens.push(token); 994// add remaining unparsed input length to the string 995getParsingFlags(config).charsLeftOver=stringLength-totalParsedInputLength,string.length>0&&getParsingFlags(config).unusedInput.push(string), 996// clear _12h flag if hour is <= 12 997config._a[HOUR]<=12&&!0===getParsingFlags(config).bigHour&&config._a[HOUR]>0&&(getParsingFlags(config).bigHour=void 0),getParsingFlags(config).parsedDateParts=config._a.slice(0),getParsingFlags(config).meridiem=config._meridiem, 998// handle meridiem 999config._a[HOUR]=meridiemFixWrap(config._locale,config._a[HOUR],config._meridiem),configFromArray(config),checkOverflow(config)}function meridiemFixWrap(locale,hour,meridiem){var isPm; 1000// Fallback 1001return null==meridiem?hour:null!=locale.meridiemHour?locale.meridiemHour(hour,meridiem):null!=locale.isPM?(isPm=locale.isPM(meridiem),isPm&&hour<12&&(hour+=12),isPm||12!==hour||(hour=0),hour):hour} 1002// date from string and array of format strings 1003function configFromStringAndArray(config){var tempConfig,bestMoment,scoreToBeat,i,currentScore;if(0===config._f.length)return getParsingFlags(config).invalidFormat=!0,void(config._d=new Date(NaN));for(i=0;i<config._f.length;i++)currentScore=0,tempConfig=copyConfig({},config),null!=config._useUTC&&(tempConfig._useUTC=config._useUTC),tempConfig._f=config._f[i],configFromStringAndFormat(tempConfig),isValid(tempConfig)&&( 1004// if there is any input that was not parsed add a penalty for that format 1005currentScore+=getParsingFlags(tempConfig).charsLeftOver, 1006//or tokens 1007currentScore+=10*getParsingFlags(tempConfig).unusedTokens.length,getParsingFlags(tempConfig).score=currentScore,(null==scoreToBeat||currentScore<scoreToBeat)&&(scoreToBeat=currentScore,bestMoment=tempConfig));extend(config,bestMoment||tempConfig)}function configFromObject(config){if(!config._d){var i=normalizeObjectUnits(config._i);config._a=map([i.year,i.month,i.day||i.date,i.hour,i.minute,i.second,i.millisecond],function(obj){return obj&&parseInt(obj,10)}),configFromArray(config)}}function createFromConfig(config){var res=new Moment(checkOverflow(prepareConfig(config))); 1008// Adding is smart enough around DST 1009return res._nextDay&&(res.add(1,"d"),res._nextDay=void 0),res}function prepareConfig(config){var input=config._i,format=config._f;return config._locale=config._locale||getLocale(config._l),null===input||void 0===format&&""===input?createInvalid({nullInput:!0}):("string"==typeof input&&(config._i=input=config._locale.preparse(input)),isMoment(input)?new Moment(checkOverflow(input)):(isDate(input)?config._d=input:isArray(format)?configFromStringAndArray(config):format?configFromStringAndFormat(config):configFromInput(config),isValid(config)||(config._d=null),config))}function configFromInput(config){var input=config._i;isUndefined(input)?config._d=new Date(hooks.now()):isDate(input)?config._d=new Date(input.valueOf()):"string"==typeof input?configFromString(config):isArray(input)?(config._a=map(input.slice(0),function(obj){return parseInt(obj,10)}),configFromArray(config)):isObject(input)?configFromObject(config):isNumber(input)? 1010// from milliseconds 1011config._d=new Date(input):hooks.createFromInputFallback(config)}function createLocalOrUTC(input,format,locale,strict,isUTC){var c={}; 1012// object construction must be done this way. 1013// https://github.com/moment/moment/issues/1423 1014return!0!==locale&&!1!==locale||(strict=locale,locale=void 0),(isObject(input)&&isObjectEmpty(input)||isArray(input)&&0===input.length)&&(input=void 0),c._isAMomentObject=!0,c._useUTC=c._isUTC=isUTC,c._l=locale,c._i=input,c._f=format,c._strict=strict,createFromConfig(c)}function createLocal(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,!1)} 1015// Pick a moment m from moments so that m[fn](other) is true for all 1016// other. This relies on the function fn to be transitive. 1017// 1018// moments should either be an array of moment objects or an array, whose 1019// first element is an array of moment objects. 1020function pickBy(fn,moments){var res,i;if(1===moments.length&&isArray(moments[0])&&(moments=moments[0]),!moments.length)return createLocal();for(res=moments[0],i=1;i<moments.length;++i)moments[i].isValid()&&!moments[i][fn](res)||(res=moments[i]);return res} 1021// TODO: Use [].sort instead? 1022function min(){return pickBy("isBefore",[].slice.call(arguments,0))}function max(){return pickBy("isAfter",[].slice.call(arguments,0))}function isDurationValid(m){for(var key in m)if(-1===ordering.indexOf(key)||null!=m[key]&&isNaN(m[key]))return!1;for(var unitHasDecimal=!1,i=0;i<ordering.length;++i)if(m[ordering[i]]){if(unitHasDecimal)return!1;parseFloat(m[ordering[i]])!==toInt(m[ordering[i]])&&(unitHasDecimal=!0)}return!0}function isValid$1(){return this._isValid}function createInvalid$1(){return createDuration(NaN)}function Duration(duration){var normalizedInput=normalizeObjectUnits(duration),years=normalizedInput.year||0,quarters=normalizedInput.quarter||0,months=normalizedInput.month||0,weeks=normalizedInput.week||0,days=normalizedInput.day||0,hours=normalizedInput.hour||0,minutes=normalizedInput.minute||0,seconds=normalizedInput.second||0,milliseconds=normalizedInput.millisecond||0;this._isValid=isDurationValid(normalizedInput), 1023// representation for dateAddRemove 1024this._milliseconds=+milliseconds+1e3*seconds+// 1000 10256e4*minutes+// 1000 * 60 10261e3*hours*60*60,//using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978 1027// Because of dateAddRemove treats 24 hours as different from a 1028// day when working around DST, we need to store them separately 1029this._days=+days+7*weeks, 1030// It is impossible translate months into days without knowing 1031// which months you are are talking about, so we have to store 1032// it separately. 1033this._months=+months+3*quarters+12*years,this._data={},this._locale=getLocale(),this._bubble()}function isDuration(obj){return obj instanceof Duration}function absRound(number){return number<0?-1*Math.round(-1*number):Math.round(number)} 1034// FORMATTING 1035function offset(token,separator){addFormatToken(token,0,0,function(){var offset=this.utcOffset(),sign="+";return offset<0&&(offset=-offset,sign="-"),sign+zeroFill(~~(offset/60),2)+separator+zeroFill(~~offset%60,2)})}function offsetFromString(matcher,string){var matches=(string||"").match(matcher);if(null===matches)return null;var chunk=matches[matches.length-1]||[],parts=(chunk+"").match(chunkOffset)||["-",0,0],minutes=60*parts[1]+toInt(parts[2]);return 0===minutes?0:"+"===parts[0]?minutes:-minutes} 1036// Return a moment from input, that is local/utc/zone equivalent to model. 1037function cloneWithOffset(input,model){var res,diff; 1038// Use low-level api, because this fn is low-level api. 1039return model._isUTC?(res=model.clone(),diff=(isMoment(input)||isDate(input)?input.valueOf():createLocal(input).valueOf())-res.valueOf(),res._d.setTime(res._d.valueOf()+diff),hooks.updateOffset(res,!1),res):createLocal(input).local()}function getDateOffset(m){ 1040// On Firefox.24 Date#getTimezoneOffset returns a floating point. 1041// https://github.com/moment/moment/pull/1871 1042return 15*-Math.round(m._d.getTimezoneOffset()/15)} 1043// MOMENTS 1044// keepLocalTime = true means only change the timezone, without 1045// affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> 1046// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset 1047// +0200, so we adjust the time as needed, to be valid. 1048// 1049// Keeping the time actually adds/subtracts (one hour) 1050// from the actual represented time. That is why we call updateOffset 1051// a second time. In case it wants us to change the offset again 1052// _changeInProgress == true case, then we have to adjust, because 1053// there is no such time in the given timezone. 1054function getSetOffset(input,keepLocalTime,keepMinutes){var localAdjust,offset=this._offset||0;if(!this.isValid())return null!=input?this:NaN;if(null!=input){if("string"==typeof input){if(null===(input=offsetFromString(matchShortOffset,input)))return this}else Math.abs(input)<16&&!keepMinutes&&(input*=60);return!this._isUTC&&keepLocalTime&&(localAdjust=getDateOffset(this)),this._offset=input,this._isUTC=!0,null!=localAdjust&&this.add(localAdjust,"m"),offset!==input&&(!keepLocalTime||this._changeInProgress?addSubtract(this,createDuration(input-offset,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,hooks.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?offset:getDateOffset(this)}function getSetZone(input,keepLocalTime){return null!=input?("string"!=typeof input&&(input=-input),this.utcOffset(input,keepLocalTime),this):-this.utcOffset()}function setOffsetToUTC(keepLocalTime){return this.utcOffset(0,keepLocalTime)}function setOffsetToLocal(keepLocalTime){return this._isUTC&&(this.utcOffset(0,keepLocalTime),this._isUTC=!1,keepLocalTime&&this.subtract(getDateOffset(this),"m")),this}function setOffsetToParsedOffset(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var tZone=offsetFromString(matchOffset,this._i);null!=tZone?this.utcOffset(tZone):this.utcOffset(0,!0)}return this}function hasAlignedHourOffset(input){return!!this.isValid()&&(input=input?createLocal(input).utcOffset():0,(this.utcOffset()-input)%60==0)}function isDaylightSavingTime(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function isDaylightSavingTimeShifted(){if(!isUndefined(this._isDSTShifted))return this._isDSTShifted;var c={};if(copyConfig(c,this),c=prepareConfig(c),c._a){var other=c._isUTC?createUTC(c._a):createLocal(c._a);this._isDSTShifted=this.isValid()&&compareArrays(c._a,other.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function isLocal(){return!!this.isValid()&&!this._isUTC}function isUtcOffset(){return!!this.isValid()&&this._isUTC}function isUtc(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function createDuration(input,key){var sign,ret,diffRes,duration=input, 1055// matching against regexp is expensive, do it on demand 1056match=null;// checks for null or undefined 1057return isDuration(input)?duration={ms:input._milliseconds,d:input._days,M:input._months}:isNumber(input)?(duration={},key?duration[key]=input:duration.milliseconds=input):(match=aspNetRegex.exec(input))?(sign="-"===match[1]?-1:1,duration={y:0,d:toInt(match[DATE])*sign,h:toInt(match[HOUR])*sign,m:toInt(match[MINUTE])*sign,s:toInt(match[SECOND])*sign,ms:toInt(absRound(1e3*match[MILLISECOND]))*sign}):(match=isoRegex.exec(input))?(sign="-"===match[1]?-1:1,duration={y:parseIso(match[2],sign),M:parseIso(match[3],sign),w:parseIso(match[4],sign),d:parseIso(match[5],sign),h:parseIso(match[6],sign),m:parseIso(match[7],sign),s:parseIso(match[8],sign)}):null==duration?duration={}:"object"==typeof duration&&("from"in duration||"to"in duration)&&(diffRes=momentsDifference(createLocal(duration.from),createLocal(duration.to)),duration={},duration.ms=diffRes.milliseconds,duration.M=diffRes.months),ret=new Duration(duration),isDuration(input)&&hasOwnProp(input,"_locale")&&(ret._locale=input._locale),ret}function parseIso(inp,sign){ 1058// We'd normally use ~~inp for this, but unfortunately it also 1059// converts floats to ints. 1060// inp may be undefined, so careful calling replace on it. 1061var res=inp&&parseFloat(inp.replace(",",".")); 1062// apply sign while we're at it 1063return(isNaN(res)?0:res)*sign}function positiveMomentsDifference(base,other){var res={milliseconds:0,months:0};return res.months=other.month()-base.month()+12*(other.year()-base.year()),base.clone().add(res.months,"M").isAfter(other)&&--res.months,res.milliseconds=+other-+base.clone().add(res.months,"M"),res}function momentsDifference(base,other){var res;return base.isValid()&&other.isValid()?(other=cloneWithOffset(other,base),base.isBefore(other)?res=positiveMomentsDifference(base,other):(res=p
vendor: 4,293 bytes, lines 1063-1082
1063ositiveMomentsDifference(other,base),res.milliseconds=-res.milliseconds,res.months=-res.months),res):{milliseconds:0,months:0}} 1064// TODO: remove 'name' arg after deprecation is removed 1065function createAdder(direction,name){return function(val,period){var dur,tmp; 1066//invert the arguments, but complain about it 1067return null===period||isNaN(+period)||(deprecateSimple(name,"moment()."+name+"(period, number) is deprecated. Please use moment()."+name+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),tmp=val,val=period,period=tmp),val="string"==typeof val?+val:val,dur=createDuration(val,period),addSubtract(this,dur,direction),this}}function addSubtract(mom,duration,isAdding,updateOffset){var milliseconds=duration._milliseconds,days=absRound(duration._days),months=absRound(duration._months);mom.isValid()&&(updateOffset=null==updateOffset||updateOffset,milliseconds&&mom._d.setTime(mom._d.valueOf()+milliseconds*isAdding),days&&set$1(mom,"Date",get(mom,"Date")+days*isAdding),months&&setMonth(mom,get(mom,"Month")+months*isAdding),updateOffset&&hooks.updateOffset(mom,days||months))}function getCalendarFormat(myMoment,now){var diff=myMoment.diff(now,"days",!0);return diff<-6?"sameElse":diff<-1?"lastWeek":diff<0?"lastDay":diff<1?"sameDay":diff<2?"nextDay":diff<7?"nextWeek":"sameElse"}function calendar$1(time,formats){ 1068// We want to compare the start of today, vs this. 1069// Getting start-of-today depends on whether we're local/utc/offset or not. 1070var now=time||createLocal(),sod=cloneWithOffset(now,this).startOf("day"),format=hooks.calendarFormat(this,sod)||"sameElse",output=formats&&(isFunction(formats[format])?formats[format].call(this,now):formats[format]);return this.format(output||this.localeData().calendar(format,this,createLocal(now)))}function clone(){return new Moment(this)}function isAfter(input,units){var localInput=isMoment(input)?input:createLocal(input);return!(!this.isValid()||!localInput.isValid())&&(units=normalizeUnits(isUndefined(units)?"millisecond":units),"millisecond"===units?this.valueOf()>localInput.valueOf():localInput.valueOf()<this.clone().startOf(units).valueOf())}function isBefore(input,units){var localInput=isMoment(input)?input:createLocal(input);return!(!this.isValid()||!localInput.isValid())&&(units=normalizeUnits(isUndefined(units)?"millisecond":units),"millisecond"===units?this.valueOf()<localInput.valueOf():this.clone().endOf(units).valueOf()<localInput.valueOf())}function isBetween(from,to,units,inclusivity){return inclusivity=inclusivity||"()",("("===inclusivity[0]?this.isAfter(from,units):!this.isBefore(from,units))&&(")"===inclusivity[1]?this.isBefore(to,units):!this.isAfter(to,units))}function isSame(input,units){var inputMs,localInput=isMoment(input)?input:createLocal(input);return!(!this.isValid()||!localInput.isValid())&&(units=normalizeUnits(units||"millisecond"),"millisecond"===units?this.valueOf()===localInput.valueOf():(inputMs=localInput.valueOf(),this.clone().startOf(units).valueOf()<=inputMs&&inputMs<=this.clone().endOf(units).valueOf()))}function isSameOrAfter(input,units){return this.isSame(input,units)||this.isAfter(input,units)}function isSameOrBefore(input,units){return this.isSame(input,units)||this.isBefore(input,units)}function diff(input,units,asFloat){var that,zoneDelta,delta,output;// 1000 1071// 1000 * 60 1072// 1000 * 60 * 60 1073// 1000 * 60 * 60 * 24, negate dst 1074// 1000 * 60 * 60 * 24 * 7, negate dst 1075return this.isValid()?(that=cloneWithOffset(input,this),that.isValid()?(zoneDelta=6e4*(that.utcOffset()-this.utcOffset()),units=normalizeUnits(units),"year"===units||"month"===units||"quarter"===units?(output=monthDiff(this,that),"quarter"===units?output/=3:"year"===units&&(output/=12)):(delta=this-that,output="second"===units?delta/1e3:"minute"===units?delta/6e4:"hour"===units?delta/36e5:"day"===units?(delta-zoneDelta)/864e5:"week"===units?(delta-zoneDelta)/6048e5:delta),asFloat?output:absFloor(output)):NaN):NaN}function monthDiff(a,b){ 1076// difference in months 1077var anchor2,adjust,wholeMonthDiff=12*(b.year()-a.year())+(b.month()-a.month()), 1078// b is in (anchor - 1 month, anchor + 1 month) 1079anchor=a.clone().add(wholeMonthDiff,"months"); 1080//check for negative zero, return zero if negative zero 1081// linear across the month 1082// linear across the month
1083return b-anchor<0?(anchor2=a.clone().add(wholeMonthDiff-1,"months"),adjust=(b-anchor)/(anchor-anchor2)):(anchor2=a.clone().add(wholeMonthDiff+1,"months"),adjust=(b-anchor)/(anchor2-anchor)),-(wholeMonthDiff+adjust)||0}function toString(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function toISOString(){if(!this.isValid())return null;var m=this.clone().utc();return m.year()<0||m.year()>9999?formatMoment(m,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):isFunction(Date.prototype.toISOString)?this.toDate().toISOString():formatMoment(m,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")}/** 1084 * Return a human readable representation of a moment that can 1085 * also be evaluated to get a new moment which is the same 1086 * 1087 * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects 1088 */ 1089function inspect(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var func="moment",zone="";this.isLocal()||(func=0===this.utcOffset()?"moment.utc":"moment.parseZone",zone="Z");var prefix="["+func+'("]',year=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",suffix=zone+'[")]';return this.format(prefix+year+"-MM-DD[T]HH:mm:ss.SSS"+suffix)}function format(inputString){inputString||(inputString=this.isUtc()?hooks.defaultFormatUtc:hooks.defaultFormat);var output=formatMoment(this,inputString);return this.localeData().postformat(output)}function from(time,withoutSuffix){return this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())?createDuration({to:this,from:time}).locale(this.locale()).humanize(!withoutSuffix):this.localeData().invalidDate()}function fromNow(withoutSuffix){return this.from(createLocal(),withoutSuffix)}function to(time,withoutSuffix){return this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())?createDuration({from:this,to:time}).locale(this.locale()).humanize(!withoutSuffix):this.localeData().invalidDate()}function toNow(withoutSuffix){return this.to(createLocal(),withoutSuffix)} 1090// If passed a locale key, it will set the locale for this 1091// instance. Otherwise, it will return the locale configuration 1092// variables for this instance. 1093function locale(key){var newLocaleData;return void 0===key?this._locale._abbr:(newLocaleData=getLocale(key),null!=newLocaleData&&(this._locale=newLocaleData),this)}function localeData(){return this._locale}function startOf(units){ 1094// the following switch intentionally omits break keywords 1095// to utilize falling through the cases. 1096switch(units=normalizeUnits(units)){case"year":this.month(0);/* falls through */ 1097case"quarter":case"month":this.date(1);/* falls through */ 1098case"week":case"isoWeek":case"day":case"date":this.hours(0);/* falls through */ 1099case"hour":this.minutes(0);/* falls through */ 1100case"minute":this.seconds(0);/* falls through */ 1101case"second":this.milliseconds(0)} 1102// weeks are a special case 1103// quarters are also special 1104return"week"===units&&this.weekday(0),"isoWeek"===units&&this.isoWeekday(1),"quarter"===units&&this.month(3*Math.floor(this.month()/3)),this}function endOf(units){ 1105// 'date' is an alias for 'day', so it should be considered as such. 1106return void 0===(units=normalizeUnits(units))||"millisecond"===units?this:("date"===units&&(units="day"),this.startOf(units).add(1,"isoWeek"===units?"week":units).subtract(1,"ms"))}function valueOf(){return this._d.valueOf()-6e4*(this._offset||0)}function unix(){return Math.floor(this.valueOf()/1e3)}function toDate(){return new Date(this.valueOf())}function toArray(){var m=this;return[m.year(),m.month(),m.date(),m.hour(),m.minute(),m.second(),m.millisecond()]}function toObject(){var m=this;return{years:m.year(),months:m.month(),date:m.date(),hours:m.hours(),minutes:m.minutes(),seconds:m.seconds(),milliseconds:m.milliseconds()}}function toJSON(){ 1107// new Date(NaN).toJSON() === null 1108return this.isValid()?this.toISOString():null}function isValid$2(){return isValid(this)}function parsingFlags(){return extend({},getParsingFlags(this))}
vendor: 5,786 bytes, lines 1108-1142
1108function invalidAt(){return getParsingFlags(this).overflow}function creationData(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function addWeekYearFormatToken(token,getter){addFormatToken(0,[token,token.length],0,getter)} 1109// MOMENTS 1110function getSetWeekYear(input){return getSetWeekYearHelper.call(this,input,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function getSetISOWeekYear(input){return getSetWeekYearHelper.call(this,input,this.isoWeek(),this.isoWeekday(),1,4)}function getISOWeeksInYear(){return weeksInYear(this.year(),1,4)}function getWeeksInYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.year(),weekInfo.dow,weekInfo.doy)}function getSetWeekYearHelper(input,week,weekday,dow,doy){var weeksTarget;return null==input?weekOfYear(this,dow,doy).year:(weeksTarget=weeksInYear(input,dow,doy),week>weeksTarget&&(week=weeksTarget),setWeekAll.call(this,input,week,weekday,dow,doy))}function setWeekAll(weekYear,week,weekday,dow,doy){var dayOfYearData=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),date=createUTCDate(dayOfYearData.year,0,dayOfYearData.dayOfYear);return this.year(date.getUTCFullYear()),this.month(date.getUTCMonth()),this.date(date.getUTCDate()),this} 1111// MOMENTS 1112function getSetQuarter(input){return null==input?Math.ceil((this.month()+1)/3):this.month(3*(input-1)+this.month()%3)} 1113// HELPERS 1114// MOMENTS 1115function getSetDayOfYear(input){var dayOfYear=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==input?dayOfYear:this.add(input-dayOfYear,"d")}function parseMs(input,array){array[MILLISECOND]=toInt(1e3*("0."+input))} 1116// MOMENTS 1117function getZoneAbbr(){return this._isUTC?"UTC":""}function getZoneName(){return this._isUTC?"Coordinated Universal Time":""}function createUnix(input){return createLocal(1e3*input)}function createInZone(){return createLocal.apply(null,arguments).parseZone()}function preParsePostFormat(string){return string}function get$1(format,index,field,setter){var locale=getLocale(),utc=createUTC().set(setter,index);return locale[field](utc,format)}function listMonthsImpl(format,index,field){if(isNumber(format)&&(index=format,format=void 0),format=format||"",null!=index)return get$1(format,index,field,"month");var i,out=[];for(i=0;i<12;i++)out[i]=get$1(format,i,field,"month");return out} 1118// () 1119// (5) 1120// (fmt, 5) 1121// (fmt) 1122// (true) 1123// (true, 5) 1124// (true, fmt, 5) 1125// (true, fmt) 1126function listWeekdaysImpl(localeSorted,format,index,field){"boolean"==typeof localeSorted?(isNumber(format)&&(index=format,format=void 0),format=format||""):(format=localeSorted,index=format,localeSorted=!1,isNumber(format)&&(index=format,format=void 0),format=format||"");var locale=getLocale(),shift=localeSorted?locale._week.dow:0;if(null!=index)return get$1(format,(index+shift)%7,field,"day");var i,out=[];for(i=0;i<7;i++)out[i]=get$1(format,(i+shift)%7,field,"day");return out}function listMonths(format,index){return listMonthsImpl(format,index,"months")}function listMonthsShort(format,index){return listMonthsImpl(format,index,"monthsShort")}function listWeekdays(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,"weekdays")}function listWeekdaysShort(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,"weekdaysShort")}function listWeekdaysMin(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,"weekdaysMin")}function abs(){var data=this._data;return this._milliseconds=mathAbs(this._milliseconds),this._days=mathAbs(this._days),this._months=mathAbs(this._months),data.milliseconds=mathAbs(data.milliseconds),data.seconds=mathAbs(data.seconds),data.minutes=mathAbs(data.minutes),data.hours=mathAbs(data.hours),data.months=mathAbs(data.months),data.years=mathAbs(data.years),this}function addSubtract$1(duration,input,value,direction){var other=createDuration(input,value);return duration._milliseconds+=direction*other._milliseconds,duration._days+=direction*other._days,duration._months+=direction*other._months,duration._bubble()} 1127// supports only 2.0-style add(1, 's') or add(duration) 1128function add$1(input,value){return addSubtract$1(this,input,value,1)} 1129// supports only 2.0-style subtract(1, 's') or subtract(duration) 1130function subtract$1(input,value){return addSubtract$1(this,input,value,-1)}function absCeil(number){return number<0?Math.floor(number):Math.ceil(number)}function bubble(){var seconds,minutes,hours,years,monthsFromDays,milliseconds=this._milliseconds,days=this._days,months=this._months,data=this._data; 1131// if we have a mix of positive and negative values, bubble down first 1132// check: https://github.com/moment/moment/issues/2166 1133// The following code bubbles up values, see the tests for 1134// examples of what that means. 1135// convert days to months 1136// 12 months -> 1 year 1137return milliseconds>=0&&days>=0&&months>=0||milliseconds<=0&&days<=0&&months<=0||(milliseconds+=864e5*absCeil(monthsToDays(months)+days),days=0,months=0),data.milliseconds=milliseconds%1e3,seconds=absFloor(milliseconds/1e3),data.seconds=seconds%60,minutes=absFloor(seconds/60),data.minutes=minutes%60,hours=absFloor(minutes/60),data.hours=hours%24,days+=absFloor(hours/24),monthsFromDays=absFloor(daysToMonths(days)),months+=monthsFromDays,days-=absCeil(monthsToDays(monthsFromDays)),years=absFloor(months/12),months%=12,data.days=days,data.months=months,data.years=years,this}function daysToMonths(days){ 1138// 400 years have 146097 days (taking into account leap year rules) 1139// 400 years have 12 months === 4800 1140return 4800*days/146097}function monthsToDays(months){ 1141// the reverse of daysToMonths 1142return 146097*months/4800}function as(units){if(!this.isValid())return NaN;var days,months,milliseconds=this._milliseconds;
1142if("month"===(units=normalizeUnits(units))||"year"===units)return days=this._days+milliseconds/864e5,months=this._months+daysToMonths(days),"month"===units?months:months/12;switch( 1143// handle milliseconds separately because of floating point math errors (issue #1867) 1144days=this._days+Math.round(monthsToDays(this._months)),units){case"week":return days/7+milliseconds/6048e5;case"day":return days+milliseconds/864e5;case"hour":return 24*days+milliseconds/36e5;case"minute":return 1440*days+milliseconds/6e4;case"second":return 86400*days+milliseconds/1e3; 1145// Math.floor prevents floating point math errors here 1146case"millisecond":return Math.floor(864e5*days)+milliseconds;default:throw new Error("Unknown unit "+units)}} 1147// TODO: Use this.as('ms')? 1148function valueOf$1(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*toInt(this._months/12):NaN}function makeAs(alias){return function(){return this.as(alias)}}function get$2(units){return units=normalizeUnits(units),this.isValid()?this[units+"s"]():NaN}function makeGetter(name){return function(){return this.isValid()?this._data[name]:NaN}}function weeks(){return absFloor(this.days()/7)} 1149// helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize 1150function substituteTimeAgo(string,number,withoutSuffix,isFuture,locale){return locale.relativeTime(number||1,!!withoutSuffix,string,isFuture)}function relativeTime$1(posNegDuration,withoutSuffix,locale){var duration=createDuration(posNegDuration).abs(),seconds=round(duration.as("s")),minutes=round(duration.as("m")),hours=round(duration.as("h")),days=round(duration.as("d")),months=round(duration.as("M")),years=round(duration.as("y")),a=seconds<=thresholds.ss&&["s",seconds]||seconds<thresholds.s&&["ss",seconds]||minutes<=1&&["m"]||minutes<thresholds.m&&["mm",minutes]||hours<=1&&["h"]||hours<thresholds.h&&["hh",hours]||days<=1&&["d"]||days<thresholds.d&&["dd",days]||months<=1&&["M"]||months<thresholds.M&&["MM",months]||years<=1&&["y"]||["yy",years];return a[2]=withoutSuffix,a[3]=+posNegDuration>0,a[4]=locale,substituteTimeAgo.apply(null,a)} 1151// This function allows you to set the rounding function for relative time strings 1152function getSetRelativeTimeRounding(roundingFunction){return void 0===roundingFunction?round:"function"==typeof roundingFunction&&(round=roundingFunction,!0)} 1153// This function allows you to set a threshold for relative time strings 1154function getSetRelativeTimeThreshold(threshold,limit){return void 0!==thresholds[threshold]&&(void 0===limit?thresholds[threshold]:(thresholds[threshold]=limit,"s"===threshold&&(thresholds.ss=limit-1),!0))}function humanize(withSuffix){if(!this.isValid())return this.localeData().invalidDate();var locale=this.localeData(),output=relativeTime$1(this,!withSuffix,locale);return withSuffix&&(output=locale.pastFuture(+this,output)),locale.postformat(output)}function toISOString$1(){ 1155// for ISO strings we do not use the normal bubbling rules: 1156// * milliseconds bubble up until they become hours 1157// * days do not bubble at all 1158// * months bubble up until they become years 1159// This is because there is no context-free conversion between hours and days 1160// (think of clock changes) 1161// and also not between days and months (28-31 days per month) 1162if(!this.isValid())return this.localeData().invalidDate();var minutes,hours,years,seconds=abs$1(this._milliseconds)/1e3,days=abs$1(this._days),months=abs$1(this._months); 1163// 3600 seconds -> 60 minutes -> 1 hour 1164minutes=absFloor(seconds/60),hours=absFloor(minutes/60),seconds%=60,minutes%=60, 1165// 12 months -> 1 year 1166years=absFloor(months/12),months%=12; 1167// inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js 1168var Y=years,M=months,D=days,h=hours,m=minutes,s=seconds,total=this.asSeconds();return total?(total<0?"-":"")+"P"+(Y?Y+"Y":"")+(M?M+"M":"")+(D?D+"D":"")+(h||m||s?"T":"")+(h?h+"H":"")+(m?m+"M":"")+(s?s+"S":""):"P0D"}var hookCallback,some;some=Array.prototype.some?Array.prototype.some:function(fun){for(var t=Object(this),len=t.length>>>0,i=0;i<len;i++)if(i in t&&fun.call(this,t[i],i,t))return!0;return!1};var some$1=some,momentProperties=hooks.momentProperties=[],updateInProgress=!1,deprecations={};hooks.suppressDeprecationWarnings=!1,hooks.deprecationHandler=null;var keys;keys=Object.keys?Object.keys:function(obj){var i,res=[];for(i in obj)hasOwnProp(obj,i)&&res.push(i);return res};var indexOf,keys$1=keys,defaultCalendar={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},defaultLongDateFormat={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},defaultDayOfMonthOrdinalParse=/\d{1,2}/,defaultRelativeTime={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},aliases={},priorities={},formattingTokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}
vendor: 4,148 bytes, lines 1168-1205
1168|x|X|zz?|ZZ?|.)/g,localFormattingTokens=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,formatFunctions={},formatTokenFunctions={},match1=/\d/,match2=/\d\d/,match3=/\d{3}/,match4=/\d{4}/,match6=/[+-]?\d{6}/,match1to2=/\d\d?/,match3to4=/\d\d\d\d?/,match5to6=/\d\d\d\d\d\d?/,match1to3=/\d{1,3}/,match1to4=/\d{1,4}/,match1to6=/[+-]?\d{1,6}/,matchUnsigned=/\d+/,matchSigned=/[+-]?\d+/,matchOffset=/Z|[+-]\d\d:?\d\d/gi,matchShortOffset=/Z|[+-]\d\d(?::?\d\d)?/gi,matchTimestamp=/[+-]?\d+(\.\d{1,3})?/,matchWord=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,regexes={},tokens={},YEAR=0,MONTH=1,DATE=2,HOUR=3,MINUTE=4,SECOND=5,MILLISECOND=6,WEEK=7,WEEKDAY=8;indexOf=Array.prototype.indexOf?Array.prototype.indexOf:function(o){ 1169// I know 1170var i;for(i=0;i<this.length;++i)if(this[i]===o)return i;return-1};var indexOf$1=indexOf; 1171// FORMATTING 1172addFormatToken("M",["MM",2],"Mo",function(){return this.month()+1}),addFormatToken("MMM",0,0,function(format){return this.localeData().monthsShort(this,format)}),addFormatToken("MMMM",0,0,function(format){return this.localeData().months(this,format)}), 1173// ALIASES 1174addUnitAlias("month","M"), 1175// PRIORITY 1176addUnitPriority("month",8), 1177// PARSING 1178addRegexToken("M",match1to2),addRegexToken("MM",match1to2,match2),addRegexToken("MMM",function(isStrict,locale){return locale.monthsShortRegex(isStrict)}),addRegexToken("MMMM",function(isStrict,locale){return locale.monthsRegex(isStrict)}),addParseToken(["M","MM"],function(input,array){array[MONTH]=toInt(input)-1}),addParseToken(["MMM","MMMM"],function(input,array,config,token){var month=config._locale.monthsParse(input,token,config._strict); 1179// if we didn't find a month name, mark the date as invalid. 1180null!=month?array[MONTH]=month:getParsingFlags(config).invalidMonth=input}); 1181// LOCALES 1182var MONTHS_IN_FORMAT=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,defaultLocaleMonths="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),defaultLocaleMonthsShort="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),defaultMonthsShortRegex=matchWord,defaultMonthsRegex=matchWord; 1183// FORMATTING 1184addFormatToken("Y",0,0,function(){var y=this.year();return y<=9999?""+y:"+"+y}),addFormatToken(0,["YY",2],0,function(){return this.year()%100}),addFormatToken(0,["YYYY",4],0,"year"),addFormatToken(0,["YYYYY",5],0,"year"),addFormatToken(0,["YYYYYY",6,!0],0,"year"), 1185// ALIASES 1186addUnitAlias("year","y"), 1187// PRIORITIES 1188addUnitPriority("year",1), 1189// PARSING 1190addRegexToken("Y",matchSigned),addRegexToken("YY",match1to2,match2),addRegexToken("YYYY",match1to4,match4),addRegexToken("YYYYY",match1to6,match6),addRegexToken("YYYYYY",match1to6,match6),addParseToken(["YYYYY","YYYYYY"],YEAR),addParseToken("YYYY",function(input,array){array[YEAR]=2===input.length?hooks.parseTwoDigitYear(input):toInt(input)}),addParseToken("YY",function(input,array){array[YEAR]=hooks.parseTwoDigitYear(input)}),addParseToken("Y",function(input,array){array[YEAR]=parseInt(input,10)}), 1191// HOOKS 1192hooks.parseTwoDigitYear=function(input){return toInt(input)+(toInt(input)>68?1900:2e3)}; 1193// MOMENTS 1194var getSetYear=makeGetSet("FullYear",!0); 1195// FORMATTING 1196addFormatToken("w",["ww",2],"wo","week"),addFormatToken("W",["WW",2],"Wo","isoWeek"), 1197// ALIASES 1198addUnitAlias("week","w"),addUnitAlias("isoWeek","W"), 1199// PRIORITIES 1200addUnitPriority("week",5),addUnitPriority("isoWeek",5), 1201// PARSING 1202addRegexToken("w",match1to2),addRegexToken("ww",match1to2,match2),addRegexToken("W",match1to2),addRegexToken("WW",match1to2,match2),addWeekParseToken(["w","ww","W","WW"],function(input,week,config,token){week[token.substr(0,1)]=toInt(input)});var defaultLocaleWeek={dow:0,// Sunday is the first day of the week. 1203doy:6}; 1204// FORMATTING 1205addFormatToken("d",0,"do","day"),addFormatToken("dd",0,0,function(format){return this.localeData().weekdaysMin(this,format)}),addFormatToken("ddd",0,0,function(format){return this.localeData().weekdaysShort(this,format)}),addFormatToken("dddd",0,0,function(format){return this.localeData().weekdays(this,format)}),addFormatToken("e",0,0,"weekday"),addFormatToken("E",0,0,"isoWeekday"),
vendor: 7,429 bytes, lines 1206-1238
1206// ALIASES 1207addUnitAlias("day","d"),addUnitAlias("weekday","e"),addUnitAlias("isoWeekday","E"), 1208// PRIORITY 1209addUnitPriority("day",11),addUnitPriority("weekday",11),addUnitPriority("isoWeekday",11), 1210// PARSING 1211addRegexToken("d",match1to2),addRegexToken("e",match1to2),addRegexToken("E",match1to2),addRegexToken("dd",function(isStrict,locale){return locale.weekdaysMinRegex(isStrict)}),addRegexToken("ddd",function(isStrict,locale){return locale.weekdaysShortRegex(isStrict)}),addRegexToken("dddd",function(isStrict,locale){return locale.weekdaysRegex(isStrict)}),addWeekParseToken(["dd","ddd","dddd"],function(input,week,config,token){var weekday=config._locale.weekdaysParse(input,token,config._strict); 1212// if we didn't get a weekday name, mark the date as invalid 1213null!=weekday?week.d=weekday:getParsingFlags(config).invalidWeekday=input}),addWeekParseToken(["d","e","E"],function(input,week,config,token){week[token]=toInt(input)}); 1214// LOCALES 1215var defaultLocaleWeekdays="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),defaultLocaleWeekdaysShort="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),defaultLocaleWeekdaysMin="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),defaultWeekdaysRegex=matchWord,defaultWeekdaysShortRegex=matchWord,defaultWeekdaysMinRegex=matchWord;addFormatToken("H",["HH",2],0,"hour"),addFormatToken("h",["hh",2],0,hFormat),addFormatToken("k",["kk",2],0,kFormat),addFormatToken("hmm",0,0,function(){return""+hFormat.apply(this)+zeroFill(this.minutes(),2)}),addFormatToken("hmmss",0,0,function(){return""+hFormat.apply(this)+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)}),addFormatToken("Hmm",0,0,function(){return""+this.hours()+zeroFill(this.minutes(),2)}),addFormatToken("Hmmss",0,0,function(){return""+this.hours()+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)}),meridiem("a",!0),meridiem("A",!1), 1216// ALIASES 1217addUnitAlias("hour","h"), 1218// PRIORITY 1219addUnitPriority("hour",13),addRegexToken("a",matchMeridiem),addRegexToken("A",matchMeridiem),addRegexToken("H",match1to2),addRegexToken("h",match1to2),addRegexToken("k",match1to2),addRegexToken("HH",match1to2,match2),addRegexToken("hh",match1to2,match2),addRegexToken("kk",match1to2,match2),addRegexToken("hmm",match3to4),addRegexToken("hmmss",match5to6),addRegexToken("Hmm",match3to4),addRegexToken("Hmmss",match5to6),addParseToken(["H","HH"],HOUR),addParseToken(["k","kk"],function(input,array,config){var kInput=toInt(input);array[HOUR]=24===kInput?0:kInput}),addParseToken(["a","A"],function(input,array,config){config._isPm=config._locale.isPM(input),config._meridiem=input}),addParseToken(["h","hh"],function(input,array,config){array[HOUR]=toInt(input),getParsingFlags(config).bigHour=!0}),addParseToken("hmm",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos)),array[MINUTE]=toInt(input.substr(pos)),getParsingFlags(config).bigHour=!0}),addParseToken("hmmss",function(input,array,config){var pos1=input.length-4,pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1)),array[MINUTE]=toInt(input.substr(pos1,2)),array[SECOND]=toInt(input.substr(pos2)),getParsingFlags(config).bigHour=!0}),addParseToken("Hmm",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos)),array[MINUTE]=toInt(input.substr(pos))}),addParseToken("Hmmss",function(input,array,config){var pos1=input.length-4,pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1)),array[MINUTE]=toInt(input.substr(pos1,2)),array[SECOND]=toInt(input.substr(pos2))});var globalLocale,defaultLocaleMeridiemParse=/[ap]\.?m?\.?/i,getSetHour=makeGetSet("Hours",!0),baseConfig={calendar:defaultCalendar,longDateFormat:defaultLongDateFormat,invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:defaultDayOfMonthOrdinalParse,relativeTime:defaultRelativeTime,months:defaultLocaleMonths,monthsShort:defaultLocaleMonthsShort,week:defaultLocaleWeek,weekdays:defaultLocaleWeekdays,weekdaysMin:defaultLocaleWeekdaysMin,weekdaysShort:defaultLocaleWeekdaysShort,meridiemParse:defaultLocaleMeridiemParse},locales={},localeFamilies={},extendedIsoRegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,basicIsoRegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tzRegex=/Z|[+-]\d\d(?::?\d\d)?/,isoDates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/], 1220// YYYYMM is NOT allowed by the standard 1221["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],isoTimes=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],aspNetJsonRegex=/^\/?Date\((\-?\d+)/i,basicRfcRegex=/^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d?\d\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?:\d\d)?\d\d\s)(\d\d:\d\d)(\:\d\d)?(\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\d{4}))$/;hooks.createFromInputFallback=deprecate("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(config){config._d=new Date(config._i+(config._useUTC?" UTC":""))}), 1222// constant that refers to the ISO standard 1223hooks.ISO_8601=function(){}, 1224// constant that refers to the RFC 2822 form 1225hooks.RFC_2822=function(){};var prototypeMin=deprecate("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var other=createLocal.apply(null,arguments);return this.isValid()&&other.isValid()?other<this?this:other:createInvalid()}),prototypeMax=deprecate("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var other=createLocal.apply(null,arguments);return this.isValid()&&other.isValid()?other>this?this:other:createInvalid()}),now=function(){return Date.now?Date.now():+new Date},ordering=["year","quarter","month","week","day","hour","minute","second","millisecond"];offset("Z",":"),offset("ZZ",""), 1226// PARSING 1227addRegexToken("Z",matchShortOffset),addRegexToken("ZZ",matchShortOffset),addParseToken(["Z","ZZ"],function(input,array,config){config._useUTC=!0,config._tzm=offsetFromString(matchShortOffset,input)}); 1228// HELPERS 1229// timezone chunker 1230// '+10:00' > ['10', '00'] 1231// '-1530' > ['-15', '30'] 1232var chunkOffset=/([\+\-]|\d\d)/gi; 1233// HOOKS 1234// This function will be called whenever a moment is mutated. 1235// It is intended to keep the offset in sync with the timezone. 1236hooks.updateOffset=function(){}; 1237// ASP.NET json date format regex 1238var aspNetRegex=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,isoRegex=/^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;createDuration.fn=Duration.prototype,createDuration.invalid=createInvalid$
vendor: 5,242 bytes, lines 1238-1306
12381;var add=createAdder(1,"add"),subtract=createAdder(-1,"subtract");hooks.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",hooks.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var lang=deprecate("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(key){return void 0===key?this.localeData():this.locale(key)}); 1239// FORMATTING 1240addFormatToken(0,["gg",2],0,function(){return this.weekYear()%100}),addFormatToken(0,["GG",2],0,function(){return this.isoWeekYear()%100}),addWeekYearFormatToken("gggg","weekYear"),addWeekYearFormatToken("ggggg","weekYear"),addWeekYearFormatToken("GGGG","isoWeekYear"),addWeekYearFormatToken("GGGGG","isoWeekYear"), 1241// ALIASES 1242addUnitAlias("weekYear","gg"),addUnitAlias("isoWeekYear","GG"), 1243// PRIORITY 1244addUnitPriority("weekYear",1),addUnitPriority("isoWeekYear",1), 1245// PARSING 1246addRegexToken("G",matchSigned),addRegexToken("g",matchSigned),addRegexToken("GG",match1to2,match2),addRegexToken("gg",match1to2,match2),addRegexToken("GGGG",match1to4,match4),addRegexToken("gggg",match1to4,match4),addRegexToken("GGGGG",match1to6,match6),addRegexToken("ggggg",match1to6,match6),addWeekParseToken(["gggg","ggggg","GGGG","GGGGG"],function(input,week,config,token){week[token.substr(0,2)]=toInt(input)}),addWeekParseToken(["gg","GG"],function(input,week,config,token){week[token]=hooks.parseTwoDigitYear(input)}), 1247// FORMATTING 1248addFormatToken("Q",0,"Qo","quarter"), 1249// ALIASES 1250addUnitAlias("quarter","Q"), 1251// PRIORITY 1252addUnitPriority("quarter",7), 1253// PARSING 1254addRegexToken("Q",match1),addParseToken("Q",function(input,array){array[MONTH]=3*(toInt(input)-1)}), 1255// FORMATTING 1256addFormatToken("D",["DD",2],"Do","date"), 1257// ALIASES 1258addUnitAlias("date","D"), 1259// PRIOROITY 1260addUnitPriority("date",9), 1261// PARSING 1262addRegexToken("D",match1to2),addRegexToken("DD",match1to2,match2),addRegexToken("Do",function(isStrict,locale){ 1263// TODO: Remove "ordinalParse" fallback in next major release. 1264return isStrict?locale._dayOfMonthOrdinalParse||locale._ordinalParse:locale._dayOfMonthOrdinalParseLenient}),addParseToken(["D","DD"],DATE),addParseToken("Do",function(input,array){array[DATE]=toInt(input.match(match1to2)[0],10)}); 1265// MOMENTS 1266var getSetDayOfMonth=makeGetSet("Date",!0); 1267// FORMATTING 1268addFormatToken("DDD",["DDDD",3],"DDDo","dayOfYear"), 1269// ALIASES 1270addUnitAlias("dayOfYear","DDD"), 1271// PRIORITY 1272addUnitPriority("dayOfYear",4), 1273// PARSING 1274addRegexToken("DDD",match1to3),addRegexToken("DDDD",match3),addParseToken(["DDD","DDDD"],function(input,array,config){config._dayOfYear=toInt(input)}), 1275// FORMATTING 1276addFormatToken("m",["mm",2],0,"minute"), 1277// ALIASES 1278addUnitAlias("minute","m"), 1279// PRIORITY 1280addUnitPriority("minute",14), 1281// PARSING 1282addRegexToken("m",match1to2),addRegexToken("mm",match1to2,match2),addParseToken(["m","mm"],MINUTE); 1283// MOMENTS 1284var getSetMinute=makeGetSet("Minutes",!1); 1285// FORMATTING 1286addFormatToken("s",["ss",2],0,"second"), 1287// ALIASES 1288addUnitAlias("second","s"), 1289// PRIORITY 1290addUnitPriority("second",15), 1291// PARSING 1292addRegexToken("s",match1to2),addRegexToken("ss",match1to2,match2),addParseToken(["s","ss"],SECOND); 1293// MOMENTS 1294var getSetSecond=makeGetSet("Seconds",!1); 1295// FORMATTING 1296addFormatToken("S",0,0,function(){return~~(this.millisecond()/100)}),addFormatToken(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),addFormatToken(0,["SSS",3],0,"millisecond"),addFormatToken(0,["SSSS",4],0,function(){return 10*this.millisecond()}),addFormatToken(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),addFormatToken(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),addFormatToken(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),addFormatToken(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),addFormatToken(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}), 1297// ALIASES 1298addUnitAlias("millisecond","ms"), 1299// PRIORITY 1300addUnitPriority("millisecond",16), 1301// PARSING 1302addRegexToken("S",match1to3,match1),addRegexToken("SS",match1to3,match2),addRegexToken("SSS",match1to3,match3);var token;for(token="SSSS";token.length<=9;token+="S")addRegexToken(token,matchUnsigned);for(token="S";token.length<=9;token+="S")addParseToken(token,parseMs); 1303// MOMENTS 1304var getSetMillisecond=makeGetSet("Milliseconds",!1); 1305// FORMATTING 1306addFormatToken("z",0,0,"zoneAbbr"),addFormatToken("zz",0,0,"zoneName");var proto=Moment.prototype;proto.add=add,proto.calendar=calendar$1,proto.clone=clone,proto.diff=diff,proto.endOf=endOf,proto.format=format,proto.from=from,proto.fromNow=fromNow,proto.to=to,proto.toNow=toNow,proto.get=stringGet,proto.invalidAt=invalidAt,proto.isAfter=isAfter,proto.isBefore=isBefore,proto.isBetween=isBetween,proto.isSame=isSame,proto.isSameOrAfter=isSameOrAfter,proto.isSameOrBefore=isSameOrBefore,proto.isValid=isValid$2,proto.lang=lang,proto.locale=locale,proto.localeData=localeData,proto.max=prototypeMax,proto.min=prototypeMin,proto.parsingFlags=parsingFlags,proto.set=stringSet,proto.startOf=startOf,proto.subtract=subtract,proto.toArray=toArray,proto.toObject=toObject,proto.toDate=toDate,proto.toISOString=toISOString,proto.inspect=inspect,proto.toJSON=toJSON,proto.toString=toString,proto.unix=unix,proto.valueOf=valueOf,proto.creationData=creationData,
1307// Year 1308proto.year=getSetYear,proto.isLeapYear=getIsLeapYear, 1309// Week Year 1310proto.weekYear=getSetWeekYear,proto.isoWeekYear=getSetISOWeekYear, 1311// Quarter 1312proto.quarter=proto.quarters=getSetQuarter, 1313// Month 1314proto.month=getSetMonth,proto.daysInMonth=getDaysInMonth, 1315// Week 1316proto.week=proto.weeks=getSetWeek,proto.isoWeek=proto.isoWeeks=getSetISOWeek,proto.weeksInYear=getWeeksInYear,proto.isoWeeksInYear=getISOWeeksInYear, 1317// Day 1318proto.date=getSetDayOfMonth,proto.day=proto.days=getSetDayOfWeek,proto.weekday=getSetLocaleDayOfWeek,proto.isoWeekday=getSetISODayOfWeek,proto.dayOfYear=getSetDayOfYear, 1319// Hour 1320proto.hour=proto.hours=getSetHour, 1321// Minute 1322proto.minute=proto.minutes=getSetMinute, 1323// Second 1324proto.second=proto.seconds=getSetSecond, 1325// Millisecond 1326proto.millisecond=proto.milliseconds=getSetMillisecond, 1327// Offset 1328proto.utcOffset=getSetOffset,proto.utc=setOffsetToUTC,proto.local=setOffsetToLocal,proto.parseZone=setOffsetToParsedOffset,proto.hasAlignedHourOffset=hasAlignedHourOffset,proto.isDST=isDaylightSavingTime,proto.isLocal=isLocal,proto.isUtcOffset=isUtcOffset,proto.isUtc=isUtc,proto.isUTC=isUtc, 1329// Timezone 1330proto.zoneAbbr=getZoneAbbr,proto.zoneName=getZoneName, 1331// Deprecations 1332proto.dates=deprecate("dates accessor is deprecated. Use date instead.",getSetDayOfMonth),proto.months=deprecate("months accessor is deprecated. Use month instead",getSetMonth),proto.years=deprecate("years accessor is deprecated. Use year instead",getSetYear),proto.zone=deprecate("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",getSetZone),proto.isDSTShifted=deprecate("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",isDaylightSavingTimeShifted);var proto$1=Locale.prototype;proto$1.calendar=calendar,proto$1.longDateFormat=longDateFormat,proto$1.invalidDate=invalidDate,proto$1.ordinal=ordinal,proto$1.preparse=preParsePostFormat,proto$1.postformat=preParsePostFormat,proto$1.relativeTime=relativeTime,proto$1.pastFuture=pastFuture,proto$1.set=set, 1333// Month 1334proto$1.months=localeMonths,proto$1.monthsShort=localeMonthsShort,proto$1.monthsParse=localeMonthsParse,proto$1.monthsRegex=monthsRegex,proto$1.monthsShortRegex=monthsShortRegex, 1335// Week 1336proto$1.week=localeWeek,proto$1.firstDayOfYear=localeFirstDayOfYear,proto$1.firstDayOfWeek=localeFirstDayOfWeek, 1337// Day of Week 1338proto$1.weekdays=localeWeekdays,proto$1.weekdaysMin=localeWeekdaysMin,proto$1.weekdaysShort=localeWeekdaysShort,proto$1.weekdaysParse=localeWeekdaysParse,proto$1.weekdaysRegex=weekdaysRegex,proto$1.weekdaysShortRegex=weekdaysShortRegex,proto$1.weekdaysMinRegex=weekdaysMinRegex, 1339// Hours 1340proto$1.isPM=localeIsPM,proto$1.meridiem=localeMeridiem,getSetGlobalLocale("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(number){var b=number%10;return number+(1===toInt(number%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th")}}), 1341// Side effect imports 1342hooks.lang=deprecate("moment.lang is deprecated. Use moment.locale instead.",getSetGlobalLocale),hooks.langData=deprecate("moment.langData is deprecated. Use moment.localeData instead.",getLocale);var mathAbs=Math.abs,asMilliseconds=makeAs("ms"),asSeconds=makeAs("s"),asMinutes=makeAs("m"),asHours=makeAs("h"),asDays=makeAs("d"),asWeeks=makeAs("w"),asMonths=makeAs("M"),asYears=makeAs("y"),milliseconds=makeGetter("milliseconds"),seconds=makeGetter("seconds"),minutes=makeGetter("minutes"),hours=makeGetter("hours"),days=makeGetter("days"),months=makeGetter("months"),years=makeGetter("years"),round=Math.round,thresholds={ss:44,// a few seconds to seconds 1343s:45,// seconds to minute 1344m:45,// minutes to hour 1345h:22,// hours to day 1346d:26,// days to month 1347M:11},abs$1=Math.abs,proto$2=Duration.prototype; 1348// Deprecations 1349// Side effect imports 1350// FORMATTING 1351// PARSING 1352// Side effect imports 1353// This is done to register the method called with moment() 1354// without creating circular dependencies. 1355return proto$2.isValid=isValid$1,proto$2.abs=abs,proto$2.add=add$1,proto$2.subtract=subtract$1,proto$2.as=as,proto$2.asMilliseconds=asMilliseconds,proto$2.asSeconds=asSeconds,proto$2.asMinutes=asMinutes,proto$2.asHours=asHours,proto$2.asDays=asDays,proto$2.asWeeks=asWeeks,proto$2.asMonths=asMonths,proto$2.asYears=asYears,proto$2.valueOf=valueOf$1,proto$2._bubble=bubble,proto$2.get=get$2,proto$2.milliseconds=milliseconds,proto$2.seconds=seconds,proto$2.minutes=minutes,proto$2.hours=hours,proto$2.days=days,proto$2.weeks=weeks,proto$2.months=months,proto$2.years=years,proto$2.humanize=humanize,proto$2.toISOString=toISOString$1,proto$2.toString=toISOString$1,proto$2.toJSON=toISOString$1,proto$2.locale=locale,proto$2.localeData=localeData,proto$2.toIsoString=deprecate("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",toISOString$1),proto$2.lang=lang,addFormatToken("X",0,0,"unix"),addFormatToken("x",0,0,"valueOf"),addRegexToken("x",matchSigned),addRegexToken("X",matchTimestamp),addParseToken("X",function(input,array,config){config._d=new Date(1e3*parseFloat(input,10))}),addParseToken("x",function(input,array,config){config._d=new Date(toInt(input))}),hooks.version="2.18.1",function(callback){hookCallback=callback}(createLocal),hooks.fn=proto,hooks.min=min,hooks.max=max,hooks.now=now,hooks.utc=createUTC,hooks.unix=createUnix,hooks.months=listMonths,hooks.isDate=isDate,hooks.locale=getSetGlobalLocale,hooks.invalid=createInvalid,hooks.duration=createDuration,hooks.isMoment=isMoment,hooks.weekdays=listWeekdays,hooks.parseZone=createInZone,hooks.localeData=getLocale,hooks.isDuration=isDuration,hooks.monthsShort=listMonthsShort,hooks.weekdaysMin=listWeekdaysMin,hooks.defineLocale=defineLocale,hooks.updateLocale=updateLocale,hooks.locales=listLocales,hooks.weekdaysShort=listWeekdaysShort,hooks.normalizeUnits=normalizeUnits,hooks.relativeTimeRounding=getSetRelativeTimeRounding,hooks.relativeTimeThreshold=getSetRelativeTimeThreshold,hooks.calendarFormat=getCalendarFormat,hooks.prototype=proto,hooks}),/*! 1356 * Pikaday 1357 * 1358 * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday 1359 */ 1360function(root,factory){"use strict";var moment;
vendor: 4,427 bytes, lines 1360-1412
1360if("object"==typeof exports){ 1361// CommonJS module 1362// Load moment.js as an optional dependency 1363try{moment=require("moment")}catch(e){}module.exports=factory(moment)}else"function"==typeof define&&define.amd? 1364// AMD. Register as an anonymous module. 1365define(function(req){try{moment=req("moment")}catch(e){}return factory(moment)}):root.Pikaday=factory(root.moment)}(this,function(moment){"use strict";/** 1366 * feature detection and helper functions 1367 */ 1368var hasMoment="function"==typeof moment,hasEventListeners=!!window.addEventListener,document=window.document,sto=window.setTimeout,addEvent=function(el,e,callback,capture){hasEventListeners?el.addEventListener(e,callback,!!capture):el.attachEvent("on"+e,callback)},removeEvent=function(el,e,callback,capture){hasEventListeners?el.removeEventListener(e,callback,!!capture):el.detachEvent("on"+e,callback)},fireEvent=function(el,eventName,data){var ev;document.createEvent?(ev=document.createEvent("HTMLEvents"),ev.initEvent(eventName,!0,!1),ev=extend(ev,data),el.dispatchEvent(ev)):document.createEventObject&&(ev=document.createEventObject(),ev=extend(ev,data),el.fireEvent("on"+eventName,ev))},trim=function(str){return str.trim?str.trim():str.replace(/^\s+|\s+$/g,"")},hasClass=function(el,cn){return-1!==(" "+el.className+" ").indexOf(" "+cn+" ")},addClass=function(el,cn){hasClass(el,cn)||(el.className=""===el.className?cn:el.className+" "+cn)},removeClass=function(el,cn){el.className=trim((" "+el.className+" ").replace(" "+cn+" "," "))},isArray=function(obj){return/Array/.test(Object.prototype.toString.call(obj))},isDate=function(obj){return/Date/.test(Object.prototype.toString.call(obj))&&!isNaN(obj.getTime())},isWeekend=function(date){var day=date.getDay();return 0===day||6===day},isLeapYear=function(year){ 1369// solution by Matti Virkkunen: http://stackoverflow.com/a/4881951 1370return year%4==0&&year%100!=0||year%400==0},getDaysInMonth=function(year,month){return[31,isLeapYear(year)?29:28,31,30,31,30,31,31,30,31,30,31][month]},setToStartOfDay=function(date){isDate(date)&&date.setHours(0,0,0,0)},compareDates=function(a,b){ 1371// weak date comparison (use setToStartOfDay(date) to ensure correct result) 1372return a.getTime()===b.getTime()},extend=function(to,from,overwrite){var prop,hasProp;for(prop in from)hasProp=void 0!==to[prop],hasProp&&"object"==typeof from[prop]&&null!==from[prop]&&void 0===from[prop].nodeName?isDate(from[prop])?overwrite&&(to[prop]=new Date(from[prop].getTime())):isArray(from[prop])?overwrite&&(to[prop]=from[prop].slice(0)):to[prop]=extend({},from[prop],overwrite):!overwrite&&hasProp||(to[prop]=from[prop]);return to},adjustCalendar=function(calendar){return calendar.month<0&&(calendar.year-=Math.ceil(Math.abs(calendar.month)/12),calendar.month+=12),calendar.month>11&&(calendar.year+=Math.floor(Math.abs(calendar.month)/12),calendar.month-=12),calendar},/** 1373 * defaults and localisation 1374 */ 1375defaults={ 1376// bind the picker to a form field 1377field:null, 1378// automatically show/hide the picker on `field` focus (default `true` if `field` is set) 1379bound:void 0, 1380// position of the datepicker, relative to the field (default to bottom & left) 1381// ('bottom' & 'left' keywords are not used, 'top' & 'right' are modifier on the bottom/left position) 1382position:"bottom left", 1383// automatically fit in the viewport even if it means repositioning from the position option 1384reposition:!0, 1385// the default output format for `.toString()` and `field` value 1386format:"YYYY-MM-DD", 1387// the initial date to view when first opened 1388defaultDate:null, 1389// make the `defaultDate` the initial selected value 1390setDefaultDate:!1, 1391// first day of week (0: Sunday, 1: Monday etc) 1392firstDay:0, 1393// the default flag for moment's strict date parsing 1394formatStrict:!1, 1395// the minimum/earliest date that can be selected 1396minDate:null, 1397// the maximum/latest date that can be selected 1398maxDate:null, 1399// number of years either side, or array of upper/lower range 1400yearRange:10, 1401// show week numbers at head of row 1402showWeekNumber:!1, 1403// Week picker mode 1404pickWholeWeek:!1, 1405// used internally (don't config outside) 1406minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1, 1407// Additional text to append to the year in the calendar title 1408yearSuffix:"", 1409// Render the month after year in the calendar title 1410showMonthAfterYear:!1, 1411// Render days of the calendar grid that fall in the next or previous month 1412showDaysInNextAndPreviousMonths:!1,
1413// how many months are visible 1414numberOfMonths:1, 1415// when numberOfMonths is used, this will help you to choose where the main calendar will be (default `left`, can be set to `right`) 1416// only used for the first display or when a selected date is not visible 1417mainCalendar:"left", 1418// Specify a DOM element to render the calendar in 1419container:void 0, 1420// Blur field when date is selected 1421blurFieldOnSelect:!0, 1422// internationalization 1423i18n:{previousMonth:"Previous Month",nextMonth:"Next Month",months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]}, 1424// Theme Classname 1425theme:null, 1426// events array 1427events:[], 1428// callback function 1429onSelect:null,onOpen:null,onClose:null,onDraw:null},/** 1430 * templating functions to abstract HTML rendering 1431 */ 1432renderDayName=function(opts,day,abbr){for(day+=opts.firstDay;day>=7;)day-=7;return abbr?opts.i18n.weekdaysShort[day]:opts.i18n.weekdays[day]},renderDay=function(opts){var arr=[],ariaSelected="false";if(opts.isEmpty){if(!opts.showDaysInNextAndPreviousMonths)return'<td class="is-empty"></td>';arr.push("is-outside-current-month")}return opts.isDisabled&&arr.push("is-disabled"),opts.isToday&&arr.push("is-today"),opts.isSelected&&(arr.push("is-selected"),ariaSelected="true"),opts.hasEvent&&arr.push("has-event"),opts.isInRange&&arr.push("is-inrange"),opts.isStartRange&&arr.push("is-startrange"),opts.isEndRange&&arr.push("is-endrange"),'<td data-day="'+opts.day+'" class="'+arr.join(" ")+'" aria-selected="'+ariaSelected+'"><button class="pika-button pika-day" type="button" data-pika-year="'+opts.year+'" data-pika-month="'+opts.month+'" data-pika-day="'+opts.day+'">'+opts.day+"</button></td>"},renderWeek=function(d,m,y){ 1433// Lifted from http://javascript.about.com/library/blweekyear.htm, lightly modified. 1434var onejan=new Date(y,0,1);return'<td class="pika-week">'+Math.ceil(((new Date(y,m,d)-onejan)/864e5+onejan.getDay()+1)/7)+"</td>"},renderRow=function(days,isRTL,pickWholeWeek,isRowSelected){return'<tr class="pika-row'+(pickWholeWeek?" pick-whole-week":"")+(isRowSelected?" is-selected":"")+'">'+(isRTL?days.reverse():days).join("")+"</tr>"},renderBody=function(rows){return"<tbody>"+rows.join("")+"</tbody>"},renderHead=function(opts){var i,arr=[];for(opts.showWeekNumber&&arr.push("<th></th>"),i=0;i<7;i++)arr.push('<th scope="col"><abbr title="'+renderDayName(opts,i)+'">'+renderDayName(opts,i,!0)+"</abbr></th>");return"<thead><tr>"+(opts.isRTL?arr.reverse():arr).join("")+"</tr></thead>"},renderTitle=function(instance,c,year,month,refYear,randId){var i,j,arr,monthHtml,yearHtml,opts=instance._o,isMinYear=year===opts.minYear,isMaxYear=year===opts.maxYear,html='<div id="'+randId+'" class="pika-title" role="heading" aria-live="assertive">',prev=!0,next=!0;for(arr=[],i=0;i<12;i++)arr.push('<option value="'+(year===refYear?i-c:12+i-c)+'"'+(i===month?' selected="selected"':"")+(isMinYear&&i<opts.minMonth||isMaxYear&&i>opts.maxMonth?'disabled="disabled"':"")+">"+opts.i18n.months[i]+"</option>");for(monthHtml='<div class="pika-label">'+opts.i18n.months[month]+'<select class="pika-select pika-select-month" tabindex="-1">'+arr.join("")+"</select></div>",isArray(opts.yearRange)?(i=opts.yearRange[0],j=opts.yearRange[1]+1):(i=year-opts.yearRange,j=1+year+opts.yearRange),arr=[];i<j&&i<=opts.maxYear;i++)i>=opts.minYear&&arr.push('<option value="'+i+'"'+(i===year?' selected="selected"':"")+">"+i+"</option>");return yearHtml='<div class="pika-label">'+year+opts.yearSuffix+'<select class="pika-select pika-select-year" tabindex="-1">'+arr.join("")+"</select></div>",opts.showMonthAfterYear?html+=yearHtml+monthHtml:html+=monthHtml+yearHtml,isMinYear&&(0===month||opts.minMonth>=month)&&(prev=!1),isMaxYear&&(11===month||opts.maxMonth<=month)&&(next=!1),0===c&&(html+='<button class="pika-prev'+(prev?"":" is-disabled")+'" type="button">'+opts.i18n.previousMonth+"</button>"),c===instance._o.numberOfMonths-1&&(html+='<button class="pika-next'+(next?"":" is-disabled")+'" type="button">'+opts.i18n.nextMonth+"</button>"),html+="</div>"},renderTable=function(opts,data,randId){return'<table cellpadding="0" cellspacing="0" class="pika-table" role="grid" aria-labelledby="'+randId+'">'+renderHead(opts)+renderBody(data)+"</table>"},/** 1435 * Pikaday constructor 1436 */ 1437Pikaday=function(options){var self=this,opts=self.config(options);self._onMouseDown=function(e){if(self._v){e=e||window.event;var target=e.target||e.srcElement;if(target)if(hasClass(target,"is-disabled")||(!hasClass(target,"pika-button")||hasClass(target,"is-empty")||hasClass(target.parentNode,"is-disabled")?hasClass(target,"pika-prev")?self.prevMonth():hasClass(target,"pika-next")&&self.nextMonth():(self.setDate(new Date(target.getAttribute("data-pika-year"),target.getAttribute("data-pika-month"),target.getAttribute("data-pika-day"))),opts.bound&&sto(function(){self.hide(),opts.blurFieldOnSelect&&opts.field&&opts.field.blur()},100))),hasClass(target,"pika-select"))self._c=!0;else{ 1438// if this is touch event prevent mouse events emulation 1439if(!e.preventDefault)return e.returnValue=!1,!1;e.preventDefault()}}},self._onChange=function(e){e=e||window.event;var target=e.target||e.srcElement;target&&(hasClass(target,"pika-select-month")?self.gotoMonth(target.value):hasClass(target,"pika-select-year")&&self.gotoYear(target.value))},self._onKeyChange=function(e){if(e=e||window.event,self.isVisible())switch(e.keyCode){case 13:case 27:opts.field&&opts.field.blur();break;case 37:e.preventDefault(),self.adjustDate("subtract",1);break;case 38:self.adjustDate("subtract",7);break;case 39:self.adjustDate("add",1);break;case 40:self.adjustDate("add",7)}},self._onInputChange=function(e){var date;e.firedBy!==self&&(hasMoment?(date=moment(opts.field.value,opts.format,opts.formatStrict),date=date&&date.isValid()?date.toDate():null):date=new Date(Date.parse(opts.field.value)),isDate(date)&&self.setDate(date),self._v||self.show())},self._onInputFocus=function(){self.show()},self._onInputClick=function(){self.show()},self._onInputBlur=function(){ 1440// IE allows pika div to gain focus; catch blur the input field 1441var pEl=document.activeElement;do{if(hasClass(pEl,"pika-single"))return}while(pEl=pEl.parentNode);self._c||(self._b=sto(function(){self.hide()},50)),self._c=!1},self._onClick=function(e){e=e||window.event;var target=e.target||e.srcElement,pEl=target;if(target){!hasEventListeners&&hasClass(target,"pika-select")&&(target.onchange||(target.setAttribute("onchange","return;"),addEvent(target,"change",self._onChange)));do{if(hasClass(pEl,"pika-single")||pEl===opts.trigger)return}while(pEl=pEl.parentNode);self._v&&target!==opts.trigger&&pEl!==opts.trigger&&self.hide()}}
vendor: 5,264 bytes, lines 1441-1467
1441,self.el=document.createElement("div"),self.el.className="pika-single"+(opts.isRTL?" is-rtl":"")+(opts.theme?" "+opts.theme:""),addEvent(self.el,"mousedown",self._onMouseDown,!0),addEvent(self.el,"touchend",self._onMouseDown,!0),addEvent(self.el,"change",self._onChange),addEvent(document,"keydown",self._onKeyChange),opts.field&&(opts.container?opts.container.appendChild(self.el):opts.bound?document.body.appendChild(self.el):opts.field.parentNode.insertBefore(self.el,opts.field.nextSibling),addEvent(opts.field,"change",self._onInputChange),opts.defaultDate||(hasMoment&&opts.field.value?opts.defaultDate=moment(opts.field.value,opts.format).toDate():opts.defaultDate=new Date(Date.parse(opts.field.value)),opts.setDefaultDate=!0));var defDate=opts.defaultDate;isDate(defDate)?opts.setDefaultDate?self.setDate(defDate,!0):self.gotoDate(defDate):self.gotoDate(new Date),opts.bound?(this.hide(),self.el.className+=" is-bound",addEvent(opts.trigger,"click",self._onInputClick),addEvent(opts.trigger,"focus",self._onInputFocus),addEvent(opts.trigger,"blur",self._onInputBlur)):this.show()};/** 1442 * public Pikaday API 1443 */ 1444return Pikaday.prototype={/** 1445 * configure functionality 1446 */ 1447config:function(options){this._o||(this._o=extend({},defaults,!0));var opts=extend(this._o,options,!0);opts.isRTL=!!opts.isRTL,opts.field=opts.field&&opts.field.nodeName?opts.field:null,opts.theme="string"==typeof opts.theme&&opts.theme?opts.theme:null,opts.bound=!!(void 0!==opts.bound?opts.field&&opts.bound:opts.field),opts.trigger=opts.trigger&&opts.trigger.nodeName?opts.trigger:opts.field,opts.disableWeekends=!!opts.disableWeekends,opts.disableDayFn="function"==typeof opts.disableDayFn?opts.disableDayFn:null;var nom=parseInt(opts.numberOfMonths,10)||1;if(opts.numberOfMonths=nom>4?4:nom,isDate(opts.minDate)||(opts.minDate=!1),isDate(opts.maxDate)||(opts.maxDate=!1),opts.minDate&&opts.maxDate&&opts.maxDate<opts.minDate&&(opts.maxDate=opts.minDate=!1),opts.minDate&&this.setMinDate(opts.minDate),opts.maxDate&&this.setMaxDate(opts.maxDate),isArray(opts.yearRange)){var fallback=(new Date).getFullYear()-10;opts.yearRange[0]=parseInt(opts.yearRange[0],10)||fallback,opts.yearRange[1]=parseInt(opts.yearRange[1],10)||fallback}else opts.yearRange=Math.abs(parseInt(opts.yearRange,10))||defaults.yearRange,opts.yearRange>100&&(opts.yearRange=100);return opts},/** 1448 * return a formatted string of the current selection (using Moment.js if available) 1449 */ 1450toString:function(format){return isDate(this._d)?hasMoment?moment(this._d).format(format||this._o.format):this._d.toDateString():""},/** 1451 * return a Moment.js object of the current selection (if available) 1452 */ 1453getMoment:function(){return hasMoment?moment(this._d):null},/** 1454 * set the current selection from a Moment.js object (if available) 1455 */ 1456setMoment:function(date,preventOnSelect){hasMoment&&moment.isMoment(date)&&this.setDate(date.toDate(),preventOnSelect)},/** 1457 * return a Date object of the current selection 1458 */ 1459getDate:function(){return isDate(this._d)?new Date(this._d.getTime()):null},/** 1460 * set the current selection 1461 */ 1462setDate:function(date,preventOnSelect){if(!date)return this._d=null,this._o.field&&(this._o.field.value="",fireEvent(this._o.field,"change",{firedBy:this})),this.draw();if("string"==typeof date&&(date=new Date(Date.parse(date))),isDate(date)){var min=this._o.minDate,max=this._o.maxDate;isDate(min)&&date<min?date=min:isDate(max)&&date>max&&(date=max),this._d=new Date(date.getTime()),setToStartOfDay(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),fireEvent(this._o.field,"change",{firedBy:this})),preventOnSelect||"function"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},/** 1463 * change view to a specific date 1464 */ 1465gotoDate:function(date){var newCalendar=!0;if(isDate(date)){if(this.calendars){var firstVisibleDate=new Date(this.calendars[0].year,this.calendars[0].month,1),lastVisibleDate=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),visibleDate=date.getTime(); 1466// get the end of the month 1467lastVisibleDate.setMonth(lastVisibleDate.getMonth()+1),lastVisibleDate.setDate(lastVisibleDate.getDate()-1),newCalendar=visibleDate<firstVisibleDate.getTime()||lastVisibleDate.getTime()<visibleDate}newCalendar&&(this.calendars=[{month:date.getMonth(),year:date.getFullYear()}],"right"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(sign,days){var newDay,day=this.getDate()||new Date,difference=24*parseInt(days)*60*60*1e3;"add"===sign?newDay=new Date(day.valueOf()+difference):"subtract"===sign&&(newDay=new Date(day.valueOf()-difference)),hasMoment&&("add"===sign?newDay=moment(day).add(days,"days").toDate():"subtract"===sign&&(newDay=moment(day).subtract(days,"days").toDate())),this.setDate(newDay)},adjustCalendars:function(){this.calendars[0]=adjustCalendar(this.calendars[0]);for(var c=1;c<this._o.numberOfMonths;c++)this.calendars[c]=adjustCalendar({month:this.calendars[0].month+c,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},/**
1468 * change view to a specific month (zero-index, e.g. 0: January) 1469 */ 1470gotoMonth:function(month){isNaN(month)||(this.calendars[0].month=parseInt(month,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},/** 1471 * change view to a specific full year (e.g. "2012") 1472 */ 1473gotoYear:function(year){isNaN(year)||(this.calendars[0].year=parseInt(year,10),this.adjustCalendars())},/** 1474 * change the minDate 1475 */ 1476setMinDate:function(value){value instanceof Date?(setToStartOfDay(value),this._o.minDate=value,this._o.minYear=value.getFullYear(),this._o.minMonth=value.getMonth()):(this._o.minDate=defaults.minDate,this._o.minYear=defaults.minYear,this._o.minMonth=defaults.minMonth,this._o.startRange=defaults.startRange),this.draw()},/** 1477 * change the maxDate 1478 */ 1479setMaxDate:function(value){value instanceof Date?(setToStartOfDay(value),this._o.maxDate=value,this._o.maxYear=value.getFullYear(),this._o.maxMonth=value.getMonth()):(this._o.maxDate=defaults.maxDate,this._o.maxYear=defaults.maxYear,this._o.maxMonth=defaults.maxMonth,this._o.endRange=defaults.endRange),this.draw()},setStartRange:function(value){this._o.startRange=value},setEndRange:function(value){this._o.endRange=value},/** 1480 * refresh the HTML 1481 */ 1482draw:function(force){if(this._v||force){var randId,opts=this._o,minYear=opts.minYear,maxYear=opts.maxYear,minMonth=opts.minMonth,maxMonth=opts.maxMonth,html="";this._y<=minYear&&(this._y=minYear,!isNaN(minMonth)&&this._m<minMonth&&(this._m=minMonth)),this._y>=maxYear&&(this._y=maxYear,!isNaN(maxMonth)&&this._m>maxMonth&&(this._m=maxMonth)),randId="pika-title-"+Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,2);for(var c=0;c<opts.numberOfMonths;c++)html+='<div class="pika-lendar">'+renderTitle(this,c,this.calendars[c].year,this.calendars[c].month,this.calendars[0].year,randId)+this.render(this.calendars[c].year,this.calendars[c].month,randId)+"</div>";this.el.innerHTML=html,opts.bound&&"hidden"!==opts.field.type&&sto(function(){opts.trigger.focus()},1),"function"==typeof this._o.onDraw&&this._o.onDraw(this),opts.bound&& 1483// let the screen reader user know to use arrow keys 1484opts.field.setAttribute("aria-label","Use the arrow keys to pick a date")}},adjustPosition:function(){var field,pEl,width,height,viewportWidth,viewportHeight,scrollTop,left,top,clientRect;if(!this._o.container){if(this.el.style.position="absolute",field=this._o.trigger,pEl=field,width=this.el.offsetWidth,height=this.el.offsetHeight,viewportWidth=window.innerWidth||document.documentElement.clientWidth,viewportHeight=window.innerHeight||document.documentElement.clientHeight,scrollTop=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,"function"==typeof field.getBoundingClientRect)clientRect=field.getBoundingClientRect(),left=clientRect.left+window.pageXOffset,top=clientRect.bottom+window.pageYOffset;else for(left=pEl.offsetLeft,top=pEl.offsetTop+pEl.offsetHeight;pEl=pEl.offsetParent;)left+=pEl.offsetLeft,top+=pEl.offsetTop; 1485// default position is bottom & left 1486(this._o.reposition&&left+width>viewportWidth||this._o.position.indexOf("right")>-1&&left-width+field.offsetWidth>0)&&(left=left-width+field.offsetWidth),(this._o.reposition&&top+height>viewportHeight+scrollTop||this._o.position.indexOf("top")>-1&&top-height-field.offsetHeight>0)&&(top=top-height-field.offsetHeight),this.el.style.left=left+"px",this.el.style.top=top+"px"}},/** 1487 * render HTML for a particular month 1488 */ 1489render:function(year,month,randId){var opts=this._o,now=new Date,days=getDaysInMonth(year,month),before=new Date(year,month,1).getDay(),data=[],row=[];setToStartOfDay(now),opts.firstDay>0&&(before-=opts.firstDay)<0&&(before+=7);for(var previousMonth=0===month?11:month-1,nextMonth=11===month?0:month+1,yearOfPreviousMonth=0===month?year-1:year,yearOfNextMonth=11===month?year+1:year,daysInPreviousMonth=getDaysInMonth(yearOfPreviousMonth,previousMonth),cells=days+before,after=cells;after>7;)after-=7;cells+=7-after;for(var isWeekSelected=!1,i=0,r=0;i<cells;i++){var day=new Date(year,month,i-before+1),isSelected=!!isDate(this._d)&&compareDates(day,this._d),isToday=compareDates(day,now),hasEvent=-1!==opts.events.indexOf(day.toDateString()),isEmpty=i<before||i>=days+before,dayNumber=i-before+1,monthNumber=month,yearNumber=year,isStartRange=opts.startRange&&compareDates(opts.startRange,day),isEndRange=opts.endRange&&compareDates(opts.endRange,day),isInRange=opts.startRange&&opts.endRange&&opts.startRange<day&&day<opts.endRange,isDisabled=opts.minDate&&day<opts.minDate||opts.maxDate&&day>opts.maxDate||opts.disableWeekends&&isWeekend(day)||opts.disableDayFn&&opts.disableDayFn(day);isEmpty&&(i<before?(dayNumber=daysInPreviousMonth+dayNumber,monthNumber=previousMonth,yearNumber=yearOfPreviousMonth):(dayNumber-=days,monthNumber=nextMonth,yearNumber=yearOfNextMonth));var dayConfig={day:dayNumber,month:monthNumber,year:yearNumber,hasEvent:hasEvent,isSelected:isSelected,isToday:isToday,isDisabled:isDisabled,isEmpty:isEmpty,isStartRange:isStartRange,isEndRange:isEndRange,isInRange:isInRange,showDaysInNextAndPreviousMonths:opts.showDaysInNextAndPreviousMonths};opts.pickWholeWeek&&isSelected&&(isWeekSelected=!0),row.push(renderDay(dayConfig)),7==++r&&(opts.showWeekNumber&&row.unshift(renderWeek(i-before,month,year)),data.push(renderRow(row,opts.isRTL,opts.pickWholeWeek,isWeekSelected)),row=[],r=0,isWeekSelected=!1)}return renderTable(opts,data,randId)},isVisible:function(){return this._v},show:function(){this.isVisible()||(this._v=!0,this.draw(),this._o.bound&&(addEvent(document,"click",this._onClick),this.adjustPosition()),removeClass(this.el,"is-hidden"),"function"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var v=this._v;!1!==v&&(this._o.bound&&removeEvent(document,"click",this._onClick),this.el.style.position="static",// reset 1490this.el.style.left="auto",this.el.style.top="auto",addClass(this.el,"is-hidden"),this._v=!1,void 0!==v&&"function"==typeof this._o.onClose&&this._o.onClose.call(this))},/** 1491 * GAME OVER 1492 */ 1493destroy:function(){this.hide(),removeEvent(this.el,"mousedown",this._onMouseDown,!0),removeEvent(this.el,"touchend",this._onMouseDown,!0),removeEvent(this.el,"change",this._onChange),this._o.field&&(removeEvent(this._o.field,"change",this._onInputChange),this._o.bound&&(removeEvent(this._o.trigger,"click",this._onInputClick),removeEvent(this._o.trigger,"focus",this._onInputFocus),removeEvent(this._o.trigger,"blur",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},Pikaday}),/*! 1494 * Pikaday jQuery plugin. 1495 * 1496 * Copyright © 2013 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday 1497 */ 1498function(root,factory){"use strict";"object"==typeof exports? 1499// CommonJS module 1500factory(require("jquery"),require("../pikaday")):"function"==typeof define&&define.amd? 1501// AMD. Register as an anonymous module. 1502define(["jquery","pikaday"],factory): 1503// Browser globals 1504factory(root.jQuery,root.Pikaday)}(this,function($,Pikaday){"use strict";$.fn.pikaday=function(){var args=arguments;return args&&args.length||(args=[{}]),this.each(function(){var self=$(this),plugin=self.data("pikaday");if(plugin instanceof Pikaday)"string"==typeof args[0]&&"function"==typeof plugin[args[0]]&&(plugin[args[0]].apply(
1504plugin,Array.prototype.slice.call(args,1)),"destroy"===args[0]&&self.removeData("pikaday"));else if("object"==typeof args[0]){var options=$.extend({},args[0]);options.field=self[0],self.data("pikaday",new Pikaday(options))}})}}),/*! 1505 * jquery-timepicker v1.11.10 - A jQuery timepicker plugin inspired by Google Calendar. It supports both mouse and keyboard navigation. 1506 * Copyright (c) 2015 Jon Thornton - http://jonthornton.github.com/jquery-timepicker/ 1507 * License: MIT 1508 */ 1509function(factory){"object"==typeof exports&&exports&&"object"==typeof module&&module&&module.exports===exports? 1510// Browserify. Attach to jQuery module. 1511factory(require("jquery")):"function"==typeof define&&define.amd? 1512// AMD. Register as an anonymous module. 1513define(["jquery"],factory): 1514// Browser globals 1515factory(jQuery)}(function($){ 1516// private methods 1517function _isVisible(elem){var el=elem[0];return el.offsetWidth>0&&el.offsetHeight>0}function _parseSettings(settings){if(settings.minTime&&(settings.minTime=_time2int(settings.minTime)),settings.maxTime&&(settings.maxTime=_time2int(settings.maxTime)),settings.durationTime&&"function"!=typeof settings.durationTime&&(settings.durationTime=_time2int(settings.durationTime)),"now"==settings.scrollDefault)settings.scrollDefault=function(){return settings.roundingFunction(_time2int(new Date),settings)};else if(settings.scrollDefault&&"function"!=typeof settings.scrollDefault){var val=settings.scrollDefault;settings.scrollDefault=function(){return settings.roundingFunction(_time2int(val),settings)}}else settings.minTime&&(settings.scrollDefault=function(){return settings.roundingFunction(settings.minTime,settings)});if("string"===$.type(settings.timeFormat)&&settings.timeFormat.match(/[gh]/)&&(settings._twelveHourTime=!0),!1===settings.showOnFocus&&-1!=settings.showOn.indexOf("focus")&&settings.showOn.splice(settings.showOn.indexOf("focus"),1),settings.disableTimeRanges.length>0){ 1518// convert string times to integers 1519for(var i in settings.disableTimeRanges)settings.disableTimeRanges[i]=[_time2int(settings.disableTimeRanges[i][0]),_time2int(settings.disableTimeRanges[i][1])]; 1520// sort by starting time 1521settings.disableTimeRanges=settings.disableTimeRanges.sort(function(a,b){return a[0]-b[0]}); 1522// merge any overlapping ranges 1523for(var i=settings.disableTimeRanges.length-1;i>0;i--)settings.disableTimeRanges[i][0]<=settings.disableTimeRanges[i-1][1]&&(settings.disableTimeRanges[i-1]=[Math.min(settings.disableTimeRanges[i][0],settings.disableTimeRanges[i-1][0]),Math.max(settings.disableTimeRanges[i][1],settings.disableTimeRanges[i-1][1])],settings.disableTimeRanges.splice(i,1))}return settings}function _render(self){var settings=self.data("timepicker-settings"),list=self.data("timepicker-list");if(list&&list.length&&(list.remove(),self.data("timepicker-list",!1)),settings.useSelect){list=$("<select />",{class:"ui-timepicker-select"});var wrapped_list=list}else{list=$("<ul />",{class:"ui-timepicker-list"});var wrapped_list=$("<div />",{class:"ui-timepicker-wrapper",tabindex:-1});wrapped_list.css({display:"none",position:"absolute"}).append(list)}if(settings.noneOption)if(!0===settings.noneOption&&(settings.noneOption=settings.useSelect?"Time...":"None"),$.isArray(settings.noneOption)){for(var i in settings.noneOption)if(parseInt(i,10)==i){var noneElement=_generateNoneElement(settings.noneOption[i],settings.useSelect);list.append(noneElement)}}else{var noneElement=_generateNoneElement(settings.noneOption,settings.useSelect);list.append(noneElement)}if(settings.className&&wrapped_list.addClass(settings.className),(null!==settings.minTime||null!==settings.durationTime)&&settings.showDuration){"function"==typeof settings.step||settings.step;wrapped_list.addClass("ui-timepicker-with-duration"),wrapped_list.addClass("ui-timepicker-step-"+settings.step)}var durStart=settings.minTime;"function"==typeof settings.durationTime?durStart=_time2int(settings.durationTime()):null!==settings.durationTime&&(durStart=settings.durationTime);var start=null!==settings.minTime?settings.minTime:0,end=null!==settings.maxTime?settings.maxTime:start+_ONE_DAY-1;end<start&&( 1524// make sure the end time is greater than start time, otherwise there will be no list to show 1525end+=_ONE_DAY),end===_ONE_DAY-1&&"string"===$.type(settings.timeFormat)&&settings.show2400&&( 1526// show a 24:00 option when using military time 1527end=_ONE_DAY);var dr=settings.disableTimeRanges,drCur=0,drLen=dr.length,stepFunc=settings.step;"function"!=typeof stepFunc&&(stepFunc=function(){return settings.step});for(var i=start,j=0;i<=end;j++,i+=60*stepFunc(j)){var timeInt=i,timeString=_int2time(timeInt,settings);if(settings.useSelect){var row=$("<option />",{value:timeString});row.text(timeString)}else{var row=$("<li />");row.addClass(timeInt%_ONE_DAY<_ONE_DAY/2?"ui-timepicker-am":"ui-timepicker-pm"),row.data("time",_moduloSeconds(timeInt,settings)),row.text(timeString)}if((null!==settings.minTime||null!==settings.durationTime)&&settings.showDuration){var durationString=_int2duration(i-durStart,settings.step);if(settings.useSelect)row.text(row.text()+" ("+durationString+")");else{var duration=$("<span />",{class:"ui-timepicker-duration"});duration.text(" ("+durationString+")"),row.append(duration)}}drCur<drLen&&(timeInt>=dr[drCur][1]&&(drCur+=1),dr[drCur]&&timeInt>=dr[drCur][0]&&timeInt<dr[drCur][1]&&(settings.useSelect?row.prop("disabled",!0):row.addClass("ui-timepicker-disabled"))),list.append(row)}if(wrapped_list.data("timepicker-input",self),self.data("timepicker-list",wrapped_list),settings.useSelect)self.val()&&list.val(_roundAndFormatTime(_time2int(self.val()),settings)),list.on("focus",function(){$(this).data("timepicker-input").trigger("showTimepicker")}),list.on("blur",function(){$(this).data("timepicker-input").trigger("hideTimepicker")}),list.on("change",function(){_setTimeValue(self,$(this).val(),"select")}),_setTimeValue(self,list.val(),"initial"),self.hide().after(list);else{var appendTo=settings.appendTo;"string"==typeof appendTo?appendTo=$(appendTo):"function"==typeof appendTo&&(appendTo=appendTo(self)),appendTo.append(wrapped_list),_setSelected(self,list),list.on("mousedown click","li",function(e){ 1528// hack: temporarily disable the focus handler 1529// to deal with the fact that IE fires 'focus' 1530// events asynchronously 1531self.off("focus.timepicker"),self.on("focus.timepicker-ie-hack",function(){self.off("focus.timepicker-ie-hack"),self.on("focus.timepicker",methods.show)}),_hideKeyboard(self)||self[0].focus(), 1532// make sure only the clicked row is selected 1533list.find("li").removeClass("ui-timepicker-selected"),$(this).addClass("ui-timepicker-selected"),_selectValue(self)&&(self.trigger("hideTimepicker"),list.on("mouseup.timepicker click.timepicker","li",function(e){list.off("mouseup.timepicker click.timepicker"),wrapped_list.hide()}))})}}function _generateNoneElement(optionValue,useSelect){var label,className,value;return"object"==typeof optionValue?(label=optionValue.label,className=optionValue.className,value=optionValue.value):"string"==typeof optionValue?label=optionValue:$.error("Invalid noneOption value"),useSelect?$("<option />",{value:value,class:className,text:label}):$("<li />",{class:className,text:label}).data("time",String(value))}function _roundAndFormatTime(seconds,settings){if(null!==(seconds=settings.roundingFunction(seconds,settings)))return _int2time(seconds,settings)} 1534// event handler to decide whether to close timepicker 1535function _closeHandler(e){if(e.target!=window){var target=$(e.target);target.closest(".ui-timepicker-input").length||target.closest(".ui-timepicker-wrapper").length||(methods.hide(),$(document).unbind(".ui-timepicker"),$(window).unbind(".ui-timepicker"))}}function _hideKeyboard(self){var settings=self.data("timepicker-settings");return(window.navigator.msMaxTouchPoints||"ontouchstart"in document)&&settings.disableTouchKeyboard}function _findRow(self,list,value){if(!value&&0!==value)return!1;var settings=self.data("timepicker-settings"),out=!1,value=settings.roundingFunction(value,settings); 1536// loop through the menu items 1537return list.find("li").each(function(i,obj){var jObj=$(obj);if("number"==typeof jObj.data("time"))return jObj.data("time")==value?(out=jObj,!1):void 0}),out}function _setSelected(self,list){list.find("li").removeClass("ui-timepicker-selected");var timeValue=_time2int(_getTimeValue(self),self.data("timepicker-settings"));if(null!==timeValue){var selected=_findRow(self,list,timeValue);if(selected){var topDelta=selected.offset().top-list.offset().top;(topDelta+selected.outerHeight()>list.outerHeight()||topDelta<0)&&list.scrollTop(list.scrollTop()+selected.position().top-selected.outerHeight()),selected.addClass("ui-timepicker-selected")}}}function _formatValue(e,origin){if("timepicker"!=origin){var self=$(this);if(""===this.value)return void _setTimeValue(self,null,origin);if(!self.is(":focus")||e&&"change"==e.type){var settings=self.data("timepicker-settings"),seconds=_time2int(this.value,settings);if(null===seconds)return void self.trigger("timeFormatError");var rangeError=!1;if(
1538// check that the time in within bounds 1539null!==settings.minTime&&null!==settings.maxTime&&(seconds<settings.minTime||seconds>settings.maxTime)&&(rangeError=!0), 1540// check that time isn't within disabled time ranges 1541$.each(settings.disableTimeRanges,function(){if(seconds>=this[0]&&seconds<this[1])return rangeError=!0,!1}),settings.forceRoundTime){var roundSeconds=settings.roundingFunction(seconds,settings);roundSeconds!=seconds&&(seconds=roundSeconds,origin=null)}var prettyTime=_int2time(seconds,settings);rangeError?(_setTimeValue(self,prettyTime,"error")||e&&"change"==e.type)&&self.trigger("timeRangeError"):_setTimeValue(self,prettyTime,origin)}}}function _getTimeValue(self){return self.is("input")?self.val():self.data("ui-timepicker-value")}function _setTimeValue(self,value,source){if(self.is("input")){self.val(value);var settings=self.data("timepicker-settings");settings.useSelect&&"select"!=source&&"initial"!=source&&self.data("timepicker-list").val(_roundAndFormatTime(_time2int(value),settings))}return self.data("ui-timepicker-value")!=value?(self.data("ui-timepicker-value",value),"select"==source?self.trigger("selectTime").trigger("changeTime").trigger("change","timepicker"):-1==["error","initial"].indexOf(source)&&self.trigger("changeTime"),!0):(self.trigger("selectTime"),!1)}/* 1542 * Filter freeform input 1543 */ 1544function _disableTextInputHandler(e){switch(e.keyCode){case 13:// return 1545case 9://tab 1546return;default:e.preventDefault()}}/* 1547 * Keyboard navigation via arrow keys 1548 */ 1549function _keydownhandler(e){var self=$(this),list=self.data("timepicker-list");if(!list||!_isVisible(list)){if(40!=e.keyCode)return!0; 1550// show the list! 1551methods.show.call(self.get(0)),list=self.data("timepicker-list"),_hideKeyboard(self)||self.focus()}switch(e.keyCode){case 13:// return 1552return _selectValue(self)&&(_formatValue.call(self.get(0),{type:"change"}),methods.hide.apply(this)),e.preventDefault(),!1;case 38:// up 1553var selected=list.find(".ui-timepicker-selected");return selected.length?selected.is(":first-child")||(selected.removeClass("ui-timepicker-selected"),selected.prev().addClass("ui-timepicker-selected"),selected.prev().position().top<selected.outerHeight()&&list.scrollTop(list.scrollTop()-selected.outerHeight())):(list.find("li").each(function(i,obj){if($(obj).position().top>0)return selected=$(obj),!1}),selected.addClass("ui-timepicker-selected")),!1;case 40:// down 1554return selected=list.find(".ui-timepicker-selected"),0===selected.length?(list.find("li").each(function(i,obj){if($(obj).position().top>0)return selected=$(obj),!1}),selected.addClass("ui-timepicker-selected")):selected.is(":last-child")||(selected.removeClass("ui-timepicker-selected"),selected.next().addClass("ui-timepicker-selected"),selected.next().position().top+2*selected.outerHeight()>list.outerHeight()&&list.scrollTop(list.scrollTop()+selected.outerHeight())),!1;case 27:// escape 1555list.find("li").removeClass("ui-timepicker-selected"),methods.hide();break;case 9://tab 1556methods.hide();break;default:return!0}}/* 1557 * Time typeahead 1558 */ 1559function _keyuphandler(e){var self=$(this),list=self.data("timepicker-list"),settings=self.data("timepicker-settings");if(!list||!_isVisible(list)||settings.disableTextInput)return!0;switch(e.keyCode){case 96:// numpad numerals 1560case 97:case 98:case 99:case 100:case 101:case 102:case 103:case 104:case 105:case 48:// numerals 1561case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 65:// a 1562case 77:// m 1563case 80:// p 1564case 186:// colon 1565case 8:// backspace 1566case 46:// delete 1567settings.typeaheadHighlight?_setSelected(self,list):list.hide()}}function _selectValue(self){var settings=self.data("timepicker-settings"),list=self.data("timepicker-list"),timeValue=null,cursor=list.find(".ui-timepicker-selected"); 1568// selected value found 1569return!cursor.hasClass("ui-timepicker-disabled")&&(cursor.length&&(timeValue=cursor.data("time")),null!==timeValue&&("string"!=typeof timeValue&&(timeValue=_int2time(timeValue,settings)),_setTimeValue(self,timeValue,"select")),!0)}function _int2duration(seconds,step){seconds=Math.abs(seconds);var hours,mins,minutes=Math.round(seconds/60),duration=[]; 1570// Only show (x mins) under 1 hour 1571// Show decimal notation (eg: 1.5 hrs) for 30 minute steps 1572// Show remainder minutes notation (eg: 1 hr 15 mins) for non-30 minute steps 1573// and only if there are remainder minutes to show 1574return minutes<60?duration=[minutes,_lang.mins]:(hours=Math.floor(minutes/60),mins=minutes%60,30==step&&30==mins&&(hours+=_lang.decimal+5),duration.push(hours),duration.push(1==hours?_lang.hr:_lang.hrs),30!=step&&mins&&(duration.push(mins),duration.push(_lang.mins))),duration.join(" ")}function _int2time(timeInt,settings){if("number"!=typeof timeInt)return null;var seconds=parseInt(timeInt%60),minutes=parseInt(timeInt/60%60),hours=parseInt(timeInt/3600%24),time=new Date(1970,0,2,hours,minutes,seconds,0);if(isNaN(time.getTime()))return null;if("function"===$.type(settings.timeFormat))return settings.timeFormat(time);for(var hour,code,output="",i=0;i<settings.timeFormat.length;i++)switch(code=settings.timeFormat.charAt(i)){case"a":output+=time.getHours()>11?_lang.pm:_lang.am;break;case"A":output+=time.getHours()>11?_lang.PM:_lang.AM;break;case"g":hour=time.getHours()%12,output+=0===hour?"12":hour;break;
1574case"G":hour=time.getHours(),timeInt===_ONE_DAY&&(hour=settings.show2400?24:0),output+=hour;break;case"h":hour=time.getHours()%12,0!==hour&&hour<10&&(hour="0"+hour),output+=0===hour?"12":hour;break;case"H":hour=time.getHours(),timeInt===_ONE_DAY&&(hour=settings.show2400?24:0),output+=hour>9?hour:"0"+hour;break;case"i":var minutes=time.getMinutes();output+=minutes>9?minutes:"0"+minutes;break;case"s":seconds=time.getSeconds(),output+=seconds>9?seconds:"0"+seconds;break;case"\\": 1575// escape character; add the next character and skip ahead 1576i++,output+=settings.timeFormat.charAt(i);break;default:output+=code}return output}function _time2int(timeString,settings){if(""===timeString||null===timeString)return null;if("object"==typeof timeString)return 3600*timeString.getHours()+60*timeString.getMinutes()+timeString.getSeconds();if("string"!=typeof timeString)return timeString;timeString=timeString.toLowerCase().replace(/[\s\.]/g,""), 1577// if the last character is an "a" or "p", add the "m" 1578"a"!=timeString.slice(-1)&&"p"!=timeString.slice(-1)||(timeString+="m");var ampmRegex="("+_lang.am.replace(".","")+"|"+_lang.pm.replace(".","")+"|"+_lang.AM.replace(".","")+"|"+_lang.PM.replace(".","")+")?",pattern=new RegExp("^"+ampmRegex+"([0-9]?[0-9])\\W?([0-5][0-9])?\\W?([0-5][0-9])?"+ampmRegex+"$"),time=timeString.match(pattern);if(!time)return null;var hour=parseInt(1*time[2],10);if(hour>24){if(settings&&!1===settings.wrapHours)return null;hour%=24}var ampm=time[1]||time[5],hours=hour;if(hour<=12&&m){var isPm=ampm==_lang.pm||ampm==_lang.PM;hours=12==hour?isPm?12:0:hour+(isPm?12:0)}var minutes=1*time[3]||0,seconds=1*time[4]||0,timeInt=3600*hours+60*minutes+seconds; 1579// if no am/pm provided, intelligently guess based on the scrollDefault 1580if(hour<12&&!ampm&&settings&&settings._twelveHourTime&&settings.scrollDefault){var delta=timeInt-settings.scrollDefault();delta<0&&delta>=_ONE_DAY/-2&&(timeInt=(timeInt+_ONE_DAY/2)%_ONE_DAY)}return timeInt}function _moduloSeconds(seconds,settings){return seconds==_ONE_DAY&&settings.show2400?seconds:seconds%_ONE_DAY}var _ONE_DAY=86400,_lang={am:"am",pm:"pm",AM:"AM",PM:"PM",decimal:".",mins:"mins",hr:"hr",hrs:"hrs"},_DEFAULTS={appendTo:"body",className:null,closeOnWindowScroll:!1,disableTextInput:!1,disableTimeRanges:[],disableTouchKeyboard:!1,durationTime:null,forceRoundTime:!1,maxTime:null,minTime:null,noneOption:!1,orientation:"l",roundingFunction:function(seconds,settings){if(null===seconds)return null;if("number"!=typeof settings.step) 1581// TODO: nearest fit irregular steps 1582return seconds;var offset=seconds%(60*settings.step); 1583// adjust offset by start mod step so that the offset is aligned not to 00:00 but to the start 1584// if offset is larger than a half step, round up 1585// round down 1586return offset-=(settings.minTime||0)%(60*settings.step),offset>=30*settings.step?seconds+=60*settings.step-offset:seconds-=offset,_moduloSeconds(seconds,settings)},scrollDefault:null,selectOnBlur:!1,show2400:!1,showDuration:!1,showOn:["click","focus"],showOnFocus:!0,step:30,stopScrollPropagation:!1,timeFormat:"g:ia",typeaheadHighlight:!0,useSelect:!1,wrapHours:!0},methods={init:function(options){return this.each(function(){var self=$(this),attributeOptions=[];for(var key in _DEFAULTS)self.data(key)&&(attributeOptions[key]=self.data(key));var settings=$.extend({},_DEFAULTS,options,attributeOptions);if(settings.lang&&(_lang=$.extend(_lang,settings.lang)),settings=_parseSettings(settings),self.data("timepicker-settings",settings),self.addClass("ui-timepicker-input"),settings.useSelect)_render(self);else{if(self.prop("autocomplete","off"),settings.showOn)for(var i in settings.showOn)self.on(settings.showOn[i]+".timepicker",methods.show);self.on("change.timepicker",_formatValue),self.on("keydown.timepicker",_keydownhandler),self.on("keyup.timepicker",_keyuphandler),settings.disableTextInput&&self.on("keydown.timepicker",_disableTextInputHandler),_formatValue.call(self.get(0),null,"initial")}})},show:function(e){var self=$(this),settings=self.data("timepicker-settings");if(e&&e.preventDefault(),settings.useSelect)return void self.data("timepicker-list").focus();_hideKeyboard(self)&& 1587// block the keyboard on mobile devices 1588self.blur();var list=self.data("timepicker-list"); 1589// check if input is readonly 1590if(!self.prop("readonly")&&( 1591// check if list needs to be rendered 1592list&&0!==list.length&&"function"!=typeof settings.durationTime||(_render(self),list=self.data("timepicker-list")),!_isVisible(list))){self.data("ui-timepicker-value",self.val()),_setSelected(self,list), 1593// make sure other pickers are hidden 1594methods.hide(), 1595// position the dropdown relative to the input 1596list.show();var listOffset={};settings.orientation.match(/r/)? 1597// right-align the dropdown 1598listOffset.left=self.offset().left+self.outerWidth()-list.outerWidth()+parseInt(list.css("marginLeft").replace("px",""),10): 1599// left-align the dropdown 1600listOffset.left=self.offset().left+parseInt(list.css("marginLeft").replace("px",""),10);var verticalOrientation;verticalOrientation=settings.orientation.match(/t/)?"t":settings.orientation.match(/b/)?"b":self.offset().top+self.outerHeight(!0)+list.outerHeight()>$(window).height()+$(window).scrollTop()?"t":"b","t"==verticalOrientation?( 1601// position the dropdown on top 1602list.addClass("ui-timepicker-positioned-top"),listOffset.top=self.offset().top-list.outerHeight()+parseInt(list.css("marginTop").replace("px",""),10)):( 1603// put it under the input 1604list.removeClass("ui-timepicker-positioned-top"),listOffset.top=self.offset().top+self.outerHeight()+parseInt(list.css("marginTop").replace("px",""),10)),list.offset(listOffset); 1605// position scrolling 1606var selected=list.find(".ui-timepicker-selected");if(!selected.length){var timeInt=_time2int(_getTimeValue(self));null!==timeInt?selected=_findRow(self,list,timeInt):settings.scrollDefault&&(selected=_findRow(self,list,settings.scrollDefault()))}if( 1607// if not found or disabled, intelligently find first selectable element 1608selected.length&&!selected.hasClass("ui-timepicker-disabled")||(selected=list.find("li:not(.ui-timepicker-disabled):first")),selected&&selected.length){var topOffset=list.scrollTop()+selected.position().top-selected.outerHeight();list.scrollTop(topOffset)}else list.scrollTop(0); 1609// prevent scroll propagation 1610// attach close handlers 1611return settings.stopScrollPropagation&&$(document).on("wheel.ui-timepicker",".ui-timepicker-wrapper",function(e){e.preventDefault();var currentScroll=$(this).scrollTop();$(this).scrollTop(currentScroll+e.originalEvent.deltaY)}),$(document).on("touchstart.ui-timepicker mousedown.ui-timepicker",_closeHandler),$(window).on("resize.ui-timepicker",_closeHandler),settings.closeOnWindowScroll&&$(document).on("scroll.ui-timepicker",_closeHandler),self.trigger("showTimepicker"),this}},hide:function(e){var self=$(this),settings=self.data("timepicker-settings");return settings&&settings.useSelect&&self.blur(),$(".ui-timepicker-wrapper").each(function(){var list=$(this);if(_isVisible(list)){var self=list.data("timepicker-input"),settings=self.data("timepicker-settings");settings&&settings.selectOnBlur&&_selectValue(self),list.hide(),self.trigger("hideTimepicker")}}),this},option:function(key,value){return"string"==typeof key&&void 0===value?$(this).data("timepicker-settings")[key]:this.each(function(){var self=$(this),settings=self.data("timepicker-settings"),list=self.data("timepicker-list");"object"==typeof key?settings=$.extend(settings,key):"string"==typeof key&&(settings[key]=value),settings=_parseSettings(settings),self.data("timepicker-settings",settings),_formatValue.call(self.get(0),{type:"change"},"initial"),list&&(list.remove(),self.data("timepicker-list",!1)),settings.useSelect&&_render(self)})},getSecondsFromMidnight:function(){return _time2int(_getTimeValue(this))},getTime:function(relative_date){var self=this,time_string=_getTimeValue(self);
1611if(!time_string)return null;var offset=_time2int(time_string);if(null===offset)return null;relative_date||(relative_date=new Date); 1612// construct a Date from relative date, and offset's time 1613var time=new Date(relative_date);return time.setHours(offset/3600),time.setMinutes(offset%3600/60),time.setSeconds(offset%60),time.setMilliseconds(0),time},isVisible:function(){var self=this,list=self.data("timepicker-list");return!(!list||!_isVisible(list))},setTime:function(value){var self=this,settings=self.data("timepicker-settings");if(settings.forceRoundTime)var prettyTime=_roundAndFormatTime(_time2int(value),settings);else var prettyTime=_int2time(_time2int(value),settings);return value&&null===prettyTime&&settings.noneOption&&(prettyTime=value),self.val(prettyTime),_formatValue.call(self.get(0),{type:"change"}),self.data("timepicker-list")&&_setSelected(self,self.data("timepicker-list")),this},remove:function(){var self=this; 1614// check if this element is a timepicker 1615if(self.hasClass("ui-timepicker-input")){var settings=self.data("timepicker-settings"); 1616// timepicker-list won't be present unless the user has interacted with this timepicker 1617return self.removeAttr("autocomplete","off"),self.removeClass("ui-timepicker-input"),self.removeData("timepicker-settings"),self.off(".timepicker"),self.data("timepicker-list")&&self.data("timepicker-list").remove(),settings.useSelect&&self.show(),self.removeData("timepicker-list"),this}}}; 1618// Plugin entry 1619$.fn.timepicker=function(method){ 1620// check if this element is a timepicker 1621return this.length?methods[method]?this.hasClass("ui-timepicker-input")?methods[method].apply(this,Array.prototype.slice.call(arguments,1)):this:"object"!=typeof method&&method?void $.error("Method "+method+" does not exist on jQuery.timepicker"):methods.init.apply(this,arguments):this}}),/* 1622 * Accordion v2.0.015? 1623 * Copyright (c) 2018 AYC Media 1624 * Dual licensed under the MIT and GPL licenses: 1625 * http://www.opensource.org/licenses/mit-license.php 1626 * http://www.gnu.org/licenses/gpl.html 1627*/ 1628function($){$.fn.accordion=function(options){return this.each(function(){function set_tabindex(current,activate){var new_tabindex=-1;activate&&(new_tabindex=0),$(current).parent().find(".accordion-content").find("a, button, [tabindex], h1, h2, h3, h4, h5, h6, p, img, .error").each(function(i){$(this).attr("tabindex",new_tabindex)})}function open_accordion(current){setTimeout(function(){set_tabindex(current,!0),$(current).parent().addClass("active"),$(current).attr("aria-expanded","true"),$(current).parent().find(".accordion-content").attr("aria-hidden","false"),$(current).parent().find(".accordion-content-inner").attr("tabindex",0).focus(),$("html, body").animate({scrollTop:$(current).offset().top-250},1e3)},1e3)}function close_accordion(current){set_tabindex(current,!1),$(current).parent().removeClass("active"),$(current).attr("aria-expanded","false"),$(current).parent().find(".accordion-content").attr("aria-hidden","true"),$(current).parent().find(".accordion-content-inner").removeAttr("tabindex")}var target=this;({init:function(){$(".accordion .accordion-content").find('a, button, [tabindex]:not([tabindex="0"]):not([tabindex^="-"]), h1, h2, h3, h4, h5, h6, p, img, .error').each(function(i){$(this).attr("tabindex",-1)});var all_accordions=$(".accordion .accordion-toggle");$(target).find(".accordion-toggle").click(function(){var $is_active=$(this),$notActive=$(all_accordions).not($is_active);$($notActive).each(function(){close_accordion($(this))}),$is_active.parent().hasClass("active")?close_accordion($is_active):open_accordion($is_active)})}}).init()})}}(jQuery),/*! 1629 * Custom Checkbox v0.1 1630 * Copyright (c) 2014 Brandon Miller 1631 * Dual licensed under the MIT and GPL licenses: 1632 * http://www.opensource.org/licenses/mit-license.php 1633 * http://www.gnu.org/licenses/gpl.html 1634**/ 1635function($){$.fn.customChbx=function(options){return this.each(function(){ 1636// Variables 1637var $input=$(this),inputType=$input.attr("type"),defaults={offTxt:$input.attr("data-chbx-offtxt")||"",onTxt:$input.attr("data-chbx-ontxt")||""},settings=$.extend({},defaults,options),plugin={ 1638// Add Structure 1639addStructure:function(){$input.after(function(){return'<div class="chbx-wrap"><div class="chbx-btn"><span class="chbx-icon"></span><span class="chbx-txt">'+settings.offTxt+"</span></div></div>"}),$input.appendTo($input.next()), 1640// Calls 1641plugin.startingState(),"checkbox"==inputType?plugin.chbxChangeState():"radio"==inputType?plugin.radioChangeState():alert("Please use chbx.js for checkboxes and radio buttons only.")}, 1642// Starting State 1643startingState:function(){$input.prop("checked")&&$input.parent().addClass("on").find(".chbx-txt").html(sett
vendor: 31,077 bytes, lines 1643-1674
1643ings.onTxt)}, 1644// Checkbox Change State 1645chbxChangeState:function(){$input.on("change",function(){var $this=$(this);$this.prop("checked")?// if checked already 1646$this.parent().addClass("on").find(".chbx-txt").html(settings.onTxt):// if not checked 1647$this.parent().removeClass("on").find(".chbx-txt").html(settings.offTxt)})}, 1648// Radio Change State 1649radioChangeState:function(){$input.on("change",function(){var $this=$(this),inputName=($this.parent(),$this.attr("name"));if($this.prop("checked")){var i,inputNames=document.getElementsByName(inputName),inputNamesLen=inputNames.length;for(i=0;i<inputNamesLen;i++)"radio"==inputNames[i].type&&$(inputNames[i]).parent().removeClass("on").find(".chbx-txt").html(settings.offTxt);$this.parent().addClass("on").find(".chbx-txt").html(settings.onTxt)}})}, 1650// Initialize Main Code 1651init:function(){""==settings.offTxt&&""==settings.onTxt||$input.parent().addClass("chbx-hastext"),plugin.addStructure()}}; 1652// START IT ALL 1653plugin.init()})}}(jQuery),/* Chosen v1.8.7 | (c) 2011-2018 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */ 1654function(){var t,e,s,i,n=function(t,e){return function(){return t.apply(e,arguments)}},r=function(t,e){function s(){this.constructor=t}for(var i in e)o.call(e,i)&&(t[i]=e[i]);return s.prototype=e.prototype,t.prototype=new s,t.__super__=e.prototype,t},o={}.hasOwnProperty;(i=function(){function t(){this.options_index=0,this.parsed=[]}return t.prototype.add_node=function(t){return"OPTGROUP"===t.nodeName.toUpperCase()?this.add_group(t):this.add_option(t)},t.prototype.add_group=function(t){var e,s,i,n,r,o;for(e=this.parsed.length,this.parsed.push({array_index:e,group:!0,label:t.label,title:t.title?t.title:void 0,children:0,disabled:t.disabled,classes:t.className}),o=[],s=0,i=(r=t.childNodes).length;s<i;s++)n=r[s],o.push(this.add_option(n,e,t.disabled));return o},t.prototype.add_option=function(t,e,s){if("OPTION"===t.nodeName.toUpperCase())return""!==t.text?(null!=e&&(this.parsed[e].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:t.value,text:t.text,html:t.innerHTML,title:t.title?t.title:void 0,selected:t.selected,disabled:!0===s?s:t.disabled,group_array_index:e,group_label:null!=e?this.parsed[e].label:null,classes:t.className,style:t.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1},t}()).select_to_array=function(t){var e,s,n,r,o;for(r=new i,s=0,n=(o=t.childNodes).length;s<n;s++)e=o[s],r.add_node(e);return r.parsed},e=function(){function t(e,s){this.form_field=e,this.options=null!=s?s:{},this.label_click_handler=n(this.label_click_handler,this),t.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers(),this.on_ready())}return t.prototype.set_default_values=function(){return this.click_test_action=function(t){return function(e){return t.test_active_click(e)}}(this),this.activate_action=function(t){return function(e){return t.activate_field(e)}}(this),this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.is_rtl=this.options.rtl||/\bchosen-rtl\b/.test(this.form_field.className),this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text&&this.options.allow_single_deselect,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null==this.options.enable_split_word_search||this.options.enable_split_word_search,this.group_search=null==this.options.group_search||this.options.group_search,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=null==this.options.single_backstroke_delete||this.options.single_backstroke_delete,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1,this.display_selected_options=null==this.options.display_selected_options||this.options.display_selected_options,this.display_disabled_options=null==this.options.display_disabled_options||this.options.display_disabled_options,this.include_group_label_in_selected=this.options.include_group_label_in_selected||!1,this.max_shown_results=this.options.max_shown_results||Number.POSITIVE_INFINITY,this.case_sensitive_search=this.options.case_sensitive_search||!1,this.hide_results_on_select=null==this.options.hide_results_on_select||this.options.hide_results_on_select},t.prototype.set_default_text=function(){return this.form_field.getAttribute("data-placeholder")?this.default_text=this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.default_text=this.options.placeholder_text_multiple||this.options.placeholder_text||t.default_multiple_text:this.default_text=this.options.placeholder_text_single||this.options.placeholder_text||t.default_single_text,this.default_text=this.escape_html(this.default_text),this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||t.default_no_result_text},t.prototype.choice_label=function(t){return this.include_group_label_in_selected&&null!=t.group_label?"<b class='group-name'>"+this.escape_html(t.group_label)+"</b>"+t.html:t.html},t.prototype.mouse_enter=function(){return this.mouse_on_container=!0},t.prototype.mouse_leave=function(){return this.mouse_on_container=!1},t.prototype.input_focus=function(t){if(this.is_multiple){if(!this.active_field)return setTimeout(function(t){return function(){return t.container_mousedown()}}(this),50)}else if(!this.active_field)return this.activate_field()},t.prototype.input_blur=function(t){if(!this.mouse_on_container)return this.active_field=!1,setTimeout(function(t){return function(){return t.blur_test()}}(this),100)},t.prototype.label_click_handler=function(t){return this.is_multiple?this.container_mousedown(t):this.activate_field()},t.prototype.results_option_build=function(t){var e,s,i,n,r,o,h;for(e="",h=0,n=0,r=(o=this.results_data).length;n<r&&(s=o[n],i="",""!==(i=s.group?this.result_add_group(s):this.result_add_option(s))&&(h++,e+=i),(null!=t?t.first:void 0)&&(s.selected&&this.is_multiple?this.choice_build(s):s.selected&&!this.is_multiple&&this.single_set_selected_text(this.choice_label(s))),!(h>=this.max_shown_results));n++);return e},t.prototype.result_add_option=function(t){var e,s;return t.search_match&&this.include_option_in_results(t)?(e=[],t.disabled||t.selected&&this.is_multiple||e.push("active-result"),!t.disabled||t.selected&&this.is_multiple||e.push("disabled-result"),t.selected&&e.push("result-selected"),null!=t.group_array_index&&e.push("group-option"),""!==t.classes&&e.push(t.classes),s=document.createElement("li"),s.className=e.join(" "),t.style&&(s.style.cssText=t.style),s.setAttribute("data-option-array-index",t.array_index),s.innerHTML=t.highlighted_html||t.html,t.title&&(s.title=t.title),this.outerHTML(s)):""},t.prototype.result_add_group=function(t){var e,s;return(t.search_match||t.group_match)&&t.active_options>0?((e=[]).push("group-result"),t.classes&&e.push(t.classes),s=document.createElement("li"),s.className=e.join(" "),s.innerHTML=t.highlighted_html||this.escape_html(t.label),t.title&&(s.title=t.title),this.outerHTML(s)):""},t.prototype.results_update_field=function(){if(this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.results_build(),this.results_showing)return this.winnow_results()},t.prototype.reset_single_select_options=function(){var t,e,s,i,n;for(n=[],t=0,e=(s=this.results_data).length;t<e;t++)(i=s[t]).selected?n.push(i.selected=!1):n.push(void 0);return n},t.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},t.prototype.results_search=function(t){return this.results_showing?this.winnow_results():this.results_show()},t.prototype.winnow_results=function(t){var e,s,i,n,r,o,h,l,c,_,a,u,d,p,f;for(this.no_results_clear(),_=0,e=(h=this.get_search_text()).replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),c=this.get_search_regex(e),i=0,n=(l=this.results_data).length;i<n;i++)(r=l[i]).search_match=!1,a=null,u=null,r.highlighted_html="",this.include_option_in_results(r)&&(r.group&&(r.group_match=!1,r.active_options=0),null!=r.group_array_index&&this.results_data[r.group_array_index]&&(0===(a=this.results_data[r.group_array_index]).active_options&&a.search_match&&(_+=1),a.active_options+=1),f=r.group?r.label:r.text,r.group&&!this.group_search||(u=this.search_string_match(f,c),r.search_match=null!=u,r.search_match&&!r.group&&(_+=1),r.search_match?(h.length&&(d=u.index,o=f.slice(0,d),s=f.slice(d,d+h.length),p=f.slice(d+h.length),r.highlighted_html=this.escape_html(o)+"<em>"+this.escape_html(s)+"</em>"+this.escape_html(p)),null!=a&&(a.group_match=!0)):null!=r.group_array_index&&this.results_data[r.group_array_index].search_match&&(r.search_match=!0)));return this.result_clear_highlight(),_<1&&h.length?(this.update_results_content(""),this.no_results(h)):(this.update_results_content(this.results_option_build()),(null!=t?t.skip_highlight:void 0)?void 0:this.winnow_results_set_highlight())},t.prototype.get_search_regex=function(t){var e,s;return s=this.search_contains?t:"(^|\\s|\\b)"+t+"[^\\s]*",this.enable_split_word_search||this.search_contains||(s="^"+s),e=this.case_sensitive_search?"":"i",new RegExp(s,e)},t.prototype.search_string_match=function(t,e){var s;return s=e.exec(t),!this.search_contains&&(null!=s?s[1]:void 0)&&(s.index+=1),s},t.prototype.choices_count=function(){var t,e,s;if(null!=this.selected_option_count)return this.selected_option_count;for(this.selected_option_count=0,t=0,e=(s=this.form_field.options).length;t<e;t++)s[t].selected&&(this.selected_option_count+=1);return this.selected_option_count},t.prototype.choices_click=function(t){if(t.preventDefault(),this.activate_field(),!this.results_showing&&!this.is_disabled)return this.results_show()},t.prototype.keydown_checker=function(t){var e,s;switch(s=null!=(e=t.which)?e:t.keyCode,this.search_field_scale(),8!==s&&this.pending_backstroke&&this.clear_backstroke(),s){case 8:this.backstroke_length=this.get_search_field_value().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(t),this.mouse_on_container=!1;break;case 13:case 27:this.results_showing&&t.preventDefault();break;case 32:this.disable_search&&t.preventDefault();break;case 38:t.preventDefault(),this.keyup_arrow();break;case 40:t.preventDefault(),this.keydown_arrow()}},t.prototype.keyup_checker=function(t){var e,s;switch(s=null!=(e=t.which)?e:t.keyCode,this.search_field_scale(),s){case 8:this.is_multiple&&this.backstroke_length<1&&this.choices_count()>0?this.keydown_backstroke():this.pending_backstroke||(this.result_clear_highlight(),this.results_search());break;case 13:t.preventDefault(),this.results_showing&&this.result_select(t);break;case 27:this.results_showing&&this.results_hide();break;case 9:case 16:case 17:case 18:case 38:case 40:case 91:break;default:this.results_search()}},t.prototype.clipboard_event_checker=function(t){if(!this.is_disabled)return setTimeout(function(t){return function(){return t.results_search()}}(this),50)},t.prototype.container_width=function(){return null!=this.options.width?this.options.width:this.form_field.offsetWidth+"px"},t.prototype.include_option_in_results=function(t){return!(this.is_multiple&&!this.display_selected_options&&t.selected||!this.display_disabled_options&&t.disabled||t.empty)},t.prototype.search_results_touchstart=function(t){return this.touch_started=!0,this.search_results_mouseover(t)},t.prototype.search_results_touchmove=function(t){return this.touch_started=!1,this.search_results_mouseout(t)},t.prototype.search_results_touchend=function(t){if(this.touch_started)return this.search_results_mouseup(t)},t.prototype.outerHTML=function(t){var e;return t.outerHTML?t.outerHTML:((e=document.createElement("div")).appendChild(t),e.innerHTML)},t.prototype.get_single_html=function(){return'<a class="chosen-single chosen-default">\n <span>'+this.default_text+'</span>\n <div><b></b></div>\n</a>\n<div class="chosen-drop">\n <div class="chosen-search">\n <input class="chosen-search-input" type="text" autocomplete="off" />\n </div>\n <ul class="chosen-results"></ul>\n</div>'},t.prototype.get_multi_html=function(){return'<ul class="chosen-choices">\n <li class="search-field">\n <input class="chosen-search-input" type="text" autocomplete="off" value="'+this.default_text+'" />\n </li>\n</ul>\n<div class="chosen-drop">\n <ul class="chosen-results"></ul>\n</div>'},t.prototype.get_no_results_html=function(t){return'<li class="no-results">\n '+this.results_none_found+" <span>"+this.escape_html(t)+"</span>\n</li>"},t.browser_is_supported=function(){return"Microsoft Internet Explorer"===window.navigator.appName?document.documentMode>=8:!(/iP(od|hone)/i.test(window.navigator.userAgent)||/IEMobile/i.test(window.navigator.userAgent)||/Windows Phone/i.test(window.navigator.userAgent)||/BlackBerry/i.test(window.navigator.userAgent)||/BB10/i.test(window.navigator.userAgent)||/Android.*Mobile/i.test(window.navigator.userAgent))},t.default_multiple_text="Select Some Options",t.default_single_text="Select an Option",t.default_no_result_text="No results match",t}(),(t=jQuery).fn.extend({chosen:function(i){return e.browser_is_supported()?this.each(function(e){var n,r;r=(n=t(this)).data("chosen"),"destroy"!==i?r instanceof s||n.data("chosen",new s(this,i)):r instanceof s&&r.destroy()}):this}}),s=function(s){function n(){return n.__super__.constructor.apply(this,arguments)}return r(n,e),n.prototype.setup=function(){return this.form_field_jq=t(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex},n.prototype.set_up_html=function(){var e,s;return(e=["chosen-container"]).push("chosen-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&e.push(this.form_field.className),this.is_rtl&&e.push("chosen-rtl"),s={class:e.join(" "),title:this.form_field.title},this.form_field.id.length&&(s.id=this.form_field.id.replace(/[^\w]/g,"_")+"_chosen"),this.container=t("<div />",s),this.container.width(this.container_width()),this.is_multiple?this.container.html(this.get_multi_html()):this.container.html(this.get_single_html()),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chosen-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chosen-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chosen-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chosen-search").first(),this.selected_item=this.container.find(".chosen-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior()},n.prototype.on_ready=function(){return this.form_field_jq.trigger("chosen:ready",{chosen:this})},n.prototype.register_observers=function(){return this.container.on("touchstart.chosen",function(t){return function(e){t.container_mousedown(e)}}(this)),this.container.on("touchend.chosen",function(t){return function(e){t.container_mouseup(e)}}(this)),this.container.on("mousedown.chosen",function(t){return function(e){t.container_mousedown(e)}}(this)),this.container.on("mouseup.chosen",function(t){return function(e){t.container_mouseup(e)}}(this)),this.container.on("mouseenter.chosen",function(t){return function(e){t.mouse_enter(e)}}(this)),this.container.on("mouseleave.chosen",function(t){return function(e){t.mouse_leave(e)}}(this)),this.search_results.on("mouseup.chosen",function(t){return function(e){t.search_results_mouseup(e)}}(this)),this.search_results.on("mouseover.chosen",function(t){return function(e){t.search_results_mouseover(e)}}(this)),this.search_results.on("mouseout.chosen",function(t){return function(e){t.search_results_mouseout(e)}}(this)),this.search_results.on("mousewheel.chosen DOMMouseScroll.chosen",function(t){return function(e){t.search_results_mousewheel(e)}}(this)),this.search_results.on("touchstart.chosen",function(t){return function(e){t.search_results_touchstart(e)}}(this)),this.search_results.on("touchmove.chosen",function(t){return function(e){t.search_results_touchmove(e)}}(this)),this.search_results.on("touchend.chosen",function(t){return function(e){t.search_results_touchend(e)}}(this)),this.form_field_jq.on("chosen:updated.chosen",function(t){return function(e){t.results_update_field(e)}}(this)),this.form_field_jq.on("chosen:activate.chosen",function(t){return function(e){t.activate_field(e)}}(this)),this.form_field_jq.on("chosen:open.chosen",function(t){return function(e){t.container_mousedown(e)}}(this)),this.form_field_jq.on("chosen:close.chosen",function(t){return function(e){t.close_field(e)}}(this)),this.search_field.on("blur.chosen",function(t){return function(e){t.input_blur(e)}}(this)),this.search_field.on("keyup.chosen",function(t){return function(e){t.keyup_checker(e)}}(this)),this.search_field.on("keydown.chosen",function(t){return function(e){t.keydown_checker(e)}}(this)),this.search_field.on("focus.chosen",function(t){return function(e){t.input_focus(e)}}(this)),this.search_field.on("cut.chosen",function(t){return function(e){t.clipboard_event_checker(e)}}(this)),this.search_field.on("paste.chosen",function(t){return function(e){t.clipboard_event_checker(e)}}(this)),this.is_multiple?this.search_choices.on("click.chosen",function(t){return function(e){t.choices_click(e)}}(this)):this.container.on("click.chosen",function(t){t.preventDefault()})},n.prototype.destroy=function(){return t(this.container[0].ownerDocument).off("click.chosen",this.click_test_action),this.form_field_label.length>0&&this.form_field_label.off("click.chosen"),this.search_field[0].tabIndex&&(this.form_field_jq[0].tabIndex=this.search_field[0].tabIndex),this.container.remove(),this.form_field_jq.removeData("chosen"),this.form_field_jq.show()},n.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field.disabled||this.form_field_jq.parents("fieldset").is(":disabled"),this.container.toggleClass("chosen-disabled",this.is_disabled),this.search_field[0].disabled=this.is_disabled,this.is_multiple||this.selected_item.off("focus.chosen",this.activate_field),this.is_disabled?this.close_field():this.is_multiple?void 0:this.selected_item.on("focus.chosen",this.activate_field)},n.prototype.container_mousedown=function(e){var s;if(!this.is_disabled)return!e||"mousedown"!==(s=e.type)&&"touchstart"!==s||this.results_showing||e.preventDefault(),null!=e&&t(e.target).hasClass("search-choice-close")?void 0:(this.active_field?this.is_multiple||!e||t(e.target)[0]!==this.selected_item[0]&&!t(e.target).parents("a.chosen-single").length||(e.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),t(this.container[0].ownerDocument).on("click.chosen",this.click_test_action),this.results_show()),this.activate_field())},n.prototype.container_mouseup=function(t){if("ABBR"===t.target.nodeName&&!this.is_disabled)return this.results_reset(t)},n.prototype.search_results_mousewheel=function(t){var e;if(t.originalEvent&&(e=t.originalEvent.deltaY||-t.originalEvent.wheelDelta||t.originalEvent.detail),null!=e)return t.preventDefault(),"DOMMouseScroll"===t.type&&(e*=40),this.search_results.scrollTop(e+this.search_results.scrollTop())},n.prototype.blur_test=function(t){if(!this.active_field&&this.container.hasClass("chosen-container-active"))return this.close_field()},n.prototype.close_field=function(){return t(this.container[0].ownerDocument).off("click.chosen",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chosen-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale(),this.search_field.blur()},n.prototype.activate_field=function(){if(!this.is_disabled)return this.container.addClass("chosen-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},n.prototype.test_active_click=function(e){var s;return(s=t(e.target).closest(".chosen-container")).length&&this.container[0]===s[0]?this.active_field=!0:this.close_field()},n.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=i.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chosen-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chosen-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},n.prototype.result_do_highlight=function(t){var e,s,i,n,r;if(t.length){if(this.result_clear_highlight(),this.result_highlight=t,this.result_highlight.addClass("highlighted"),i=parseInt(this.search_results.css("maxHeight"),10),r=this.search_results.scrollTop(),n=i+r,s=this.result_highlight.position().top+this.search_results.scrollTop(),(e=s+this.result_highlight.outerHeight())>=n)return this.search_results.scrollTop(e-i>0?e-i:0);if(s<r)return this.search_results.scrollTop(s)}},n.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},n.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.container.addClass("chosen-with-drop"),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.get_search_field_value()),this.winnow_results(),this.form_field_jq.trigger("chosen:showing_dropdown",{chosen:this}))},n.prototype.update_results_content=function(t){return this.search_results.html(t)},n.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chosen-with-drop"),this.form_field_jq.trigger("chosen:hiding_dropdown",{chosen:this})),this.results_showing=!1},n.prototype.set_tab_index=function(t){var e;if(this.form_field.tabIndex)return e=this.form_field.tabIndex,this.form_field.tabIndex=-1,this.search_field[0].tabIndex=e},n.prototype.set_label_behavior=function(){if(this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=t("label[for='"+this.form_field.id+"']")),this.form_field_label.length>0)return this.form_field_label.on("click.chosen",this.label_click_handler)},n.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},n.prototype.search_results_mouseup=function(e){var s;if((s=t(e.target).hasClass("active-result")?t(e.target):t(e.target).parents(".active-result").first()).length)return this.result_highlight=s,this.result_select(e),this.search_field.focus()},n.prototype.search_results_mouseover=function(e){var s;if(s=t(e.target).hasClass("active-result")?t(e.target):t(e.target).parents(".active-result").first())return this.result_do_highlight(s)},n.prototype.search_results_mouseout=function(e){if(t(e.target).hasClass("active-result")||t(e.target).parents(".active-result").first())return this.result_clear_highlight()},n.prototype.choice_build=function(e){var s,i;return s=t("<li />",{class:"search-choice"}).html("<span>"+this.choice_label(e)+"</span>"),e.disabled?s.addClass("search-choice-disabled"):((i=t("<a />",{class:"search-choice-close","data-option-array-index":e.array_index})).on("click.chosen",function(t){return function(e){return t.choice_destroy_link_click(e)}}(this)),s.append(i)),this.search_container.before(s)},n.prototype.choice_destroy_link_click=function(e){if(e.preventDefault(),e.stopPropagation(),!this.is_disabled)return this.choice_destroy(t(e.target))},n.prototype.choice_destroy=function(t){if(this.result_deselect(t[0].getAttribute("data-option-array-index")))return this.active_field?this.search_field.focus():this.show_search_field_default(),this.is_multiple&&this.choices_count()>0&&this.get_search_field_value().length<1&&this.results_hide(),t.parents("li").first().remove(),this.search_field_scale()},n.prototype.results_reset=function(){if(this.reset_single_select_options(),this.form_field.options[0].selected=!0,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.trigger_form_field_change(),this.active_field)return this.results_hide()},n.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},n.prototype.result_select=function(t){var e,s;if(this.result_highlight)return e=this.result_highlight,this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.is_multiple?e.removeClass("active-result"):this.reset_single_select_options(),e.addClass("result-selected"),s=this.results_data[e[0].getAttribute("data-option-array-index")],s.selected=!0,this.form_field.options[s.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(s):this.single_set_selected_text(this.choice_label(s)),this.is_multiple&&(!this.hide_results_on_select||t.metaKey||t.ctrlKey)?t.metaKey||t.ctrlKey?this.winnow_results({skip_highlight:!0}):(this.search_field.val(""),this.winnow_results()):(this.results_hide(),this.show_search_field_default()),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.trigger_form_field_change({selected:this.form_field.options[s.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,t.preventDefault(),this.search_field_scale())},n.prototype.single_set_selected_text=function(t){return null==t&&(t=this.default_text),t===this.default_text?this.selected_item.addClass("chosen-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chosen-default")),this.selected_item.find("span").html(t)},n.prototype.result_deselect=function(t){var e;return e=this.results_data[t],!this.form_field.options[e.options_index].disabled&&(e.selected=!1,this.form_field.options[e.options_index].selected=!1,this.selected_option_count=null,this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.trigger_form_field_change({deselected:this.form_field.options[e.options_index].value}),this.search_field_scale(),!0)},n.prototype.single_deselect_control_build=function(){if(this.allow_single_deselect)return this.selected_item.find("abbr").length||this.selected_item.find("span").first().after('<abbr class="search-choice-close"></abbr>'),this.selected_item.addClass("chosen-single-with-deselect")},n.prototype.get_search_field_value=function(){return this.search_field.val()},n.prototype.get_search_text=function(){return t.trim(this.get_search_field_value())},n.prototype.escape_html=function(e){return t("<div/>").text(e).html()},n.prototype.winnow_results_set_highlight=function(){var t,e;if(e=this.is_multiple?[]:this.search_results.find(".result-selected.active-result"),null!=(t=e.length?e.first():this.search_results.find(".active-result").first()))return this.result_do_highlight(t)},n.prototype.no_results=function(t){var e;return e=this.get_no_results_html(t),this.search_results.append(e),this.form_field_jq.trigger("chosen:no_results",{chosen:this})},n.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},n.prototype.keydown_arrow=function(){var t;return this.results_showing&&this.result_highlight?(t=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(t):void 0:this.results_show()},n.prototype.keyup_arrow=function(){var t;return this.results_showing||this.is_multiple?this.result_highlight?(t=this.result_highlight.prevAll("li.active-result")).length?this.result_do_highlight(t.first()):(this.choices_count()>0&&this.results_hide(),this.result_clear_highlight()):void 0:this.results_show()},n.prototype.keydown_backstroke=function(){var t;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(t=this.search_container.siblings("li.search-choice").last()).length&&!t.hasClass("search-choice-disabled")?(this.pending_backstroke=t,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0},n.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},n.prototype.search_field_scale=function(){var e,s,i,n,r,o,h;if(this.is_multiple){for(r={position:"absolute",left:"-1000px",top:"-1000px",display:"none",whiteSpace:"pre"},s=0,i=(o=["fontSize","fontStyle","fontWeight","fontFamily","lineHeight","textTransform","letterSpacing"]).length;s<i;s++)r[n=o[s]]=this.search_field.css(n);return(e=t("<div />").css(r)).text(this.get_search_field_value()),t("body").append(e),h=e.width()+25,e.remove(),this.container.is(":visible")&&(h=Math.min(this.container.outerWidth()-10,h)),this.search_field.width(h)}},n.prototype.trigger_form_field_change=function(t){return this.form_field_jq.trigger("input",t),this.form_field_jq.trigger("change",t)},n}()}.call(this),/*! 1655 * contentLoader v0.1 1656 * URL... 1657 * Copyright (c) 2016 Brandon Miller 1658 * Dual licensed under the MIT and GPL licenses: 1659 * http://www.opensource.org/licenses/mit-license.php 1660 * http://www.gnu.org/licenses/gpl.html 1661**/ 1662function($){$.fn.contentLoader=function(options){ 1663// allows for chaining 1664return this.each(function(){ 1665// Variables 1666var $wrap=$(this),$clItems=$wrap.find("#cl-items"),defaults={callback:function(){}},settings=$.extend({},defaults,options),plugin={}; 1667// Start 1668plugin.init=function(){plugin.selector(),plugin.buttons()}, 1669// Preload Images 1670plugin.preloadImages=function(arr,callback){function checkLoaded(){++numLoaded==len&&callback(imagesArray)} 1671// Loop through given Images 1672for(var arr="object"!=typeof arr?[arr]:arr,imagesArray=[],len=arr.length,numLoaded=0,i=0;i<len;i++)imagesArray[i]=new Image,imagesArray[i].onload=function(){checkLoaded()},imagesArray[i].onerror=function(){checkLoaded()},imagesArray[i].src=arr[i], 1673// Add Class 1674$(imagesArray[i]).addClass("loaded")},
1675// Content Loader 1676plugin.loader=function(newGallery){$.ajax({dataType:"html",url:newGallery,success:function(data){var $data=$(data),imgSrcs=[],$newGallery=$data.find("#cl-items"),grabbedHtml=$newGallery.html();$newGallery.find("img").each(function(){imgSrcs.push(this.src)}), 1677// Preload 1678imgSrcs.length>0?plugin.preloadImages(imgSrcs,function(a){ 1679// append content 1680$clItems.html(grabbedHtml),$wrap.removeClass("loading"),settings.callback()}):($clItems.html(grabbedHtml),$wrap.removeClass("loading"),settings.callback())},error:function(){$("#cl-items").prepend("<div class='entry-content'><p><em>Nothing was retrieved. Please select another Gallery.</em></p></div>"),$wrap.removeClass("loading")}})}, 1681// Content Buttons 1682plugin.buttons=function(){ 1683// Load Gallery via Ajax 1684$(".gallery-nav a").on("click",function(e){e.preventDefault(),$wrap.addClass("loading"), 1685// Load Content via Ajax 1686plugin.loader($(this).attr("href"))})}, 1687// Content Selector 1688plugin.selector=function(){ 1689// Load Gallery via Ajax 1690$(".gallery-nav").on("change",function(){$wrap.addClass("loading"), 1691// Load Content via Ajax 1692plugin.loader($(this).val())})}, 1693// START IT ALL 1694plugin.init()})}}(jQuery),/* 1695 * fileInput v0.1 1696 * Copyright (c) 2014 Brandon Miller 1697 * Dual licensed under the MIT and GPL licenses: 1698 * http://www.opensource.org/licenses/mit-license.php 1699 * http://www.gnu.org/licenses/gpl.html 1700**/ 1701function($){$.fn.fileInput=function(options){return this.each(function(){ 1702// Variables 1703var $wrap,$fileRemove,$filenameTxt,$fileInput,$input=$(this),isIE="Microsoft Internet Explorer"==window.navigator.appName,defaults={btnTxt:$input.attr("data-fi-btn")||"Select File",txtPlaceholder:$input.attr("data-fi-txtph")||""},settings=$.extend({},defaults,options),plugin={ 1704// Add Structure 1705addStructure:function(){$input.after(function(){return'<div class="fileinput-wrap"><div class="fileinput-btn"><div class="fileinput-btnblock"><span class="fileinput-btntxt">'+settings.btnTxt+'</span></div></div><div class="fileinput-remove"> × </div><div class="fileinput-txtfield"><span class="fileinput-filename"><span class="fi-icon"></span> <span class="fi-txt">'+settings.txtPlaceholder+"</span></span></div></div>"}),$input.appendTo($input.next().find(".fileinput-btnblock")), 1706// Calls 1707plugin.elementVars()}, 1708// Setup Vars for new elements 1709elementVars:function(){$wrap=$input.closest(".fileinput-wrap"),$fileRemove=$wrap.find(".fileinput-remove"),$filenameTxt=$wrap.find(".fi-txt"),$fileInput=$wrap.find(".fileinput"), 1710// Calls 1711plugin.addFileName(),plugin.removeFiles()}, 1712// Remove Files 1713removeFiles:function(){$fileRemove.on("click",function(){var $this=$(this); 1714//ie8+ doesn't support changing the value of input with type=file so clone instead 1715if($filenameTxt.html(settings.txtPlaceholder),isIE){var inputClone=$fileInput.clone(!0);$fileInput.after(inputClone),$fileInput.remove(),$fileInput=inputClone}else $fileInput.val("");$this.css({display:"none"})})}, 1716// Add File Name 1717addFileName:function(){$input.on("change",function(){var $this=$(this),uploadedFile=$this.val().replace(/^.+\\/,"");$filenameTxt.html(uploadedFile),""!==$this.val()&&$fileRemove.css({display:"table-cell"})})}, 1718// Initialize Main Code 1719init:function(){plugin.addStructure()}}; 1720// START IT ALL 1721plugin.init()})}}(jQuery),/*! 1722 * gMapHelper Advanced v2.6 1723 * https://github.com/bMil21/ui-site/tree/master/components/googlemap 1724 * Copyright (c) 2013 Brandon Miller 1725 * Dual licensed under the MIT and GPL licenses: 1726 * http://www.opensource.org/licenses/mit-license.php 1727 * http://www.gnu.org/licenses/gpl.html 1728**/ 1729function($){$.fn.gMapHelper=function(options){ 1730// If no Map don't start 1731if(!($(this).length<1)){ 1732// Variables 1733var geocoder,myMapType,map,marker,infowindow,mapEl=$(this)[0],//returns a HTML DOM Object (instead of jQuery Object) 1734directionsService=new google.maps.DirectionsService,directionsDisplay=new google.maps.DirectionsRenderer,defaults={icon:"",scrollwheel:!1,zoom:14,address:!1,mapType:"roadmap",styles:!1,addressInfoWindow:""},settings=$.extend({},defaults,options),plugin={ 1735// Geocoder (convert SINGLE address into Lat/Lng) 1736myGeocoder:function(){ 1737//var coordinates = new google.maps.LatLng(41.895648, -87.676000); 1738// new Geocoder Object 1739geocoder=new google.maps.Geocoder,geocoder.geocode({address:settings.address},function(results,status){status==google.maps.GeocoderStatus.OK?(settings.address=results[0].geometry.location, 1740// Start Build if address located 1741plugin.buildMap()):alert("Geocode was not successful for the following reason: "+status)})}, 1742// Determine Map Type 1743mapType:function(){switch(settings.mapType){case"roadmap":myMapType=google.maps.MapTypeId.ROADMAP;break;case"satellite":myMapType=google.maps.MapTypeId.SATELLITE;break;case"hybrid":myMapType=google.maps.MapTypeId.HYBRID;break;case"terrain":myMapType=google.maps.MapTypeId.TERRAIN}return myMapType}, 1744// Build Map with Settings (ONLY FOR A SINGLE ADDRESS) 1745buildMap:function(){ 1746// Set Map Options 1747var map_options={center:settings.address,zoom:settings.zoom,scrollwheel:settings.scrollwheel,mapTypeId:plugin.mapType()}; 1748// New Map Object.. w/ element and options 1749map=new google.maps.Map(mapEl,map_options), 1750// Info Window 1751infowindow=new google.maps.InfoWindow({content:"Loading..."}), 1752// New Marker Object 1753marker=new google.maps.Marker({position:settings.address,map:map,title:"Location Name",icon:settings.icon}), 1754// Click event for Marker, Info Window 1755google.maps.event.addListener(marker,"click",function(settings){return function(){infowindow.setContent(settings.addressInfoWindow),infowindow.open(map,this)}}(settings)), 1756// Display Directions on Map
1757directionsDisplay.setMap(map), 1758// Display Directions List 1759directionsDisplay.setPanel(document.getElementById("dir-panel")), 1760// Add Custom Styles 1761plugin.addStyles()}, 1762// Build Map with Settings (ONLY FOR MULTIPLE LOCATIONS) 1763buildMapMulti:function(){var firstAddress=settings.address[0],map_options={center:new google.maps.LatLng(firstAddress.itemAddress[0],firstAddress.itemAddress[1]),// Lat, Lng of 1st Address 1764zoom:settings.zoom,scrollwheel:settings.scrollwheel,mapTypeId:plugin.mapType()},bounds=new google.maps.LatLngBounds; 1765// New Map Object.. w/ element and options 1766map=new google.maps.Map(mapEl,map_options), 1767// Info Window 1768infowindow=new google.maps.InfoWindow({content:"Loading..."}); 1769// New Marker Object 1770var i;for(i=0;i<settings.address.length;i++){var myLocation=settings.address[i].itemAddress,myLatLng=new google.maps.LatLng(myLocation[0],myLocation[1]);marker=new google.maps.Marker({position:myLatLng,map:map,title:settings.address[i].itemName,icon:settings.icon}), 1771//extend the bounds to include each marker's position 1772bounds.extend(marker.position), 1773// Click event for Marker, Info Window 1774google.maps.event.addListener(marker,"click",function(settings,i){return function(){var curInfoWindow=settings.address[i].itemInfoWindow;infowindow.setContent(curInfoWindow),infowindow.open(map,this)}}(settings,i))}settings.address.length>1&&map.fitBounds(bounds), 1775// Add Custom Styles 1776plugin.addStyles()}, 1777// Add Custom Styles 1778addStyles:function(){var myStyleOptions={name:"My Map"},myMapStyles=new google.maps.StyledMapType(settings.styles,myStyleOptions);map.mapTypes.set("mymap",myMapStyles),map.setMapTypeId("mymap")}, 1779// Door-to-Door (Single Address Only) 1780calcRoute:function(){var start=document.getElementById("saddr").value,end=settings.address,request={origin:start,destination:end,travelMode:google.maps.TravelMode.DRIVING};directionsService.route(request,function(response,status){status==google.maps.DirectionsStatus.OK&&directionsDisplay.setDirections(response)}), 1781// Remove initial custom icon, rebuild 1782settings.icon=null,plugin.buildMap()}, 1783// Start it all 1784init:function(){"string"==typeof settings.address? 1785// Address given as String 1786plugin.myGeocoder():"object"==typeof settings.address? 1787// Address given as String 1788plugin.buildMapMulti(): 1789// Address not given (try to import JSON) 1790$.getJSON("gmap.json",function(data){var jsonAddress=data.address;settings.address=jsonAddress,plugin.buildMapMulti()}).fail(function(jqxhr,textStatus,error){alert("Please use a suitable address. Developers: check console for errors.");var err=textStatus+", "+error;console.log("JSON Fail. Request Failed: "+err)}), 1791// Call Door-to-Door 1792$("#get-dir").on("click",function(){plugin.calcRoute()})}}; 1793// Initialize Plugin when everything is Loaded 1794$(document).ready(function(){plugin.init()})}}}(jQuery),/*! 1795 * Hamburger v0.2 1796 * URL... 1797 * Copyright (c) 2016 1798 * Dual licensed under the MIT and GPL licenses: 1799 * http://www.opensource.org/licenses/mit-license.php 1800 * http://www.gnu.org/licenses/gpl.html 1801**/ 1802function($){$.fn.hamburger=function(options){ 1803// allows for chaining 1804return this.each(function(){ 1805// Variables 1806var scrollTopPos,$btn=$(this),$document=$(document),$dpdwn=$($btn.attr("data-toggle")),$navOverlay=$(".nav-overlay"),allowScrolling=!0,defaults={negativeSpace:0,// insert element to subtract its height from page height. e.g. ".header" 1807animation:"slideDown"},settings=$.extend({},defaults,options),plugin={};plugin.init=function(){plugin.animType(),plugin.navOverflow(),plugin.hamEvents()}, 1808// Animation Type 1809plugin.animType=function(){switch(settings.animation){case"slideDown":$dpdwn.addClass("slide-down");break;case"sideSlide":$dpdwn.addClass("side-slide"),$dpdwn.outerHeight($(window).height());break;case"fadeIn":$dpdwn.addClass("fade-in")}}, 1810// Nav Overflow 1811plugin.navOverflow=function(){ 1812// solve fixed height overflow issue 1813var winH=$(window).height(),navH=0!=settings.negativeSpace?$(settings.negativeSpace).outerHeight():0,maxH=winH-navH;$dpdwn.css({"max-height":maxH})}, 1814// nav Toggle 1815plugin.navToggle=function(){"slideDown"==settings.animation&&$dpdwn.slideToggle("fast"),"fadeIn"==settings.animation&&$dpdwn.fadeToggle("fast"),$btn.toggleClass("active"),$dpdwn.toggleClass("active")}, 1816// Nav Show 1817plugin.navShow=function(){"slideDown"==settings.animation&&$dpdwn.slideDown("fast"),"fadeIn"==settings.animation&&$dpdwn.fadeIn("fast"),$btn.addClass("active"),$dpdwn.addClass("active")}, 1818// Nav Hide 1819plugin.navHide=function(){"slideDown"==settings.animation&&$dpdwn.slideUp("fast"),"fadeIn"==settings.animation&&$dpdwn.fadeOut("fast"),$btn.removeClass("active"),$dpdwn.removeClass("active")}, 1820// Events 1821plugin.hamEvents=function(){ 1822// Button 1823$btn.on("click",function(e){e.preventDefault(), 1824// use $btn for open & close 1825plugin.navToggle(),$navOverlay.toggleClass("active"),allowScrolling=!allowScrolling,scrollTopPos=$(document).scrollTop()}), 1826// Close 1827$(".hamburger-close").on("click",function(e){e.preventDefault(),plugin.navHide(),$navOverlay.removeClass("active"),allowScrolling=!0}), 1828// No Scroll 1829$document.scroll(function(){!1===allowScrolling&&$document.scrollTop(scrollTopPos)})}, 1830// START IT ALL 1831plugin.init(), 1832// PUBLIC METHODS 1833$.fn.hamburger.publicMethodName=function($newEl){plugin.methodName($newEl)}})}}(jQuery),/*! 1834 Colorbox 1.6.4 1835 license: MIT 1836 http://www.jacklmoore.com/colorbox 1837*/
vendor: 9,496 bytes, line 1838
1838function(t,e,i){function n(i,n,o){var r=e.createElement(i);return n&&(r.id=Z+n),o&&(r.style.cssText=o),t(r)}function o(){return i.innerHeight?i.innerHeight:t(i).height()}function r(e,i){i!==Object(i)&&(i={}),this.cache={},this.el=e,this.value=function(e){var n;return void 0===this.cache[e]&&(n=t(this.el).attr("data-cbox-"+e),void 0!==n?this.cache[e]=n:void 0!==i[e]?this.cache[e]=i[e]:void 0!==X[e]&&(this.cache[e]=X[e])),this.cache[e]},this.get=function(e){var i=this.value(e);return t.isFunction(i)?i.call(this.el,this):i}}function h(t){var e=W.length,i=(A+t)%e;return 0>i?e+i:i}function a(t,e){return Math.round((/%/.test(t)?("x"===e?E.width():o())/100:1)*parseInt(t,10))}function s(t,e){return t.get("photo")||t.get("photoRegex").test(e)}function l(t,e){return t.get("retinaUrl")&&i.devicePixelRatio>1?e.replace(t.get("photoRegex"),t.get("retinaSuffix")):e}function d(t){"contains"in x[0]&&!x[0].contains(t.target)&&t.target!==v[0]&&(t.stopPropagation(),x.focus())}function c(t){c.str!==t&&(x.add(v).removeClass(c.str).addClass(t),c.str=t)}function g(e){A=0,e&&!1!==e&&"nofollow"!==e?(W=t("."+te).filter(function(){return new r(this,t.data(this,Y)).get("rel")===e}),-1===(A=W.index(_.el))&&(W=W.add(_.el),A=W.length-1)):W=t(_.el)}function u(i){t(e).trigger(i),ae.triggerHandler(i)}function f(i){var o;if(!G){if(o=t(i).data(Y),_=new r(i,o),g(_.get("rel")),!U){U=$=!0,c(_.get("className")),x.css({visibility:"hidden",display:"block",opacity:""}),I=n(se,"LoadedContent","width:0; height:0; overflow:hidden; visibility:hidden"),b.css({width:"",height:""}).append(I),j=T.height()+k.height()+b.outerHeight(!0)-b.height(),D=C.width()+H.width()+b.outerWidth(!0)-b.width(),N=I.outerHeight(!0),z=I.outerWidth(!0);var h=a(_.get("initialWidth"),"x"),s=a(_.get("initialHeight"),"y"),l=_.get("maxWidth"),f=_.get("maxHeight");_.w=Math.max((!1!==l?Math.min(h,a(l,"x")):h)-z-D,0),_.h=Math.max((!1!==f?Math.min(s,a(f,"y")):s)-N-j,0),I.css({width:"",height:_.h}),J.position(),u(ee),_.get("onOpen"),O.add(F).hide(),x.focus(),_.get("trapFocus")&&e.addEventListener&&(e.addEventListener("focus",d,!0),ae.one(re,function(){e.removeEventListener("focus",d,!0)})),_.get("returnFocus")&&ae.one(re,function(){t(_.el).focus()})}var p=parseFloat(_.get("opacity"));v.css({opacity:p===p?p:"",cursor:_.get("overlayClose")?"pointer":"",visibility:"visible"}).show(),_.get("closeButton")?B.html(_.get("close")).appendTo(b):B.appendTo("<div/>"),w()}}function p(){x||(V=!1,E=t(i),x=n(se).attr({id:Y,class:!1===t.support.opacity?Z+"IE":"",role:"dialog",tabindex:"-1"}).hide(),v=n(se,"Overlay").hide(),L=t([n(se,"LoadingOverlay")[0],n(se,"LoadingGraphic")[0]]),y=n(se,"Wrapper"),b=n(se,"Content").append(F=n(se,"Title"),R=n(se,"Current"),P=t('<button type="button"/>').attr({id:Z+"Previous"}),K=t('<button type="button"/>').attr({id:Z+"Next"}),S=t('<button type="button"/>').attr({id:Z+"Slideshow"}),L),B=t('<button type="button"/>').attr({id:Z+"Close"}),y.append(n(se).append(n(se,"TopLeft"),T=n(se,"TopCenter"),n(se,"TopRight")),n(se,!1,"clear:left").append(C=n(se,"MiddleLeft"),b,H=n(se,"MiddleRight")),n(se,!1,"clear:left").append(n(se,"BottomLeft"),k=n(se,"BottomCenter"),n(se,"BottomRight"))).find("div div").css({float:"left"}),M=n(se,!1,"position:absolute; width:9999px; visibility:hidden; display:none; max-width:none;"),O=K.add(P).add(R).add(S)),e.body&&!x.parent().length&&t(e.body).append(v,x.append(y,M))}function m(){function i(t){t.which>1||t.shiftKey||t.altKey||t.metaKey||t.ctrlKey||(t.preventDefault(),f(this))}return!!x&&(V||(V=!0,K.click(function(){J.next()}),P.click(function(){J.prev()}),B.click(function(){J.close()}),v.click(function(){_.get("overlayClose")&&J.close()}),t(e).bind("keydown."+Z,function(t){var e=t.keyCode;U&&_.get("escKey")&&27===e&&(t.preventDefault(),J.close()),U&&_.get("arrowKey")&&W[1]&&!t.altKey&&(37===e?(t.preventDefault(),P.click()):39===e&&(t.preventDefault(),K.click()))}),t.isFunction(t.fn.on)?t(e).on("click."+Z,"."+te,i):t("."+te).live("click."+Z,i)),!0)}function w(){var e,o,r,h=J.prep,d=++le;if($=!0,q=!1,u(he),u(ie),_.get("onLoad"),_.h=_.get("height")?a(_.get("height"),"y")-N-j:_.get("innerHeight")&&a(_.get("innerHeight"),"y"),_.w=_.get("width")?a(_.get("width"),"x")-z-D:_.get("innerWidth")&&a(_.get("innerWidth"),"x"),_.mw=_.w,_.mh=_.h,_.get("maxWidth")&&(_.mw=a(_.get("maxWidth"),"x")-z-D,_.mw=_.w&&_.w<_.mw?_.w:_.mw),_.get("maxHeight")&&(_.mh=a(_.get("maxHeight"),"y")-N-j,_.mh=_.h&&_.h<_.mh?_.h:_.mh),e=_.get("href"),Q=setTimeout(function(){L.show()},100),_.get("inline")){var c=t(e).eq(0);r=t("<div>").hide().insertBefore(c),ae.one(he,function(){r.replaceWith(c)}),h(c)}else _.get("iframe")?h(" "):_.get("html")?h(_.get("html")):s(_,e)?(e=l(_,e),q=_.get("createImg"),t(q).addClass(Z+"Photo").bind("error."+Z,function(){h(n(se,"Error").html(_.get("imgError")))}).one("load",function(){d===le&&setTimeout(function(){var e;_.get("retinaImage")&&i.devicePixelRatio>1&&(q.height=q.height/i.devicePixelRatio,q.width=q.width/i.devicePixelRatio),_.get("scalePhotos")&&(o=function(){q.height-=q.height*e,q.width-=q.width*e},_.mw&&q.width>_.mw&&(e=(q.width-_.mw)/q.width,o()),_.mh&&q.height>_.mh&&(e=(q.height-_.mh)/q.height,o())),_.h&&(q.style.marginTop=Math.max(_.mh-q.height,0)/2+"px"),W[1]&&(_.get("loop")||W[A+1])&&(q.style.cursor="pointer",t(q).bind("click."+Z,function(){J.next()})),q.style.width=q.width+"px",q.style.height=q.height+"px",h(q)},1)}),q.src=e):e&&M.load(e,_.get("data"),function(e,i){d===le&&h("error"===i?n(se,"Error").html(_.get("xhrError")):t(this).contents())})}var v,x,y,b,T,C,H,k,W,E,I,M,L,F,R,S,K,P,B,O,_,j,D,N,z,A,q,U,$,G,Q,J,V,X={html:!1,photo:!1,iframe:!1,inline:!1,transition:"elastic",speed:300,fadeOut:300,width:!1,initialWidth:"600",innerWidth:!1,maxWidth:!1,height:!1,initialHeight:"450",innerHeight:!1,maxHeight:!1,scalePhotos:!0,scrolling:!0,opacity:.9,preloading:!0,className:!1,overlayClose:!0,escKey:!0,arrowKey:!0,top:!1,bottom:!1,left:!1,right:!1,fixed:!1,data:void 0,closeButton:!0,fastIframe:!0,open:!1,reposition:!0,loop:!0,slideshow:!1,slideshowAuto:!0,slideshowSpeed:2500,slideshowStart:"start slideshow",slideshowStop:"stop slideshow",photoRegex:/\.(gif|png|jp(e|g|eg)|bmp|ico|webp|jxr|svg)((#|\?).*)?$/i,retinaImage:!1,retinaUrl:!1,retinaSuffix:"@2x.$1",current:"image {current} of {total}",previous:"previous",next:"next",close:"close",xhrError:"This content failed to load.",imgError:"This image failed to load.",returnFocus:!0,trapFocus:!0,onOpen:!1,onLoad:!1,onComplete:!1,onCleanup:!1,onClosed:!1,rel:function(){return this.rel},href:function(){return t(this).attr("href")},title:function(){return this.title},createImg:function(){var e=new Image,i=t(this).data("cbox-img-attrs");return"object"==typeof i&&t.each(i,function(t,i){e[t]=i}),e},createIframe:function(){var i=e.createElement("iframe"),n=t(this).data("cbox-iframe-attrs");return"object"==typeof n&&t.each(n,function(t,e){i[t]=e}),"frameBorder"in i&&(i.frameBorder=0),"allowTransparency"in i&&(i.allowTransparency="true"),i.name=(new Date).getTime(),i.allowFullscreen=!0,i}},Y="colorbox",Z="cbox",te=Z+"Element",ee=Z+"_open",ie=Z+"_load",ne=Z+"_complete",oe=Z+"_cleanup",re=Z+"_closed",he=Z+"_purge",ae=t("<a/>"),se="div",le=0,de={},ce=function(){function t(){clearTimeout(h)}function e(){(_.get("loop")||W[A+1])&&(t(),h=setTimeout(J.next,_.get("slideshowSpeed")))}function i(){S.html(_.get("slideshowStop")).unbind(s).one(s,n),ae.bind(ne,e).bind(ie,t),x.removeClass(a+"off").addClass(a+"on")}function n(){t(),ae.unbind(ne,e).unbind(ie,t),S.html(_.get("slideshowStart")).unbind(s).one(s,function(){J.next(),i()}),x.removeClass(a+"on").addClass(a+"off")}function o(){r=!1,S.hide(),t(),ae.unbind(ne,e).unbind(ie,t),x.removeClass(a+"off "+a+"on")}var r,h,a=Z+"Slideshow_",s="click."+Z;return function(){r?_.get("slideshow")||(ae.unbind(oe,o),o()):_.get("slideshow")&&W[1]&&(r=!0,ae.one(oe,o),_.get("slideshowAuto")?i():n(),S.show())}}();t[Y]||(t(p),J=t.fn[Y]=t[Y]=function(e,i){var n,o=this;return e=e||{},t.isFunction(o)&&(o=t("<a/>"),e.open=!0),o[0]?(p(),m()&&(i&&(e.onComplete=i),o.each(function(){var i=t.data(this,Y)||{};t.data(this,Y,t.extend(i,e))}).addClass(te),n=new r(o[0],e),n.get("open")&&f(o[0])),o):o},J.position=function(e,i){function n(){T[0].style.width=k[0].style.width=b[0].style.width=parseInt(x[0].style.width,10)-D+"px",b[0].style.height=C[0].style.height=H[0].style.height=parseInt(x[0].style.height,10)-j+"px"}var r,h,s,l=0,d=0,c=x.offset();if(E.unbind("resize."+Z),x.css({top:-9e4,left:-9e4}),h=E.scrollTop(),s=E.scrollLeft(),_.get("fixed")?(c.top-=h,c.left-=s,x.css({position:"fixed"})):(l=h,d=s,x.css({position:"absolute"})),d+=!1!==_.get("right")?Math.max(E.width()-_.w-z-D-a(_.get("right"),"x"),0):!1!==_.get("left")?a(_.get("left"),"x"):Math.round(Math.max(E.width()-_.w-z-D,0)/2),l+=!1!==_.get("bottom")?Math.max(o()-_.h-N-j-a(_.get("bottom"),"y"),0):!1!==_.get("top")?a(_.get("top"),"y"):Math.round(Math.max(o()-_.h-N-j,0)/2),x.css({top:c.top,left:c.left,visibility:"visible"}),y[0].style.width=y[0].style.height="9999px",r={width:_.w+z+D,height:_.h+N+j,top:l,left:d},e){var g=0;t.each(r,function(t){return r[t]!==de[t]?void(g=e):void 0}),e=g}de=r,e||x.css(r),x.dequeue().animate(r,{duration:e||0,complete:function(){n(),$=!1,y[0].style.width=_.w+z+D+"px",y[0].style.height=_.h+N+j+"px",_.get("reposition")&&setTimeout(function(){E.bind("resize."+Z,J.position)},1),t.isFunction(i)&&i()},step:n})},J.resize=function(t){var e;U&&(t=t||{},t.width&&(_.w=a(t.width,"x")-z-D),t.innerWidth&&(_.w=a(t.innerWidth,"x")),I.css({width:_.w}
1838),t.height&&(_.h=a(t.height,"y")-N-j),t.innerHeight&&(_.h=a(t.innerHeight,"y")),t.innerHeight||t.height||(e=I.scrollTop(),I.css({height:"auto"}),_.h=I.height()),I.css({height:_.h}),e&&I.scrollTop(e),J.position("none"===_.get("transition")?0:_.get("speed")))},J.prep=function(i){if(U){var d,g="none"===_.get("transition")?0:_.get("speed");I.remove(),I=n(se,"LoadedContent").append(i),I.hide().appendTo(M.show()).css({width:function(){return _.w=_.w||I.width(),_.w=_.mw&&_.mw<_.w?_.mw:_.w,_.w}(),overflow:_.get("scrolling")?"auto":"hidden"}).css({height:function(){return _.h=_.h||I.height(),_.h=_.mh&&_.mh<_.h?_.mh:_.h,_.h}()}).prependTo(b),M.hide(),t(q).css({float:"none"}),c(_.get("className")),d=function(){function i(){!1===t.support.opacity&&x[0].style.removeAttribute("filter")}var n,o,a=W.length;U&&(o=function(){clearTimeout(Q),L.hide(),u(ne),_.get("onComplete")},F.html(_.get("title")).show(),I.show(),a>1?("string"==typeof _.get("current")&&R.html(_.get("current").replace("{current}",A+1).replace("{total}",a)).show(),K[_.get("loop")||a-1>A?"show":"hide"]().html(_.get("next")),P[_.get("loop")||A?"show":"hide"]().html(_.get("previous")),ce(),_.get("preloading")&&t.each([h(-1),h(1)],function(){var i,n=W[this],o=new r(n,t.data(n,Y)),h=o.get("href");h&&s(o,h)&&(h=l(o,h),i=e.createElement("img"),i.src=h)})):O.hide(),_.get("iframe")?(n=_.get("createIframe"),_.get("scrolling")||(n.scrolling="no"),t(n).attr({src:_.get("href"),class:Z+"Iframe"}).one("load",o).appendTo(I),ae.one(he,function(){n.src="//about:blank"}),_.get("fastIframe")&&t(n).trigger("load")):o(),"fade"===_.get("transition")?x.fadeTo(g,1,i):i())},"fade"===_.get("transition")?x.fadeTo(g,0,function(){J.position(0,d)}):J.position(g,d)}},J.next=function(){!$&&W[1]&&(_.get("loop")||W[A+1])&&(A=h(1),f(W[A]))},J.prev=function(){!$&&W[1]&&(_.get("loop")||A)&&(A=h(-1),f(W[A]))},J.close=function(){U&&!G&&(G=!0,U=!1,u(oe),_.get("onCleanup"),E.unbind("."+Z),v.fadeTo(_.get("fadeOut")||0,0),x.stop().fadeTo(_.get("fadeOut")||0,0,function(){x.hide(),v.hide(),u(he),I.remove(),setTimeout(function(){G=!1,u(re),_.get("onClosed")},1)}))},J.remove=function(){x&&(x.stop(),t[Y].close(),x.stop(!1,!0).remove(),v.remove(),G=!1,x=null,t("."+te).removeData(Y).removeClass(te),t(e).unbind("click."+Z).unbind("keydown."+Z))},J.element=function(){return t(_.el)},J.settings=X)}(jQuery,document,window),function(factory){// eslint-disable-line no-extra-semi 1839"use strict";"function"==typeof define&&define.amd? 1840// AMD 1841define(["jquery"],factory):"undefined"!=typeof module&&module.exports? 1842// CommonJS 1843module.exports=factory(require("jquery")): 1844// Global 1845factory(jQuery)}(function($){/* 1846 * internal 1847 */ 1848var _previousResizeWidth=-1,_updateTimeout=-1,_parse=function(value){ 1849// parse value and convert NaN to 0 1850return parseFloat(value)||0},_rows=function(elements){var $elements=$(elements),lastTop=null,rows=[]; 1851// group elements by their top position 1852return $elements.each(function(){var $that=$(this),top=$that.offset().top-_parse($that.css("margin-top")),lastRow=rows.length>0?rows[rows.length-1]:null;null===lastRow? 1853// first item on the row, so just push it 1854rows.push($that): 1855// if the row top is the same, add to the row group 1856Math.floor(Math.abs(lastTop-top))<=1?rows[rows.length-1]=lastRow.add($that): 1857// otherwise start a new row group 1858rows.push($that), 1859// keep track of the last row top 1860lastTop=top}),rows},_parseOptions=function(options){var opts={byRow:!0,property:"height",target:null,remove:!1};return"object"==typeof options?$.extend(opts,options):("boolean"==typeof options?opts.byRow=options:"remove"===options&&(opts.remove=!0),opts)},matchHeight=$.fn.matchHeight=function(options){var opts=_parseOptions(options); 1861// handle remove 1862if(opts.remove){var that=this; 1863// TODO: cleanup empty groups 1864// remove fixed height from all selected elements 1865// remove selected elements from all groups 1866return this.css(opts.property,""),$.each(matchHeight._groups,function(key,group){group.elements=group.elements.not(that)}),this} 1867// keep track of this group so we can re-apply later on load and resize events 1868// match each element's height to the tallest element in the selection 1869return this.length<=1&&!opts.target?this:(matchHeight._groups.push({elements:this,options:opts}),matchHeight._apply(this,opts),this)};/* 1870 * plugin global options 1871 */ 1872matchHeight.version="master",matchHeight._groups=[],matchHeight._throttle=80,matchHeight._maintainScroll=!1,matchHeight._beforeUpdate=null,matchHeight._afterUpdate=null,matchHeight._rows=_rows,matchHeight._parse=_parse,matchHeight._parseOptions=_parseOptions,/* 1873 * matchHeight._apply 1874 * apply matchHeight to given elements 1875 */ 1876matchHeight._apply=function(elements,options){var opts=_parseOptions(options),$elements=$(elements),rows=[$elements],scrollTop=$(window).scrollTop(),htmlHeight=$("html").outerHeight(!0),$hiddenParents=$elements.parents().filter(":hidden"); 1877// cache the original inline style 1878// temporarily must force hidden parents visible 1879// get rows if using byRow, otherwise assume one row 1880// must first force an arbitrary equal height so floating elements break evenly 1881// get the array of rows (based on element top position) 1882// revert original inline styles 1883// revert hidden parents 1884// restore scroll position if enabled 1885return $hiddenParents.each(function(){var $that=$(this);$that.data("style-cache",$that.attr("style"))}),$hiddenParents.css("display","block"),opts.byRow&&!opts.target&&($elements.each(function(){var $that=$(this),display=$that.css("display"); 1886// temporarily force a usable display value 1887"inline-block"!==display&&"flex"!==display&&"inline-flex"!==display&&(display="block"),
1888// cache the original inline style 1889$that.data("style-cache",$that.attr("style")),$that.css({display:display,"padding-top":"0","padding-bottom":"0","margin-top":"0","margin-bottom":"0","border-top-width":"0","border-bottom-width":"0",height:"100px",overflow:"hidden"})}),rows=_rows($elements),$elements.each(function(){var $that=$(this);$that.attr("style",$that.data("style-cache")||"")})),$.each(rows,function(key,row){var $row=$(row),targetHeight=0;if(opts.target) 1890// if target set, use the height of the target element 1891targetHeight=opts.target.outerHeight(!1);else{ 1892// skip apply to rows with only one item 1893if(opts.byRow&&$row.length<=1)return void $row.css(opts.property,""); 1894// iterate the row and find the max height 1895$row.each(function(){var $that=$(this),display=$that.css("display"); 1896// temporarily force a usable display value 1897"inline-block"!==display&&"flex"!==display&&"inline-flex"!==display&&(display="block"); 1898// ensure we get the correct actual height (and not a previously set height value) 1899var css={display:display};css[opts.property]="",$that.css(css), 1900// find the max height (including padding, but not margin) 1901$that.outerHeight(!1)>targetHeight&&(targetHeight=$that.outerHeight(!1)), 1902// revert display block 1903$that.css("display","")})} 1904// iterate the row and apply the height to all elements 1905$row.each(function(){var $that=$(this),verticalPadding=0; 1906// don't apply to a target 1907opts.target&&$that.is(opts.target)||( 1908// handle padding and border correctly (required when not using border-box) 1909"border-box"!==$that.css("box-sizing")&&(verticalPadding+=_parse($that.css("border-top-width"))+_parse($that.css("border-bottom-width")),verticalPadding+=_parse($that.css("padding-top"))+_parse($that.css("padding-bottom"))), 1910// set the height (accounting for padding and border) 1911$that.css(opts.property,targetHeight-verticalPadding+"px"))})}),$hiddenParents.each(function(){var $that=$(this);$that.attr("style",$that.data("style-cache")||null)}),matchHeight._maintainScroll&&$(window).scrollTop(scrollTop/htmlHeight*$("html").outerHeight(!0)),this},/* 1912 * matchHeight._applyDataApi 1913 * applies matchHeight to all elements with a data-match-height attribute 1914 */ 1915matchHeight._applyDataApi=function(){var groups={}; 1916// generate groups by their groupId set by elements using data-match-height 1917$("[data-match-height], [data-mh]").each(function(){var $this=$(this),groupId=$this.attr("data-mh")||$this.attr("data-match-height");groups[groupId]=groupId in groups?groups[groupId].add($this):$this}), 1918// apply matchHeight to each group 1919$.each(groups,function(){this.matchHeight(!0)})};/* 1920 * matchHeight._update 1921 * updates matchHeight on all current groups with their correct options 1922 */ 1923var _update=function(event){matchHeight._beforeUpdate&&matchHeight._beforeUpdate(event,matchHeight._groups),$.each(matchHeight._groups,function(){matchHeight._apply(this.elements,this.options)}),matchHeight._afterUpdate&&matchHeight._afterUpdate(event,matchHeight._groups)};matchHeight._update=function(throttle,event){ 1924// prevent update if fired from a resize event 1925// where the viewport width hasn't actually changed 1926// fixes an event looping bug in IE8 1927if(event&&"resize"===event.type){var windowWidth=$(window).width();if(windowWidth===_previousResizeWidth)return;_previousResizeWidth=windowWidth} 1928// throttle updates 1929throttle?-1===_updateTimeout&&(_updateTimeout=setTimeout(function(){_update(event),_updateTimeout=-1},matchHeight._throttle)):_update(event)},/* 1930 * bind events 1931 */ 1932// apply on DOM ready event 1933$(matchHeight._applyDataApi), 1934// update heights on load and resize events 1935$(window).bind("load",function(event){matchHeight._update(!1,event)}), 1936// throttled update heights on resize events 1937$(window).bind("resize orientationchange",function(event){matchHeight._update(!0,event)})}),/*! 1938 * jQuery Validation Plugin v1.14.0 1939 * 1940 * http://jqueryvalidation.org/ 1941 * 1942 * Copyright (c) 2015 Jörn Zaefferer 1943 * Released under the MIT license 1944 */ 1945function(factory){"function"==typeof define&&define.amd?define(["jquery","./jquery.validate"],factory):factory(jQuery)}(function($){!function(){function stripHtml(value){ 1946// remove html tags and space chars 1947return value.replace(/<.[^<>]*?>/g," ").replace(/ | /gi," ").replace(/[.(),;:!?%#$'\"_+=\/\-âââ]*/g,"")}$.validator.addMethod("maxWords",function(value,element,params){return this.optional(element)||stripHtml(value).match(/\b\w+\b/g).length<=params},$.validator.format("Please enter {0} words or less.")),$.validator.addMethod("minWords",function(value,element,params){return this.optional(element)||stripHtml(value).match(/\b\w+\b/g).length>=params},$.validator.format("Please enter at least {0} words.")),$.validator.addMethod("rangeWords",function(value,element,params){var valueStripped=stripHtml(value),regex=/\b\w+\b/g;return this.optional(element)||valueStripped.match(regex).length>=params[0]&&valueStripped.match(regex).length<=params[1]},$.validator.format("Please enter between {0} and {1} words."))}(), 1948// Accept a value from a file input based on a required mimetype 1949$.validator.addMethod("accept",function(value,element,param){ 1950// Split mime on commas in case we have multiple types we can accept 1951var i,file,typeParam="string"==typeof param?param.replace(/\s/g,"").replace(/,/g,"|"):"image/*",optionalValue=this.optional(element); 1952// Element is optional 1953if(optionalValue)return optionalValue;if("file"===$(element).attr("type")&&( 1954// If we are using a wildcard, make it regex friendly 1955typeParam=typeParam.replace(/\*/g,".*"),element.files&&element.files.length))for(i=0;i<element.files.length;i++) 1956// Grab the mimetype from the loaded file, verify it matches 1957if(file=element.files[i],!file.type.match(new RegExp("\\.?("+typeParam+")$","i")))return!1; 1958// Either return true because we've validated each file, or because the 1959// browser does not support element.files and the FileList feature 1960return!0},$.validator.format("Please enter a value with a valid mimetype.")),$.validator.addMethod("alphanumeric",function(value,element){return this.optional(element)||/^\w+$/i.test(value)},"Letters, numbers, and underscores only please"),/* 1961 * Dutch bank account numbers (not 'giro' numbers) have 9 digits 1962 * and pass the '11 check'. 1963 * We accept the notation with spaces, as that is common. 1964 * acceptable: 123456789 or 12 34 56 789 1965 */ 1966$.validator.addMethod("bankaccountNL",function(value,element){if(this.optional(element))return!0;
1966if(!/^[0-9]{9}|([0-9]{2} ){3}[0-9]{3}$/.test(value))return!1; 1967// now '11 check' 1968var pos,factor,digit,account=value.replace(/ /g,""),// remove spaces 1969sum=0,len=account.length;for(pos=0;pos<len;pos++)factor=len-pos,digit=account.substring(pos,pos+1),sum+=factor*digit;return sum%11==0},"Please specify a valid bank account number"),$.validator.addMethod("bankorgiroaccountNL",function(value,element){return this.optional(element)||$.validator.methods.bankaccountNL.call(this,value,element)||$.validator.methods.giroaccountNL.call(this,value,element)},"Please specify a valid bank or giro account number"),/** 1970 * BIC is the business identifier code (ISO 9362). This BIC check is not a guarantee for authenticity. 1971 * 1972 * BIC pattern: BBBBCCLLbbb (8 or 11 characters long; bbb is optional) 1973 * 1974 * BIC definition in detail: 1975 * - First 4 characters - bank code (only letters) 1976 * - Next 2 characters - ISO 3166-1 alpha-2 country code (only letters) 1977 * - Next 2 characters - location code (letters and digits) 1978 * a. shall not start with '0' or '1' 1979 * b. second character must be a letter ('O' is not allowed) or one of the following digits ('0' for test (therefore not allowed), '1' for passive participant and '2' for active participant) 1980 * - Last 3 characters - branch code, optional (shall not start with 'X' except in case of 'XXX' for primary office) (letters and digits) 1981 */ 1982$.validator.addMethod("bic",function(value,element){return this.optional(element)||/^([A-Z]{6}[A-Z2-9][A-NP-Z1-2])(X{3}|[A-WY-Z0-9][A-Z0-9]{2})?$/.test(value)},"Please specify a valid BIC code"),/* 1983 * Código de identificación fiscal ( CIF ) is the tax identification code for Spanish legal entities 1984 * Further rules can be found in Spanish on http://es.wikipedia.org/wiki/C%C3%B3digo_de_identificaci%C3%B3n_fiscal 1985 */ 1986$.validator.addMethod("cifES",function(value){"use strict";var controlDigit,sum,i,count,tmp,secondDigit,num=[]; 1987// Quick format test 1988if(value=value.toUpperCase(),!value.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)"))return!1;for(i=0;i<9;i++)num[i]=parseInt(value.charAt(i),10);for( 1989// Algorithm for checking CIF codes 1990sum=num[2]+num[4]+num[6],count=1;count<8;count+=2)tmp=(2*num[count]).toString(),secondDigit=tmp.charAt(1),sum+=parseInt(tmp.charAt(0),10)+(""===secondDigit?0:parseInt(secondDigit,10));/* The first (position 1) is a letter following the following criteria: 1991 * A. Corporations 1992 * B. LLCs 1993 * C. General partnerships 1994 * D. Companies limited partnerships 1995 * E. Communities of goods 1996 * F. Cooperative Societies 1997 * G. Associations 1998 * H. Communities of homeowners in horizontal property regime 1999 * J. Civil Societies 2000 * K. Old format 2001 * L. Old format 2002 * M. Old format 2003 * N. Nonresident entities 2004 * P. Local authorities 2005 * Q. Autonomous bodies, state or not, and the like, and congregations and religious institutions 2006 * R. Congregations and religious institutions (since 2008 ORDER EHA/451/2008) 2007 * S. Organs of State Administration and regions 2008 * V. Agrarian Transformation 2009 * W. Permanent establishments of non-resident in Spain 2010 */ 2011/* The first (position 1) is a letter following the following criteria: 2012 * A. Corporations 2013 * B. LLCs 2014 * C. General partnerships 2015 * D. Companies limited partnerships 2016 * E. Communities of goods 2017 * F. Cooperative Societies 2018 * G. Associations 2019 * H. Communities of homeowners in horizontal property regime 2020 * J. Civil Societies 2021 * K. Old format 2022 * L. Old format 2023 * M. Old format 2024 * N. Nonresident entities 2025 * P. Local authorities 2026 * Q. Autonomous bodies, state or not, and the like, and congregations and religious institutions 2027 * R. Congregations and religious institutions (since 2008 ORDER EHA/451/2008) 2028 * S. Organs of State Administration and regions 2029 * V. Agrarian Transformation 2030 * W. Permanent establishments of non-resident in Spain 2031 */ 2032return!!/^[ABCDEFGHJNPQRSUVW]{1}/.test(value)&&(sum+="",controlDigit=10-parseInt(sum.charAt(sum.length-1),10),value+=controlDigit,num[8].toString()===String.fromCharCode(64+controlDigit)||num[8].toString()===value.charAt(value.length-1))},"Please specify a valid CIF number."),/* 2033 * Brazillian CPF number (Cadastrado de Pessoas FÃsicas) is the equivalent of a Brazilian tax registration number. 2034 * CPF numbers have 11 digits in total: 9 numbers followed by 2 check numbers that are being used for validation. 2035 */ 2036$.validator.addMethod("cpfBR",function(value){ 2037// Checking value to have 11 digits only 2038if( 2039// Removing special characters from value 2040value=value.replace(/([~!@#$%^&*()_+=`{}\[\]\-|\\:;'<>,.\/? ])+/g,""),11!==value.length)return!1;var firstCN,secondCN,checkResult,i,sum=0; 2041// Checking for dump data 2042if(firstCN=parseInt(value.substring(9,10),10),secondCN=parseInt(value.substring(10,11),10),checkResult=function(sum,cn){var result=10*sum%11;return 10!==result&&11!==result||(result=0),result===cn},""===value||"00000000000"===value||"11111111111"===value||"22222222222"===value||"33333333333"===value||"44444444444"===value||"55555555555"===value||"66666666666"===value||"77777777777"===value||"88888888888"===value||"99999999999"===value)return!1; 2043// Step 1 - using first Check Number: 2044for(i=1;i<=9;i++)sum+=parseInt(value.substring(i-1,i),10)*(11-i); 2045// If first Check Number (CN) is valid, move to Step 2 - using second Check Number: 2046if(checkResult(sum,firstCN)){for(sum=0,i=1;i<=10;i++)sum+=parseInt(value.substring(i-1,i),10)*(12-i);return checkResult(sum,secondCN)}return!1},"Please specify a valid CPF number"),/* NOTICE: Modified version of Castle.Components.Validator.CreditCardValidator 2047 * Redistributed under the the Apache License 2.0 at http://www.apache.org/licenses/LICENSE-2.0 2048 * Valid Types: mastercard, visa, amex, dinersclub, enroute, discover, jcb, unknown, all (overrides all other settings) 2049 */ 2050$.validator.addMethod("creditcardtypes",function(value,element,param){if(/[^0-9\-]+/.test(value))return!1;value=value.replace(/\D/g,"");var validTypes=0;return param.mastercard&&(validTypes|=1),param.visa&&(validTypes|=2),param.amex&&(validTypes|=4),param.dinersclub&&(validTypes|=8),param.enroute&&(validTypes|=16),param.discover&&(validTypes|=32),param.jcb&&(validTypes|=64),param.unknown&&(validTypes|=128),param.all&&(validTypes=255),1&validTypes&&/^(5[12345])/.test(value)?16===value.length:2&val
vendor: 9,337 bytes, lines 2050-2132
2050idTypes&&/^(4)/.test(value)?16===value.length:4&validTypes&&/^(3[47])/.test(value)?15===value.length:8&validTypes&&/^(3(0[012345]|[68]))/.test(value)?14===value.length:16&validTypes&&/^(2(014|149))/.test(value)?15===value.length:32&validTypes&&/^(6011)/.test(value)?16===value.length:64&validTypes&&/^(3)/.test(value)?16===value.length:64&validTypes&&/^(2131|1800)/.test(value)?15===value.length:!!(128&validTypes)},"Please enter a valid credit card number."),/** 2051 * Validates currencies with any given symbols by @jameslouiz 2052 * Symbols can be optional or required. Symbols required by default 2053 * 2054 * Usage examples: 2055 * currency: ["£", false] - Use false for soft currency validation 2056 * currency: ["$", false] 2057 * currency: ["RM", false] - also works with text based symbols such as "RM" - Malaysia Ringgit etc 2058 * 2059 * <input class="currencyInput" name="currencyInput"> 2060 * 2061 * Soft symbol checking 2062 * currencyInput: { 2063 * currency: ["$", false] 2064 * } 2065 * 2066 * Strict symbol checking (default) 2067 * currencyInput: { 2068 * currency: "$" 2069 * //OR 2070 * currency: ["$", true] 2071 * } 2072 * 2073 * Multiple Symbols 2074 * currencyInput: { 2075 * currency: "$,£,¢" 2076 * } 2077 */ 2078$.validator.addMethod("currency",function(value,element,param){var regex,isParamString="string"==typeof param,symbol=isParamString?param:param[0],soft=!!isParamString||param[1];return symbol=symbol.replace(/,/g,""),symbol=soft?symbol+"]":symbol+"]?",regex="^["+symbol+"([1-9]{1}[0-9]{0,2}(\\,[0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)$",regex=new RegExp(regex),this.optional(element)||regex.test(value)},"Please specify a valid currency"),$.validator.addMethod("dateFA",function(value,element){return this.optional(element)||/^[1-4]\d{3}\/((0?[1-6]\/((3[0-1])|([1-2][0-9])|(0?[1-9])))|((1[0-2]|(0?[7-9]))\/(30|([1-2][0-9])|(0?[1-9]))))$/.test(value)},$.validator.messages.date),/** 2079 * Return true, if the value is a valid date, also making this formal check dd/mm/yyyy. 2080 * 2081 * @example $.validator.methods.date("01/01/1900") 2082 * @result true 2083 * 2084 * @example $.validator.methods.date("01/13/1990") 2085 * @result false 2086 * 2087 * @example $.validator.methods.date("01.01.1900") 2088 * @result false 2089 * 2090 * @example <input name="pippo" class="{dateITA:true}" /> 2091 * @desc Declares an optional input element whose value must be a valid date. 2092 * 2093 * @name $.validator.methods.dateITA 2094 * @type Boolean 2095 * @cat Plugins/Validate/Methods 2096 */ 2097$.validator.addMethod("dateITA",function(value,element){var adata,gg,mm,aaaa,xdata,check=!1,re=/^\d{1,2}\/\d{1,2}\/\d{4}$/;return re.test(value)?(adata=value.split("/"),gg=parseInt(adata[0],10),mm=parseInt(adata[1],10),aaaa=parseInt(adata[2],10),xdata=new Date(Date.UTC(aaaa,mm-1,gg,12,0,0,0)),check=xdata.getUTCFullYear()===aaaa&&xdata.getUTCMonth()===mm-1&&xdata.getUTCDate()===gg):check=!1,this.optional(element)||check},$.validator.messages.date),$.validator.addMethod("dateNL",function(value,element){return this.optional(element)||/^(0?[1-9]|[12]\d|3[01])[\.\/\-](0?[1-9]|1[012])[\.\/\-]([12]\d)?(\d\d)$/.test(value)},$.validator.messages.date), 2098// Older "accept" file extension method. Old docs: http://docs.jquery.com/Plugins/Validation/Methods/accept 2099$.validator.addMethod("extension",function(value,element,param){return param="string"==typeof param?param.replace(/,/g,"|"):"png|jpe?g|gif",this.optional(element)||value.match(new RegExp("\\.("+param+")$","i"))},$.validator.format("Please enter a value with a valid extension.")),/** 2100 * Dutch giro account numbers (not bank numbers) have max 7 digits 2101 */ 2102$.validator.addMethod("giroaccountNL",function(value,element){return this.optional(element)||/^[0-9]{1,7}$/.test(value)},"Please specify a valid giro account number"),/** 2103 * IBAN is the international bank account number. 2104 * It has a country - specific format, that is checked here too 2105 */ 2106$.validator.addMethod("iban",function(value,element){ 2107// some quick simple tests to prevent needless work 2108if(this.optional(element))return!0; 2109// remove spaces and to upper case 2110var countrycode,ibancheck,charAt,cChar,bbanpattern,bbancountrypatterns,ibanregexp,i,p,iban=value.replace(/ /g,"").toUpperCase(),ibancheckdigits="",leadingZeroes=!0,cRest="",cOperator=""; 2111// As new countries will start using IBAN in the 2112// future, we only check if the countrycode is known. 2113// This prevents false negatives, while almost all 2114// false positives introduced by this, will be caught 2115// by the checksum validation below anyway. 2116// Strict checking should return FALSE for unknown 2117// countries. 2118if( 2119// check the country code and find the country specific format 2120countrycode=iban.substring(0,2),bbancountrypatterns={AL:"\\d{8}[\\dA-Z]{16}",AD:"\\d{8}[\\dA-Z]{12}",AT:"\\d{16}",AZ:"[\\dA-Z]{4}\\d{20}",BE:"\\d{12}",BH:"[A-Z]{4}[\\dA-Z]{14}",BA:"\\d{16}",BR:"\\d{23}[A-Z][\\dA-Z]",BG:"[A-Z]{4}\\d{6}[\\dA-Z]{8}",CR:"\\d{17}",HR:"\\d{17}",CY:"\\d{8}[\\dA-Z]{16}",CZ:"\\d{20}",DK:"\\d{14}",DO:"[A-Z]{4}\\d{20}",EE:"\\d{16}",FO:"\\d{14}",FI:"\\d{14}",FR:"\\d{10}[\\dA-Z]{11}\\d{2}",GE:"[\\dA-Z]{2}\\d{16}",DE:"\\d{18}",GI:"[A-Z]{4}[\\dA-Z]{15}",GR:"\\d{7}[\\dA-Z]{16}",GL:"\\d{14}",GT:"[\\dA-Z]{4}[\\dA-Z]{20}",HU:"\\d{24}",IS:"\\d{22}",IE:"[\\dA-Z]{4}\\d{14}",IL:"\\d{19}",IT:"[A-Z]\\d{10}[\\dA-Z]{12}",KZ:"\\d{3}[\\dA-Z]{13}",KW:"[A-Z]{4}[\\dA-Z]{22}",LV:"[A-Z]{4}[\\dA-Z]{13}",LB:"\\d{4}[\\dA-Z]{20}",LI:"\\d{5}[\\dA-Z]{12}",LT:"\\d{16}",LU:"\\d{3}[\\dA-Z]{13}",MK:"\\d{3}[\\dA-Z]{10}\\d{2}",MT:"[A-Z]{4}\\d{5}[\\dA-Z]{18}",MR:"\\d{23}",MU:"[A-Z]{4}\\d{19}[A-Z]{3}",MC:"\\d{10}[\\dA-Z]{11}\\d{2}",MD:"[\\dA-Z]{2}\\d{18}",ME:"\\d{18}",NL:"[A-Z]{4}\\d{10}",NO:"\\d{11}",PK:"[\\dA-Z]{4}\\d{16}",PS:"[\\dA-Z]{4}\\d{21}",PL:"\\d{24}",PT:"\\d{21}",RO:"[A-Z]{4}[\\dA-Z]{16}",SM:"[A-Z]\\d{10}[\\dA-Z]{12}",SA:"\\d{2}[\\dA-Z]{18}",RS:"\\d{18}",SK:"\\d{20}",SI:"\\d{15}",ES:"\\d{20}",SE:"\\d{20}",CH:"\\d{5}[\\dA-Z]{12}",TN:"\\d{20}",TR:"\\d{5}[\\dA-Z]{17}",AE:"\\d{3}\\d{16}",GB:"[A-Z]{4}\\d{14}",VG:"[\\dA-Z]{4}\\d{16}"},void 0!==(bbanpattern=bbancountrypatterns[countrycode])&&(ibanregexp=new RegExp("^[A-Z]{2}\\d{2}"+bbanpattern+"$",""),!ibanregexp.test(iban)))return!1;for( 2121// now check the checksum, first convert to digits 2122ibancheck=iban.substring(4,iban.length)+iban.substring(0,4),i=0;i<ibancheck.length;i++)charAt=ibancheck.charAt(i),"0"!==charAt&&(leadingZeroes=!1),leadingZeroes||(ibancheckdigits+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".indexOf(charAt)); 2123// calculate the result of: ibancheckdigits % 97 2124for(p=0;p<ibancheckdigits.length;p++)cChar=ibancheckdigits.charAt(p),cOperator=""+cRest+cChar,cRest=cOperator%97;return 1===cRest},"Please specify a valid IBAN"),$.validator.addMethod("integer",function(value,element){return this.optional(element)||/^-?\d+$/.test(value)},"A positive or negative non-decimal number please"),$.validator.addMethod("ipv4",function(value,element){return this.optional(element)||/^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test(value)},"Please enter a valid IP v4 address."),$.validator.addMethod("ipv6",function(value,element){return this.optional(element)||/^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(value)},"Please enter a valid IP v6 address."),$.validator.addMethod("lettersonly",function(value,element){return this.optional(element)||/^[a-z]+$/i.test(value)},"Letters only please"),$.validator.addMethod("letterswithbasicpunc",function(value,element){return this.optional(element)||/^[a-z\-.,()'"\s]+$/i.test(value)},"Letters or punctuation only please"),$.validator.addMethod("mobileNL",function(value,element){return this.optional(element)||/^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)6((\s|\s?\-\s?)?[0-9]){8}$/.test(value)},"Please specify a valid mobile number"),/* For UK phone functions, do the following server side processing: 2125 * Compare original input with this RegEx pattern: 2126 * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ 2127 * Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0' 2128 * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. 2129 * A number of very detailed GB telephone number RegEx patterns can also be found at: 2130 * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers 2131 */ 2132$.validator.addMethod("mobileUK",function(phone_number,element){return phone_number=phone_number.replace(/\(|\)|\s+|-/g,""),this.optional(element)||phone_number.length>
21329&&phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[1345789]\d{2}|624)\s?\d{3}\s?\d{3})$/)},"Please specify a valid mobile number"),/* 2133 * The número de identidad de extranjero ( NIE )is a code used to identify the non-nationals in Spain 2134 */ 2135$.validator.addMethod("nieES",function(value){"use strict"; 2136// Basic format test 2137// Basic format test 2138// Test NIE 2139//T 2140//XYZ 2141return value=value.toUpperCase(),!!value.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)")&&(/^[T]{1}/.test(value)?value[8]===/^[T]{1}[A-Z0-9]{8}$/.test(value):!!/^[XYZ]{1}/.test(value)&&value[8]==="TRWAGMYFPDXBNJZSQVHLCKE".charAt(value.replace("X","0").replace("Y","1").replace("Z","2").substring(0,8)%23))},"Please specify a valid NIE number."),/* 2142 * The Número de Identificación Fiscal ( NIF ) is the way tax identification used in Spain for individuals 2143 */ 2144$.validator.addMethod("nifES",function(value){"use strict"; 2145// Basic format test 2146// Basic format test 2147// Test NIF 2148// Test specials NIF (starts with K, L or M) 2149return value=value.toUpperCase(),!!value.match("((^[A-Z]{1}[0-9]{7}[A-Z0-9]{1}$|^[T]{1}[A-Z0-9]{8}$)|^[0-9]{8}[A-Z]{1}$)")&&(/^[0-9]{8}[A-Z]{1}$/.test(value)?"TRWAGMYFPDXBNJZSQVHLCKE".charAt(value.substring(8,0)%23)===value.charAt(8):!!/^[KLM]{1}/.test(value)&&value[8]===String.fromCharCode(64))},"Please specify a valid NIF number."),jQuery.validator.addMethod("notEqualTo",function(value,element,param){return this.optional(element)||!$.validator.methods.equalTo.call(this,value,element,param)},"Please enter a different value, values must not be the same."),$.validator.addMethod("nowhitespace",function(value,element){return this.optional(element)||/^\S+$/i.test(value)},"No white space please"),/** 2150* Return true if the field value matches the given format RegExp 2151* 2152* @example $.validator.methods.pattern("AR1004",element,/^AR\d{4}$/) 2153* @result true 2154* 2155* @example $.validator.methods.pattern("BR1004",element,/^AR\d{4}$/) 2156* @result false 2157* 2158* @name $.validator.methods.pattern 2159* @type Boolean 2160* @cat Plugins/Validate/Methods 2161*/ 2162$.validator.addMethod("pattern",function(value,element,param){return!!this.optional(element)||("string"==typeof param&&(param=new RegExp("^(?:"+param+")$")),param.test(value))},"Invalid format."),/** 2163 * Dutch phone numbers have 10 digits (or 11 and start with +31). 2164 */ 2165$.validator.addMethod("phoneNL",function(value,element){return this.optional(element)||/^((\+|00(\s|\s?\-\s?)?)31(\s|\s?\-\s?)?(\(0\)[\-\s]?)?|0)[1-9]((\s|\s?\-\s?)?[0-9]){8}$/.test(value)},"Please specify a valid phone number."),/* For UK phone functions, do the following server side processing: 2166 * Compare original input with this RegEx pattern: 2167 * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ 2168 * Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0' 2169 * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. 2170 * A number of very detailed GB telephone number RegEx patterns can also be found at: 2171 * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers 2172 */ 2173$.validator.addMethod("phoneUK",function(phone_number,element){return phone_number=phone_number.replace(/\(|\)|\s+|-/g,""),this.optional(element)||phone_number.length>9&&phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:\d{2}\)?\s?\d{4}\s?\d{4}|\d{3}\)?\s?\d{3}\s?\d{3,4}|\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3})|\d{5}\)?\s?\d{4,5})$/)},"Please specify a valid phone number"),/** 2174 * matches US phone number format 2175 * 2176 * where the area code may not start with 1 and the prefix may not start with 1 2177 * allows '-' or ' ' as a separator and allows parens around area code 2178 * some people may want to put a '1' in front of their number 2179 * 2180 * 1(212)-999-2345 or 2181 * 212 999 2344 or 2182 * 212-999-0983 2183 * 2184 * but not 2185 * 111-123-5434 2186 * and not 2187 * 212 123 4567 2188 */ 2189$.validator.addMethod("phoneUS",function(phone_number,element){return phone_number=phone_number.replace(/\s+/g,""),this.optional(element)||phone_number.length>9&&phone_number.match(/^(\+?1-?)?(\([2-9]([02-9]\d|1[02-9])\)|[2-9]([02-9]\d|1[02-9]))-?[2-9]([02-9]\d|1[02-9])-?\d{4}$/)},"Please specify a valid phone number"),/* For UK phone functions, do the following server side processing: 2190 * Compare original input with this RegEx pattern: 2191 * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ 2192 * Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0' 2193 * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. 2194 * A number of very detailed GB telephone number RegEx patterns can also be found at: 2195 * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers 2196 */ 2197//Matches UK landline + mobile, accepting only 01-3 for landline or 07 for mobile to exclude many premium numbers 2198$.validator.addMethod("phonesUK",function(phone_number,element){return phone_number=phone_number.replace(/\(|\)|\s+|-/g,""),this.optional(element)||phone_number.length>
vendor: 4,954 bytes, lines 2198-2269
21989&&phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/)},"Please specify a valid uk phone number"),/** 2199 * Matches a valid Canadian Postal Code 2200 * 2201 * @example jQuery.validator.methods.postalCodeCA( "H0H 0H0", element ) 2202 * @result true 2203 * 2204 * @example jQuery.validator.methods.postalCodeCA( "H0H0H0", element ) 2205 * @result false 2206 * 2207 * @name jQuery.validator.methods.postalCodeCA 2208 * @type Boolean 2209 * @cat Plugins/Validate/Methods 2210 */ 2211$.validator.addMethod("postalCodeCA",function(value,element){return this.optional(element)||/^[ABCEGHJKLMNPRSTVXY]\d[A-Z] \d[A-Z]\d$/.test(value)},"Please specify a valid postal code"),/* 2212* Valida CEPs do brasileiros: 2213* 2214* Formatos aceitos: 2215* 99999-999 2216* 99.999-999 2217* 99999999 2218*/ 2219$.validator.addMethod("postalcodeBR",function(cep_value,element){return this.optional(element)||/^\d{2}.\d{3}-\d{3}?$|^\d{5}-?\d{3}?$/.test(cep_value)},"Informe um CEP válido."),/* Matches Italian postcode (CAP) */ 2220$.validator.addMethod("postalcodeIT",function(value,element){return this.optional(element)||/^\d{5}$/.test(value)},"Please specify a valid postal code"),$.validator.addMethod("postalcodeNL",function(value,element){return this.optional(element)||/^[1-9][0-9]{3}\s?[a-zA-Z]{2}$/.test(value)},"Please specify a valid postal code"), 2221// Matches UK postcode. Does not match to UK Channel Islands that have their own postcodes (non standard UK) 2222$.validator.addMethod("postcodeUK",function(value,element){return this.optional(element)||/^((([A-PR-UWYZ][0-9])|([A-PR-UWYZ][0-9][0-9])|([A-PR-UWYZ][A-HK-Y][0-9])|([A-PR-UWYZ][A-HK-Y][0-9][0-9])|([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY]))\s?([0-9][ABD-HJLNP-UW-Z]{2})|(GIR)\s?(0AA))$/i.test(value)},"Please specify a valid UK postcode"),/* 2223 * Lets you say "at least X inputs that match selector Y must be filled." 2224 * 2225 * The end result is that neither of these inputs: 2226 * 2227 * <input class="productinfo" name="partnumber"> 2228 * <input class="productinfo" name="description"> 2229 * 2230 * ...will validate unless at least one of them is filled. 2231 * 2232 * partnumber: {require_from_group: [1,".productinfo"]}, 2233 * description: {require_from_group: [1,".productinfo"]} 2234 * 2235 * options[0]: number of fields that must be filled in the group 2236 * options[1]: CSS selector that defines the group of conditionally required fields 2237 */ 2238$.validator.addMethod("require_from_group",function(value,element,options){var $fields=$(options[1],element.form),$fieldsFirst=$fields.eq(0),validator=$fieldsFirst.data("valid_req_grp")?$fieldsFirst.data("valid_req_grp"):$.extend({},this),isValid=$fields.filter(function(){return validator.elementValue(this)}).length>=options[0]; 2239// Store the cloned validator for future validation 2240// If element isn't being validated, run each require_from_group field's validation rules 2241return $fieldsFirst.data("valid_req_grp",validator),$(element).data("being_validated")||($fields.data("being_validated",!0),$fields.each(function(){validator.element(this)}),$fields.data("being_validated",!1)),isValid},$.validator.format("Please fill at least {0} of these fields.")),/* 2242 * Lets you say "either at least X inputs that match selector Y must be filled, 2243 * OR they must all be skipped (left blank)." 2244 * 2245 * The end result, is that none of these inputs: 2246 * 2247 * <input class="productinfo" name="partnumber"> 2248 * <input class="productinfo" name="description"> 2249 * <input class="productinfo" name="color"> 2250 * 2251 * ...will validate unless either at least two of them are filled, 2252 * OR none of them are. 2253 * 2254 * partnumber: {skip_or_fill_minimum: [2,".productinfo"]}, 2255 * description: {skip_or_fill_minimum: [2,".productinfo"]}, 2256 * color: {skip_or_fill_minimum: [2,".productinfo"]} 2257 * 2258 * options[0]: number of fields that must be filled in the group 2259 * options[1]: CSS selector that defines the group of conditionally required fields 2260 * 2261 */ 2262$.validator.addMethod("skip_or_fill_minimum",function(value,element,options){var $fields=$(options[1],element.form),$fieldsFirst=$fields.eq(0),validator=$fieldsFirst.data("valid_skip")?$fieldsFirst.data("valid_skip"):$.extend({},this),numberFilled=$fields.filter(function(){return validator.elementValue(this)}).length,isValid=0===numberFilled||numberFilled>=options[0]; 2263// Store the cloned validator for future validation 2264// If element isn't being validated, run each skip_or_fill_minimum field's validation rules 2265return $fieldsFirst.data("valid_skip",validator),$(element).data("being_validated")||($fields.data("being_validated",!0),$fields.each(function(){validator.element(this)}),$fields.data("being_validated",!1)),isValid},$.validator.format("Please either skip these fields or fill at least {0} of them.")),/* Validates US States and/or Territories by @jdforsythe 2266 * Can be case insensitive or require capitalization - default is case insensitive 2267 * Can include US Territories or not - default does not 2268 * Can include US Military postal abbreviations (AA, AE, AP) - default does not 2269 *
2270 * Note: "States" always includes DC (District of Colombia) 2271 * 2272 * Usage examples: 2273 * 2274 * This is the default - case insensitive, no territories, no military zones 2275 * stateInput: { 2276 * caseSensitive: false, 2277 * includeTerritories: false, 2278 * includeMilitary: false 2279 * } 2280 * 2281 * Only allow capital letters, no territories, no military zones 2282 * stateInput: { 2283 * caseSensitive: false 2284 * } 2285 * 2286 * Case insensitive, include territories but not military zones 2287 * stateInput: { 2288 * includeTerritories: true 2289 * } 2290 * 2291 * Only allow capital letters, include territories and military zones 2292 * stateInput: { 2293 * caseSensitive: true, 2294 * includeTerritories: true, 2295 * includeMilitary: true 2296 * } 2297 * 2298 * 2299 * 2300 */ 2301$.validator.addMethod("stateUS",function(value,element,options){var regex,isDefault=void 0===options,caseSensitive=!isDefault&&void 0!==options.caseSensitive&&options.caseSensitive,includeTerritories=!isDefault&&void 0!==options.includeTerritories&&options.includeTerritories,includeMilitary=!isDefault&&void 0!==options.includeMilitary&&options.includeMilitary;return regex=includeTerritories||includeMilitary?includeTerritories&&includeMilitary?"^(A[AEKLPRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$":includeTerritories?"^(A[KLRSZ]|C[AOT]|D[CE]|FL|G[AU]|HI|I[ADLN]|K[SY]|LA|M[ADEINOPST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY])$":"^(A[AEKLPRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$":"^(A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|PA|RI|S[CD]|T[NX]|UT|V[AT]|W[AIVY])$",regex=caseSensitive?new RegExp(regex):new RegExp(regex,"i"),this.optional(element)||regex.test(value)},"Please specify a valid state"), 2302// TODO check if value starts with <, otherwise don't try stripping anything 2303$.validator.addMethod("strippedminlength",function(value,element,param){return $(value).text().length>=param},$.validator.format("Please enter at least {0} characters")),$.validator.addMethod("time",function(value,element){return this.optional(element)||/^([01]\d|2[0-3]|[0-9])(:[0-5]\d){1,2}$/.test(value)},"Please enter a valid time, between 00:00 and 23:59"),$.validator.addMethod("time12h",function(value,element){return this.optional(element)||/^((0?[1-9]|1[012])(:[0-5]\d){1,2}(\ ?[AP]M))$/i.test(value)},"Please enter a valid time in 12-hour am/pm format"), 2304// same as url, but TLD is optional 2305$.validator.addMethod("url2",function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([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])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value)},$.validator.messages.url),/** 2306 * Return true, if the value is a valid vehicle identification number (VIN). 2307 * 2308 * Works with all kind of text inputs. 2309 * 2310 * @example <input type="text" size="20" name="VehicleID" class="{required:true,vinUS:true}" /> 2311 * @desc Declares a required input element whose value must be a valid vehicle identification number. 2312 * 2313 * @name $.validator.methods.vinUS 2314 * @type Boolean 2315 * @cat Plugins/Validate/Methods 2316 */ 2317$.validator.addMethod("vinUS",function(v){if(17!==v.length)return!1;var i,n,d,f,cd,cdv,LL=["A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z"],VL=[1,2,3,4,5,6,7,8,1,2,3,4,5,7,9,2,3,4,5,6,7,8,9],FL=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],rs=0;for(i=0;i<17;i++){if(f=FL[i],d=v.slice(i,i+1),8===i&&(cdv=d),isNaN(d)){for(n=0;n<LL.length;n++)if(d.toUpperCase()===LL[n]){d=VL[n],d*=f,isNaN(cdv)&&8===n&&(cdv=LL[n]);break}}else d*=f;rs+=d}return cd=rs%11,10===cd&&(cd="X"),cd===cdv}
2317,"The specified vehicle identification number (VIN) is invalid."),$.validator.addMethod("zipcodeUS",function(value,element){return this.optional(element)||/^\d{5}(-\d{4})?$/.test(value)},"The specified US ZIP Code is invalid"),$.validator.addMethod("ziprange",function(value,element){return this.optional(element)||/^90[2-5]\d\{2\}-\d{4}$/.test(value)},"Your ZIP-code must be in the range 902xx-xxxx to 905xx-xxxx")}),/*! 2318 * myTabs v2.0.2? 2319 * Copyright (c) 2018 AYC Media 2320 * Dual licensed under the MIT and GPL licenses: 2321 * http://www.opensource.org/licenses/mit-license.php 2322 * http://www.gnu.org/licenses/gpl.html 2323**/ 2324function($){$.fn.myTabs=function(options){ 2325// allows for chaining 2326return this.each(function(){ 2327// Variables 2328var $wrap=$(this),$tabsNavToggle=$wrap.find(".tabs-nav-toggle"),$tabsNav=$wrap.find(".tabs-nav"),$tabsUl=$tabsNav.find("ul"),$tabsLink=($tabsNav.find("li"),$tabsNav.find("a")),$tabSct=$wrap.find(".tab-sct"),selected_index=0,initial_load=!0,plugin={tabKeyBindings:function(){$tabsLink.on("keydown",function(e){e.preventDefault();var exit_nav=!1,k=e.which||e.keyCode;k>=37&&k<=40&&(37===k||38===k?selected_index>-1&&selected_index--:39!==k&&40!==k||(selected_index<$tabsLink.length-1?selected_index++:(selected_index=$tabsLink.length-1,exit_nav=!0)),selected_index>-1?!0===exit_nav?(exit_nav=!1,$tabSct.filter(".current").eq(0).focus()):$tabsLink.eq(selected_index).focus():(selected_index=0,$tabsNavToggle.is(":visible")?$tabsNavToggle.focus():$wrap.focus())),9===k&&(e.shiftKey?selected_index>-1&&selected_index--:selected_index<$tabsLink.length-1?selected_index++:(selected_index=$tabsLink.length-1,exit_nav=!0),selected_index>-1?!0===exit_nav?(exit_nav=!1,$tabSct.filter(".current").eq(0).focus()):$tabsLink.eq(selected_index).focus():(selected_index=0,$tabsNavToggle.is(":visible")?$tabsNavToggle.focus():$wrap.focus())),13===k&&$(this).click()}),$(document).on("focusout",$tabsNav,function(e){$tabsNav.attr({tabindex:"0"}),$(e.relatedTarget).parents(".tabs-nav").length<1&&$tabsNavToggle.is(":visible")&&$tabsNavToggle.hasClass("active")&&($tabsUl.slideUp("fast"),$tabsNavToggle.removeClass("active").attr("aria-expanded","false"))})},tabClick:function(){ 2329// Tab Link Click 2330$tabsLink.on("click",function(e){e.preventDefault(),selected_index=$.inArray(this,$tabsLink);var $current_content=$("#"+this.href.split("#")[1]);if(!$(this).parent().hasClass("current")){var $this=$(this),$newLi=$this.parent(),tabId=$this.attr("href"),$tabId=$(tabId);$tabsLink.parent().removeClass("current"),$.when($tabSct.removeClass("current")).done(function(){$tabId.addClass("current"),initial_load||$tabId.focus()}),$newLi.addClass("current"),$tabsLink.attr({"aria-selected":"false"}),$tabsLink.eq(selected_index).attr({"aria-selected":"true"}),$tabSct.attr({tabindex:"-1","aria-hidden":"true"}),$tabSct.find("a, button, [tabindex], h1, h2, h3, h4, h5, h6, p, img, .error, .entry-content li").not('[tabindex^="-1"]').each(function(i){$(this).attr("tabindex",-2)}),$current_content.attr({tabindex:"0","aria-hidden":"false"}),$current_content.find("a, button, [tabindex], h1, h2, h3, h4, h5, h6, p, img, .error, .entry-content li").not('[tabindex^="-1"]').each(function(i){$(this).attr("tabindex",0)}),toggleTxt=$this.text(),$tabsNavToggle.text(toggleTxt),$tabsNavToggle.hasClass("active")&&($tabsNavToggle.removeClass("active").attr("aria-expanded","false"),$tabsUl.slideUp("fast"))}initial_load||$current_content.focus()})},navToggle:function(){ 2331// Tabs Nav Toggle 2332$tabsNavToggle.on("click",function(e){e.preventDefault(),$tabsNavToggle.hasClass("active")?($tabsUl.slideUp("fast"),$tabsNavToggle.removeClass("active").attr("aria-expanded","false")):($tabsUl.slideDown("fast"),$tabsLink.eq(selected_index).focus(),$tabsNavToggle.addClass("active").attr("aria-expanded","true"))})},openCurrent:function(){ 2333// Determine Initial Tab 2334var hash=window.location.hash;""===hash||null===hash||void 0===hash?$tabsLink.eq(0).click():// tab selected from previous page 2335$wrap.find(hash).hasClass("tab-sct")?$(".tabs-nav a[href='"+hash+"']").click():$tabsLink.eq(0).click(),initial_load=!1},init:function(){$wrap.attr({tabindex:"0"}),$tabsNav.attr({tabindex:"0"}),$tabsLink.attr({tabindex:"-1"}),$tabsNav.on("focus",function(e){$tabsNavToggle.is(":visible")?$tabsNavToggle.focus():$tabsLink.eq(selected_index).focus()}), 2336// Initialize Plugin Functions 2337plugin.tabKeyBindings(),plugin.tabClick(),plugin.navToggle(),plugin.openCurrent()}}; 2338// START IT ALL 2339plugin.init()})}}(jQuery),function(window,document,$){function args(elem){var newAttrs={},rinlinejQuery=/^jQuery\d+$/;return $.each(elem.attributes,function(i,attr){attr.specified&&!rinlinejQuery.test(attr.name)&&(newAttrs[attr.name]=attr.value)}),newAttrs}
2339function clearPlaceholder(event,value){var input=this,$input=$(input);if(input.value==$input.attr("placeholder")&&$input.hasClass("placeholder"))if($input.data("placeholder-password")){if($input=$input.hide().next().show().attr("id",$input.removeAttr("id").data("placeholder-id")),!0===event)return $input[0].value=value;$input.focus()}else input.value="",$input.removeClass("placeholder"),input==safeActiveElement()&&input.select()}function setPlaceholder(){var $replacement,input=this,$input=$(input),id=this.id;if(""==input.value){if("password"==input.type){if(!$input.data("placeholder-textinput")){try{$replacement=$input.clone().attr({type:"text"})}catch(e){$replacement=$("<input>").attr($.extend(args(this),{type:"text"}))}$replacement.removeAttr("name").data({"placeholder-password":$input,"placeholder-id":id}).bind("focus.placeholder",clearPlaceholder),$input.data({"placeholder-textinput":$replacement,"placeholder-id":id}).before($replacement)}$input=$input.removeAttr("id").hide().prev().attr("id",id).show()}$input.addClass("placeholder"),$input[0].value=$input.attr("placeholder")}else $input.removeClass("placeholder")}function safeActiveElement(){try{return document.activeElement}catch(err){}}var hooks,placeholder,isInputSupported="placeholder"in document.createElement("input"),isTextareaSupported="placeholder"in document.createElement("textarea"),prototype=$.fn,valHooks=$.valHooks,propHooks=$.propHooks;isInputSupported&&isTextareaSupported?(placeholder=prototype.placeholder=function(){return this},placeholder.input=placeholder.textarea=!0):(placeholder=prototype.placeholder=function(){var $this=this;return $this.filter((isInputSupported?"textarea":":input")+"[placeholder]").not(".placeholder").bind({"focus.placeholder":clearPlaceholder,"blur.placeholder":setPlaceholder}).data("placeholder-enabled",!0).trigger("blur.placeholder"),$this},placeholder.input=isInputSupported,placeholder.textarea=isTextareaSupported,hooks={get:function(element){var $element=$(element),$passwordInput=$element.data("placeholder-password");return $passwordInput?$passwordInput[0].value:$element.data("placeholder-enabled")&&$element.hasClass("placeholder")?"":element.value},set:function(element,value){var $element=$(element),$passwordInput=$element.data("placeholder-password");return $passwordInput?$passwordInput[0].value=value:$element.data("placeholder-enabled")?(""==value?(element.value=value,element!=safeActiveElement()&&setPlaceholder.call(element)):$element.hasClass("placeholder")?clearPlaceholder.call(element,!0,value)||(element.value=value):element.value=value,$element):element.value=value}},isInputSupported||(valHooks.input=hooks,propHooks.value=hooks),isTextareaSupported||(valHooks.textarea=hooks,propHooks.value=hooks),$(function(){$(document).delegate("form","submit.placeholder",function(){var $inputs=$(".placeholder",this).each(clearPlaceholder);setTimeout(function(){$inputs.each(setPlaceholder)},10)})}),$(window).bind("beforeunload.placeholder",function(){$(".placeholder").each(function(){this.value=""})}))}(this,document,jQuery),function(factory){"use strict";"function"==typeof define&&define.amd?define(["jquery"],factory):"undefined"!=typeof exports?module.exports=factory(require("jquery")):factory(jQuery)}(function($){"use strict";var Slick=window.Slick||{};Slick=function(){function Slick(element,settings){var dataSettings,_=this;_.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:$(element),appendDots:$(element),arrows:!0,asNavFor:null,prevArrow:'<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',nextArrow:'<button class="slick-next" aria-label="Next" type="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(slider,i){return $('<button type="button" />').text(i+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},_.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,
vendor: 8,646 bytes, lines 2339-2343
2339sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},$.extend(_,_.initials),_.activeBreakpoint=null,_.animType=null,_.animProp=null,_.breakpoints=[],_.breakpointSettings=[],_.cssTransitions=!1,_.focussed=!1,_.interrupted=!1,_.hidden="hidden",_.paused=!0,_.positionProp=null,_.respondTo=null,_.rowCount=1,_.shouldClick=!0,_.$slider=$(element),_.$slidesCache=null,_.transformType=null,_.transitionType=null,_.visibilityChange="visibilitychange",_.windowWidth=0,_.windowTimer=null,dataSettings=$(element).data("slick")||{},_.options=$.extend({},_.defaults,settings,dataSettings),_.currentSlide=_.options.initialSlide,_.originalSettings=_.options,void 0!==document.mozHidden?(_.hidden="mozHidden",_.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(_.hidden="webkitHidden",_.visibilityChange="webkitvisibilitychange"),_.autoPlay=$.proxy(_.autoPlay,_),_.autoPlayClear=$.proxy(_.autoPlayClear,_),_.autoPlayIterator=$.proxy(_.autoPlayIterator,_),_.changeSlide=$.proxy(_.changeSlide,_),_.clickHandler=$.proxy(_.clickHandler,_),_.selectHandler=$.proxy(_.selectHandler,_),_.setPosition=$.proxy(_.setPosition,_),_.swipeHandler=$.proxy(_.swipeHandler,_),_.dragHandler=$.proxy(_.dragHandler,_),_.keyHandler=$.proxy(_.keyHandler,_),_.instanceUid=instanceUid++, 2340// A simple way to check for HTML strings 2341// Strict HTML recognition (must start with <) 2342// Extracted from jQuery v1.11 source 2343_.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,_.registerBreakpoints(),_.init(!0)}var instanceUid=0;return Slick}(),Slick.prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},Slick.prototype.addSlide=Slick.prototype.slickAdd=function(markup,index,addBefore){var _=this;if("boolean"==typeof index)addBefore=index,index=null;else if(index<0||index>=_.slideCount)return!1;_.unload(),"number"==typeof index?0===index&&0===_.$slides.length?$(markup).appendTo(_.$slideTrack):addBefore?$(markup).insertBefore(_.$slides.eq(index)):$(markup).insertAfter(_.$slides.eq(index)):!0===addBefore?$(markup).prependTo(_.$slideTrack):$(markup).appendTo(_.$slideTrack),_.$slides=_.$slideTrack.children(this.options.slide),_.$slideTrack.children(this.options.slide).detach(),_.$slideTrack.append(_.$slides),_.$slides.each(function(index,element){$(element).attr("data-slick-index",index)}),_.$slidesCache=_.$slides,_.reinit()},Slick.prototype.animateHeight=function(){var _=this;if(1===_.options.slidesToShow&&!0===_.options.adaptiveHeight&&!1===_.options.vertical){var targetHeight=_.$slides.eq(_.currentSlide).outerHeight(!0);_.$list.animate({height:targetHeight},_.options.speed)}},Slick.prototype.animateSlide=function(targetLeft,callback){var animProps={},_=this;_.animateHeight(),!0===_.options.rtl&&!1===_.options.vertical&&(targetLeft=-targetLeft),!1===_.transformsEnabled?!1===_.options.vertical?_.$slideTrack.animate({left:targetLeft},_.options.speed,_.options.easing,callback):_.$slideTrack.animate({top:targetLeft},_.options.speed,_.options.easing,callback):!1===_.cssTransitions?(!0===_.options.rtl&&(_.currentLeft=-_.currentLeft),$({animStart:_.currentLeft}).animate({animStart:targetLeft},{duration:_.options.speed,easing:_.options.easing,step:function(now){now=Math.ceil(now),!1===_.options.vertical?(animProps[_.animType]="translate("+now+"px, 0px)",_.$slideTrack.css(animProps)):(animProps[_.animType]="translate(0px,"+now+"px)",_.$slideTrack.css(animProps))},complete:function(){callback&&callback.call()}})):(_.applyTransition(),targetLeft=Math.ceil(targetLeft),!1===_.options.vertical?animProps[_.animType]="translate3d("+targetLeft+"px, 0px, 0px)":animProps[_.animType]="translate3d(0px,"+targetLeft+"px, 0px)",_.$slideTrack.css(animProps),callback&&setTimeout(function(){_.disableTransition(),callback.call()},_.options.speed))},Slick.prototype.getNavTarget=function(){var _=this,asNavFor=_.options.asNavFor;return asNavFor&&null!==asNavFor&&(asNavFor=$(asNavFor).not(_.$slider)),asNavFor},Slick.prototype.asNavFor=function(index){var _=this,asNavFor=_.getNavTarget();null!==asNavFor&&"object"==typeof asNavFor&&asNavFor.each(function(){var target=$(this).slick("getSlick");target.unslicked||target.slideHandler(index,!0)})},Slick.prototype.applyTransition=function(slide){var _=this,transition={};!1===_.options.fade?transition[_.transitionType]=_.transformType+" "+_.options.speed+"ms "+_.options.cssEase:transition[_.transitionType]="opacity "+_.options.speed+"ms "+_.options.cssEase,!1===_.options.fade?_.$slideTrack.css(transition):_.$slides.eq(slide).css(transition)},Slick.prototype.autoPlay=function(){var _=this;_.autoPlayClear(),_.slideCount>_.options.slidesToShow&&(_.autoPlayTimer=setInterval(_.autoPlayIterator,_.options.autoplaySpeed))},Slick.prototype.autoPlayClear=function(){var _=this;_.autoPlayTimer&&clearInterval(_.autoPlayTimer)},Slick.prototype.autoPlayIterator=function(){var _=this,slideTo=_.currentSlide+_.options.slidesToScroll;_.paused||_.interrupted||_.focussed||(!1===_.options.infinite&&(1===_.direction&&_.currentSlide+1===_.slideCount-1?_.direction=0:0===_.direction&&(slideTo=_.currentSlide-_.options.slidesToScroll,_.currentSlide-1==0&&(_.direction=1))),_.slideHandler(slideTo))},Slick.prototype.buildArrows=function(){var _=this;!0===_.options.arrows&&(_.$prevArrow=$(_.options.prevArrow).addClass("slick-arrow"),_.$nextArrow=$(_.options.nextArrow).addClass("slick-arrow"),_.slideCount>_.options.slidesToShow?(_.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),_.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),_.htmlExpr.test(_.options.prevArrow)&&_.$prevArrow.prependTo(_.options.appendArrows),_.htmlExpr.test(_.options.nextArrow)&&_.$nextArrow.appendTo(_.options.appendArrows),!0!==_.options.infinite&&_.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):_.$prevArrow.add(_.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},Slick.prototype.buildDots=function(){var i,dot,_=this;if(!0===_.options.dots&&_.slideCount>_.options.slidesToShow){for(_.$slider.addClass("slick-dotted"),dot=$("<ul />").addClass(_.options.dotsClass),i=0;i<=_.getDotCount();i+=1)dot.append($("<li />").append(_.options.customPaging.call(this,_,i)));_.$dots=dot.appendTo(_.options.appendDots),_.$dots.find("li").first().addClass("slick-active")}},Slick.prototype.buildOut=function(){var _=this;_.$slides=_.$slider.children(_.options.slide+":not(.slick-cloned)").addClass("slick-slide"),_.slideCount=_.$slides.length,_.$slides.each(function(index,element){$(element).attr("data-slick-index",index).data("originalStyling",$(element).attr("style")||"")}),_.$slider.addClass("slick-slider"),_.$slideTrack=0===_.slideCount?$('<div class="slick-track"/>').appendTo(_.$slider):_.$slides.wrapAll('<div class="slick-track"/>').parent(),_.$list=_.$slideTrack.wrap('<div class="slick-list"/>').parent(),_.$slideTrack.css("opacity",0),!0!==_.options.centerMode&&!0!==_.options.swipeToSlide||(_.options.slidesToScroll=1),$("img[data-lazy]",_.$slider).not("[src]").addClass("slick-loading"),_.setupInfinite(),_.buildArrows(),_.buildDots(),_.updateDots(),_.setSlideClasses("number"==typeof _.currentSlide?_.currentSlide:0),!0===_.options.draggable&&_.$list.addClass("draggable")},Slick.prototype.buildRows=function(){var a,b,c,newSlides,numOfSlides,originalSlides,slidesPerSection,_=this;if(newSlides=document.createDocumentFragment(),originalSlides=_.$slider.children(),_.options.rows>0){for(slidesPerSection=_.options.slidesPerRow*_.options.rows,numOfSlides=Math.ceil(originalSlides.length/slidesPerSection),a=0;a<numOfSlides;a++){var slide=document.createElement("div");for(b=0;b<_.options.rows;b++){var row=document.createElement("div");for(c=0;c<_.options.slidesPerRow;c++){var target=a*slidesPerSection+(b*_.options.slidesPerRow+c);originalSlides.get(target)&&row.appendChild(originalSlides.get(target))}slide.appendChild(row)}newSlides.appendChild(slide)}_.$slider.empty().append(newSlides),_.$slider.children().children().children().css({width:100/_.options.slidesPerRow+"%",display:"inline-block"})}},Slick.prototype.checkResponsive=function(initial,forceUpdate){var breakpoint,targetBreakpoint,respondToWidth,_=this,triggerBreakpoint=!1,sliderWidth=_.$slider.width(),windowWidth=window.innerWidth||$(window).width();if("window"===_.respondTo?respondToWidth=windowWidth:"slider"===_.respondTo?respondToWidth=sliderWidth:"min"===_.respondTo&&(respondToWidth=Math.min(windowWidth,sliderWidth)),_.options.responsive&&_.options.responsive.length&&null!==_.options.responsive){targetBreakp
2343oint=null;for(breakpoint in _.breakpoints)_.breakpoints.hasOwnProperty(breakpoint)&&(!1===_.originalSettings.mobileFirst?respondToWidth<_.breakpoints[breakpoint]&&(targetBreakpoint=_.breakpoints[breakpoint]):respondToWidth>_.breakpoints[breakpoint]&&(targetBreakpoint=_.breakpoints[breakpoint]));null!==targetBreakpoint?null!==_.activeBreakpoint?(targetBreakpoint!==_.activeBreakpoint||forceUpdate)&&(_.activeBreakpoint=targetBreakpoint,"unslick"===_.breakpointSettings[targetBreakpoint]?_.unslick(targetBreakpoint):(_.options=$.extend({},_.originalSettings,_.breakpointSettings[targetBreakpoint]),!0===initial&&(_.currentSlide=_.options.initialSlide),_.refresh(initial)),triggerBreakpoint=targetBreakpoint):(_.activeBreakpoint=targetBreakpoint,"unslick"===_.breakpointSettings[targetBreakpoint]?_.unslick(targetBreakpoint):(_.options=$.extend({},_.originalSettings,_.breakpointSettings[targetBreakpoint]),!0===initial&&(_.currentSlide=_.options.initialSlide),_.refresh(initial)),triggerBreakpoint=targetBreakpoint):null!==_.activeBreakpoint&&(_.activeBreakpoint=null,_.options=_.originalSettings,!0===initial&&(_.currentSlide=_.options.initialSlide),_.refresh(initial),triggerBreakpoint=targetBreakpoint), 2344// only trigger breakpoints during an actual break. not on initialize. 2345initial||!1===triggerBreakpoint||_.$slider.trigger("breakpoint",[_,triggerBreakpoint])}},Slick.prototype.changeSlide=function(event,dontAnimate){var indexOffset,slideOffset,unevenOffset,_=this,$target=$(event.currentTarget);switch( 2346// If target is a link, prevent default action. 2347$target.is("a")&&event.preventDefault(), 2348// If target is not the <li> element (ie: a child), find the <li>. 2349$target.is("li")||($target=$target.closest("li")),unevenOffset=_.slideCount%_.options.slidesToScroll!=0,indexOffset=unevenOffset?0:(_.slideCount-_.currentSlide)%_.options.slidesToScroll,event.data.message){case"previous":slideOffset=0===indexOffset?_.options.slidesToScroll:_.options.slidesToShow-indexOffset,_.slideCount>_.options.slidesToShow&&_.slideHandler(_.currentSlide-slideOffset,!1,dontAnimate);break;case"next":slideOffset=0===indexOffset?_.options.slidesToScroll:indexOffset,_.slideCount>_.options.slidesToShow&&_.slideHandler(_.currentSlide+slideOffset,!1,dontAnimate);break;case"index":var index=0===event.data.index?0:event.data.index||$target.index()*_.options.slidesToScroll;_.slideHandler(_.checkNavigable(index),!1,dontAnimate),$target.children().trigger("focus");break;default:return}},Slick.prototype.checkNavigable=function(index){var navigables,prevNavigable,_=this;if(navigables=_.getNavigableIndexes(),prevNavigable=0,index>navigables[navigables.length-1])index=navigables[navigables.length-1];else for(var n in navigables){if(index<navigables[n]){index=prevNavigable;break}prevNavigable=navigables[n]}return index},Slick.prototype.cleanUpEvents=function(){var _=this;_.options.dots&&null!==_.$dots&&($("li",_.$dots).off("click.slick",_.changeSlide).off("mouseenter.slick",$.proxy(_.interrupt,_,!0)).off("mouseleave.slick",$.proxy(_.interrupt,_,!1)),!0===_.options.accessibility&&_.$dots.off("keydown.slick",_.keyHandler)),_.$slider.off("focus.slick blur.slick"),!0===_.options.arrows&&_.slideCount>_.options.slidesToShow&&(_.$prevArrow&&_.$prevArrow.off("click.slick",_.changeSlide),_.$nextArrow&&_.$nextArrow.off("click.slick",_.changeSlide),!0===_.options.accessibility&&(_.$prevArrow&&_.$prevArrow.off("keydown.slick",_.keyHandler),_.$nextArrow&&_.$nextArrow.off("keydown.slick",_.keyHandler))),_.$list.off("touchstart.slick mousedown.slick",_.swipeHandler),_.$list.off("touchmove.slick mousemove.slick",_.swipeHandler),_.$list.off("touchend.slick mouseup.slick",_.swipeHandler),_.$list.off("touchcancel.slick mouseleave.
2349slick",_.swipeHandler),_.$list.off("click.slick",_.clickHandler),$(document).off(_.visibilityChange,_.visibility),_.cleanUpSlideEvents(),!0===_.options.accessibility&&_.$list.off("keydown.slick",_.keyHandler),!0===_.options.focusOnSelect&&$(_.$slideTrack).children().off("click.slick",_.selectHandler),$(window).off("orientationchange.slick.slick-"+_.instanceUid,_.orientationChange),$(window).off("resize.slick.slick-"+_.instanceUid,_.resize),$("[draggable!=true]",_.$slideTrack).off("dragstart",_.preventDefault),$(window).off("load.slick.slick-"+_.instanceUid,_.setPosition)},Slick.prototype.cleanUpSlideEvents=function(){var _=this;_.$list.off("mouseenter.slick",$.proxy(_.interrupt,_,!0)),_.$list.off("mouseleave.slick",$.proxy(_.interrupt,_,!1))},Slick.prototype.cleanUpRows=function(){var originalSlides,_=this;_.options.rows>0&&(originalSlides=_.$slides.children().children(),originalSlides.removeAttr("style"),_.$slider.empty().append(originalSlides))},Slick.prototype.clickHandler=function(event){!1===this.shouldClick&&(event.stopImmediatePropagation(),event.stopPropagation(),event.preventDefault())},Slick.prototype.destroy=function(refresh){var _=this;_.autoPlayClear(),_.touchObject={},_.cleanUpEvents(),$(".slick-cloned",_.$slider).detach(),_.$dots&&_.$dots.remove(),_.$prevArrow&&_.$prevArrow.length&&(_.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),_.htmlExpr.test(_.options.prevArrow)&&_.$prevArrow.remove()),_.$nextArrow&&_.$nextArrow.length&&(_.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),_.htmlExpr.test(_.options.nextArrow)&&_.$nextArrow.remove()),_.$slides&&(_.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){$(this).attr("style",$(this).data("originalStyling"))}),_.$slideTrack.children(this.options.slide).detach(),_.$slideTrack.detach(),_.$list.detach(),_.$slider.append(_.$slides)),_.cleanUpRows(),_.$slider.removeClass("slick-slider"),_.$slider.removeClass("slick-initialized"),_.$slider.removeClass("slick-dotted"),_.unslicked=!0,refresh||_.$slider.trigger("destroy",[_])},Slick.prototype.disableTransition=function(slide){var _=this,transition={};transition[_.transitionType]="",!1===_.options.fade?_.$slideTrack.css(transition):_.$slides.eq(slide).css(transition)},Slick.prototype.fadeSlide=function(slideIndex,callback){var _=this;!1===_.cssTransitions?(_.$slides.eq(slideIndex).css({zIndex:_.options.zIndex}),_.$slides.eq(slideIndex).animate({opacity:1},_.options.speed,_.options.easing,callback)):(_.applyTransition(slideIndex),_.$slides.eq(slideIndex).css({opacity:1,zIndex:_.options.zIndex}),callback&&setTimeout(function(){_.disableTransition(slideIndex),callback.call()},_.options.speed))},Slick.prototype.fadeSlideOut=function(slideIndex){var _=this;!1===_.cssTransitions?_.$slides.eq(slideIndex).animate({opacity:0,zIndex:_.options.zIndex-2},_.options.speed,_.options.easing):(_.applyTransition(slideIndex),_.$slides.eq(slideIndex).css({opacity:0,zIndex:_.options.zIndex-2}))},Slick.prototype.filterSlides=Slick.prototype.slickFilter=function(filter){var _=this;null!==filter&&(_.$slidesCache=_.$slides,_.unload(),_.$slideTrack.children(this.options.slide).detach(),_.$slidesCache.filter(filter).appendTo(_.$slideTrack),_.reinit())},Slick.prototype.focusHandler=function(){var _=this; 2350// If any child element receives focus within the slider we need to pause the autoplay 2351_.$slider.off("focus.slick blur.slick").on("focus.slick","*",function(event){var $sf=$(this);setTimeout(function(){_.options.pauseOnFocus&&$sf.is(":focus")&&(_.focussed=!0,_.autoPlay())},0)}).on("blur.slick","*",function(event){$(this); 2352// When a blur occurs on any elements within the slider we become unfocused 2353_.options.pauseOnFocus&&(_.focussed=!1,_.autoPlay())})},Slick.prototype.getCurrent=Slick.prototype.slickCurrentSlide=function(){return this.currentSlide},Slick.prototype.getDotCount=function(){var _=this,breakPoint=0,counter=0,pagerQty=0;if(!0===_.options.infinite)if(_.slideCount<=_.options.slidesToShow)++pagerQty;else for(;breakPoint<_.slideCount;)++pagerQty,breakPoint=counter+_.options.slidesToScroll,counter+=_.options.slidesToScroll<=_.options.slidesToShow?_.options.slidesToScroll:_.options.slidesToShow;else if(!0===_.options.centerMode)pagerQty=_.slideCount;else if(_.options.asNavFor)for(;breakPoint<_.slideCount;)++pagerQty,breakPoint=counter+_.options.slidesToScroll,counter+=_.options.slidesToScroll<=_.options.slidesToShow?_.options.slidesToScroll:_.options.slidesToShow;else pagerQty=1+Math.ceil((_.slideCount-_.options.slidesToShow)/_.options.slidesToScroll);return pagerQty-1},Slick.prototype.getLeft=function(slideIndex){var targetLeft,verticalHeight,targetSlide,coef,_=this,verticalOffset=0;return _.slideOffset=0,verticalHeight=_.$slides.first().outerHeight(!0),!0===_.options.infinite?(_.slideCount>_.options.slidesToShow&&(_.slideOffset=_.slideWidth*_.options.slidesToShow*-1,coef=-1,!0===_.options.vertical&&!0===_.options.centerMode&&(2===_.options.slidesToShow?coef=-1.5:1===_.options.slidesToShow&&(coef=-2)),verticalOffset=verticalHeight*_.options.slidesToShow*coef),_.slideCount%_.options.slidesToScroll!=0&&slideIndex+_.options.slidesToScroll>_.slideCount&&_.slideCount>_.options.slidesToShow&&(slideIndex>_.slideCount?(_.slideOffset=(_.options.slidesToShow-(slideIndex-_.slideCount))*_.slideWidth*-1,verticalOffset=(_.options.slidesToShow-(slideIndex-_.slideCount))*verticalHeight*-1):(_.slideOffset=_.slideCount%_.options.slidesToScroll*_.slideWidth*-1,verticalOffset=_.slideCount%_.options.slidesToScroll*verticalHeight*-1))):slideIndex+_.options.slidesToShow>
2353_.slideCount&&(_.slideOffset=(slideIndex+_.options.slidesToShow-_.slideCount)*_.slideWidth,verticalOffset=(slideIndex+_.options.slidesToShow-_.slideCount)*verticalHeight),_.slideCount<=_.options.slidesToShow&&(_.slideOffset=0,verticalOffset=0),!0===_.options.centerMode&&_.slideCount<=_.options.slidesToShow?_.slideOffset=_.slideWidth*Math.floor(_.options.slidesToShow)/2-_.slideWidth*_.slideCount/2:!0===_.options.centerMode&&!0===_.options.infinite?_.slideOffset+=_.slideWidth*Math.floor(_.options.slidesToShow/2)-_.slideWidth:!0===_.options.centerMode&&(_.slideOffset=0,_.slideOffset+=_.slideWidth*Math.floor(_.options.slidesToShow/2)),targetLeft=!1===_.options.vertical?slideIndex*_.slideWidth*-1+_.slideOffset:slideIndex*verticalHeight*-1+verticalOffset,!0===_.options.variableWidth&&(targetSlide=_.slideCount<=_.options.slidesToShow||!1===_.options.infinite?_.$slideTrack.children(".slick-slide").eq(slideIndex):_.$slideTrack.children(".slick-slide").eq(slideIndex+_.options.slidesToShow),targetLeft=!0===_.options.rtl?targetSlide[0]?-1*(_.$slideTrack.width()-targetSlide[0].offsetLeft-targetSlide.width()):0:targetSlide[0]?-1*targetSlide[0].offsetLeft:0,!0===_.options.centerMode&&(targetSlide=_.slideCount<=_.options.slidesToShow||!1===_.options.infinite?_.$slideTrack.children(".slick-slide").eq(slideIndex):_.$slideTrack.children(".slick-slide").eq(slideIndex+_.options.slidesToShow+1),targetLeft=!0===_.options.rtl?targetSlide[0]?-1*(_.$slideTrack.width()-targetSlide[0].offsetLeft-targetSlide.width()):0:targetSlide[0]?-1*targetSlide[0].offsetLeft:0,targetLeft+=(_.$list.width()-targetSlide.outerWidth())/2)),targetLeft},Slick.prototype.getOption=Slick.prototype.slickGetOption=function(option){return this.options[option]},Slick.prototype.getNavigableIndexes=function(){var max,_=this,breakPoint=0,counter=0,indexes=[];for(!1===_.options.infinite?max=_.slideCount:(breakPoint=-1*_.options.slidesToScroll,counter=-1*_.options.slidesToScroll,max=2*_.slideCount);breakPoint<max;)indexes.push(breakPoint),breakPoint=counter+_.options.slidesToScroll,counter+=_.options.slidesToScroll<=_.options.slidesToShow?_.options.slidesToScroll:_.options.slidesToShow;return indexes},Slick.prototype.getSlick=function(){return this},Slick.prototype.getSlideCount=function(){var swipedSlide,swipeTarget,centerOffset,_=this;return centerOffset=!0===_.options.centerMode?Math.floor(_.$list.width()/2):0,swipeTarget=-1*_.swipeLeft+centerOffset,!0===_.options.swipeToSlide?(_.$slideTrack.find(".slick-slide").each(function(index,slide){var slideOuterWidth,slideOffset,slideRightBoundary;if(slideOuterWidth=$(slide).outerWidth(),slideOffset=slide.offsetLeft,!0!==_.options.centerMode&&(slideOffset+=slideOuterWidth/2),slideRightBoundary=slideOffset+slideOuterWidth,swipeTarget<slideRightBoundary)return swipedSlide=slide,!1}),Math.abs($(swipedSlide).attr("data-slick-index")-_.currentSlide)||1):_.options.slidesToScroll},Slick.prototype.goTo=Slick.prototype.slickGoTo=function(slide,dontAnimate){this.changeSlide({data:{message:"index",index:parseInt(slide)}},dontAnimate)},Slick.prototype.init=function(creation){var _=this;$(_.$slider).hasClass("slick-initialized")||($(_.$slider).addClass("slick-initialized"),_.buildRows(),_.buildOut(),_.setProps(),_.startLoad(),_.loadSlider(),_.initializeEvents(),_.updateArrows(),_.updateDots(),_.checkResponsive(!0),_.focusHandler()),creation&&_.$slider.trigger("init",[_]),!0===_.options.accessibility&&_.initADA(),_.options.autoplay&&(_.paused=!1,_.autoPlay())},Slick.prototype.initADA=function(){var _=this,numDotGroups=Math.ceil(_.slideCount/_.options.slidesToShow),tabControlIndexes=_.getNavigableIndexes().filter(function(val){return val>=0&&val<_.slideCount});_.$slides.add(_.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==_.$dots&&(_.$slides.not(_.$slideTrack.find(".slick-cloned")).each(function(i){var slideControlIndex=tabControlIndexes.indexOf(i);if($(this).attr({role:"tabpanel",id:"slick-slide"+_.instanceUid+i,tabindex:-1}
2353),-1!==slideControlIndex){var ariaButtonControl="slick-slide-control"+_.instanceUid+slideControlIndex;$("#"+ariaButtonControl).length&&$(this).attr({"aria-describedby":ariaButtonControl})}}),_.$dots.attr("role","tablist").find("li").each(function(i){var mappedSlideIndex=tabControlIndexes[i];$(this).attr({role:"presentation"}),$(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+_.instanceUid+i,"aria-controls":"slick-slide"+_.instanceUid+mappedSlideIndex,"aria-label":i+1+" of "+numDotGroups,"aria-selected":null,tabindex:"-1"})}).eq(_.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var i=_.currentSlide,max=i+_.options.slidesToShow;i<max;i++)_.options.focusOnChange?_.$slides.eq(i).attr({tabindex:"0"}):_.$slides.eq(i).removeAttr("tabindex");_.activateADA()},Slick.prototype.initArrowEvents=function(){var _=this;!0===_.options.arrows&&_.slideCount>_.options.slidesToShow&&(_.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},_.changeSlide),_.$nextArrow.off("click.slick").on("click.slick",{message:"next"},_.changeSlide),!0===_.options.accessibility&&(_.$prevArrow.on("keydown.slick",_.keyHandler),_.$nextArrow.on("keydown.slick",_.keyHandler)))},Slick.prototype.initDotEvents=function(){var _=this;!0===_.options.dots&&_.slideCount>_.options.slidesToShow&&($("li",_.$dots).on("click.slick",{message:"index"},_.changeSlide),!0===_.options.accessibility&&_.$dots.on("keydown.slick",_.keyHandler)),!0===_.options.dots&&!0===_.options.pauseOnDotsHover&&_.slideCount>_.options.slidesToShow&&$("li",_.$dots).on("mouseenter.slick",$.proxy(_.interrupt,_,!0)).on("mouseleave.slick",$.proxy(_.interrupt,_,!1))},Slick.prototype.initSlideEvents=function(){var _=this;_.options.pauseOnHover&&(_.$list.on("mouseenter.slick",$.proxy(_.interrupt,_,!0)),_.$list.on("mouseleave.slick",$.proxy(_.interrupt,_,!1)))},Slick.prototype.initializeEvents=function(){var _=this;_.initArrowEvents(),_.initDotEvents(),_.initSlideEvents(),_.$list.on("touchstart.slick mousedown.slick",{action:"start"},_.swipeHandler),_.$list.on("touchmove.slick mousemove.slick",{action:"move"},_.swipeHandler),_.$list.on("touchend.slick mouseup.slick",{action:"end"}
2353,_.swipeHandler),_.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},_.swipeHandler),_.$list.on("click.slick",_.clickHandler),$(document).on(_.visibilityChange,$.proxy(_.visibility,_)),!0===_.options.accessibility&&_.$list.on("keydown.slick",_.keyHandler),!0===_.options.focusOnSelect&&$(_.$slideTrack).children().on("click.slick",_.selectHandler),$(window).on("orientationchange.slick.slick-"+_.instanceUid,$.proxy(_.orientationChange,_)),$(window).on("resize.slick.slick-"+_.instanceUid,$.proxy(_.resize,_)),$("[draggable!=true]",_.$slideTrack).on("dragstart",_.preventDefault),$(window).on("load.slick.slick-"+_.instanceUid,_.setPosition),$(_.setPosition)},Slick.prototype.initUI=function(){var _=this;!0===_.options.arrows&&_.slideCount>_.options.slidesToShow&&(_.$prevArrow.show(),_.$nextArrow.show()),!0===_.options.dots&&_.slideCount>_.options.slidesToShow&&_.$dots.show()},Slick.prototype.keyHandler=function(event){var _=this; 2354//Dont slide if the cursor is inside the form fields and arrow keys are pressed 2355event.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===event.keyCode&&!0===_.options.accessibility?_.changeSlide({data:{message:!0===_.options.rtl?"next":"previous"}}):39===event.keyCode&&!0===_.options.accessibility&&_.changeSlide({data:{message:!0===_.options.rtl?"previous":"next"}}))},Slick.prototype.lazyLoad=function(){function loadImages(imagesScope){$("img[data-lazy]",imagesScope).each(function(){var image=$(this),imageSource=$(this).attr("data-lazy"),imageSrcSet=$(this).attr("data-srcset"),imageSizes=$(this).attr("data-sizes")||_.$slider.attr("data-sizes"),imageToLoad=document.createElement("img");imageToLoad.onload=function(){image.animate({opacity:0}
2355,100,function(){imageSrcSet&&(image.attr("srcset",imageSrcSet),imageSizes&&image.attr("sizes",imageSizes)),image.attr("src",imageSource).animate({opacity:1},200,function(){image.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),_.$slider.trigger("lazyLoaded",[_,image,imageSource])})},imageToLoad.onerror=function(){image.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),_.$slider.trigger("lazyLoadError",[_,image,imageSource])},imageToLoad.src=imageSource})}var loadRange,cloneRange,rangeStart,rangeEnd,_=this;if(!0===_.options.centerMode?!0===_.options.infinite?(rangeStart=_.currentSlide+(_.options.slidesToShow/2+1),rangeEnd=rangeStart+_.options.slidesToShow+2):(rangeStart=Math.max(0,_.currentSlide-(_.options.slidesToShow/2+1)),rangeEnd=_.options.slidesToShow/2+1+2+_.currentSlide):(rangeStart=_.options.infinite?_.options.slidesToShow+_.currentSlide:_.currentSlide,rangeEnd=Math.ceil(rangeStart+_.options.slidesToShow),!0===_.options.fade&&(rangeStart>0&&rangeStart--,rangeEnd<=_.slideCount&&rangeEnd++)),loadRange=_.$slider.find(".slick-slide").slice(rangeStart,rangeEnd),"anticipated"===_.options.lazyLoad)for(var prevSlide=rangeStart-1,nextSlide=rangeEnd,$slides=_.$slider.find(".slick-slide"),i=0;i<_.options.slidesToScroll;i++)prevSlide<0&&(prevSlide=_.slideCount-1),loadRange=loadRange.add($slides.eq(prevSlide)),loadRange=loadRange.add($slides.eq(nextSlide)),prevSlide--,nextSlide++;loadImages(loadRange),_.slideCount<=_.options.slidesToShow?(cloneRange=_.$slider.find(".slick-slide"),loadImages(cloneRange)):_.currentSlide>=_.slideCount-_.options.slidesToShow?(cloneRange=_.$slider.find(".slick-cloned").slice(0,_.options.slidesToShow),loadImages(cloneRange)):0===_.currentSlide&&(cloneRange=_.$slider.find(".slick-cloned").slice(-1*_.options.slidesToShow),loadImages(cloneRange))},Slick.prototype.loadSlider=function(){var _=this;_.setPosition(),_.$slideTrack.css({opacity:1}),_.$slider.removeClass("slick-loading"),_.initUI(),"progressive"===_.options.lazyLoad&&_.progressiveLazyLoad()},Slick.prototype.next=Slick.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},Slick.prototype.orientationChange=function(){var _=this;_.checkResponsive(),_.setPosition()},Slick.prototype.pause=Slick.prototype.slickPause=function(){var _=this;_.autoPlayClear(),_.paused=!0},Slick.prototype.play=Slick.prototype.slickPlay=function(){var _=this;_.autoPlay(),_.options.autoplay=!0,_.paused=!1,_.focussed=!1,_.interrupted=!1},Slick.prototype.postSlide=function(index){var _=this;if(!_.unslicked&&(_.$slider.trigger("afterChange",[_,index]),_.animating=!1,_.slideCount>_.options.slidesToShow&&_.setPosition(),_.swipeLeft=null,_.options.autoplay&&_.autoPlay(),!0===_.options.accessibility&&(_.initADA(),_.options.focusOnChange))){$(_.$slides.get(_.currentSlide)).attr("tabindex",0).focus()}},Slick.prototype.prev=Slick.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},Slick.prototype.preventDefault=function(event){event.preventDefault()},Slick.prototype.progressiveLazyLoad=function(tryCount){tryCount=tryCount||1;var image,imageSource,imageSrcSet,imageSizes,imageToLoad,_=this,$imgsToLoad=$("img[data-lazy]",_.$slider);$imgsToLoad.length?(image=$imgsToLoad.first(),imageSource=image.attr("data-lazy"),imageSrcSet=image.attr("data-srcset"),imageSizes=image.attr("data-sizes")||_.$slider.attr("data-sizes"),imageToLoad=document.createElement("img"),imageToLoad.onload=function(){imageSrcSet&&(image.attr("srcset",imageSrcSet),imageSizes&&image.attr("sizes",imageSizes)),image.attr("src",imageSource).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===_.options.adaptiveHeight&&_.setPosition(),_.$slider.trigger("lazyLoaded",[_,image,imageSource]),_.progressiveLazyLoad()},imageToLoad.onerror=function(){tryCount<3?/** 2356 * try to load the image 3 times, 2357 * leave a slight delay so we don't get 2358 * servers blocking the request. 2359 */ 2360setTimeout(function(){_.progressiveLazyLoad(tryCount+1)},500):(image.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),_.$slider.trigger("lazyLoadError",[_,
vendor: 4,913 bytes, lines 2360-2368
2360image,imageSource]),_.progressiveLazyLoad())},imageToLoad.src=imageSource):_.$slider.trigger("allImagesLoaded",[_])},Slick.prototype.refresh=function(initializing){var currentSlide,lastVisibleIndex,_=this;lastVisibleIndex=_.slideCount-_.options.slidesToShow, 2361// in non-infinite sliders, we don't want to go past the 2362// last visible index. 2363!_.options.infinite&&_.currentSlide>lastVisibleIndex&&(_.currentSlide=lastVisibleIndex), 2364// if less slides than to show, go to start. 2365_.slideCount<=_.options.slidesToShow&&(_.currentSlide=0),currentSlide=_.currentSlide,_.destroy(!0),$.extend(_,_.initials,{currentSlide:currentSlide}),_.init(),initializing||_.changeSlide({data:{message:"index",index:currentSlide}},!1)},Slick.prototype.registerBreakpoints=function(){var breakpoint,currentBreakpoint,l,_=this,responsiveSettings=_.options.responsive||null;if("array"===$.type(responsiveSettings)&&responsiveSettings.length){_.respondTo=_.options.respondTo||"window";for(breakpoint in responsiveSettings)if(l=_.breakpoints.length-1,responsiveSettings.hasOwnProperty(breakpoint)){ 2366// loop through the breakpoints and cut out any existing 2367// ones with the same breakpoint number, we don't want dupes. 2368for(currentBreakpoint=responsiveSettings[breakpoint].breakpoint;l>=0;)_.breakpoints[l]&&_.breakpoints[l]===currentBreakpoint&&_.breakpoints.splice(l,1),l--;_.breakpoints.push(currentBreakpoint),_.breakpointSettings[currentBreakpoint]=responsiveSettings[breakpoint].settings}_.breakpoints.sort(function(a,b){return _.options.mobileFirst?a-b:b-a})}},Slick.prototype.reinit=function(){var _=this;_.$slides=_.$slideTrack.children(_.options.slide).addClass("slick-slide"),_.slideCount=_.$slides.length,_.currentSlide>=_.slideCount&&0!==_.currentSlide&&(_.currentSlide=_.currentSlide-_.options.slidesToScroll),_.slideCount<=_.options.slidesToShow&&(_.currentSlide=0),_.registerBreakpoints(),_.setProps(),_.setupInfinite(),_.buildArrows(),_.updateArrows(),_.initArrowEvents(),_.buildDots(),_.updateDots(),_.initDotEvents(),_.cleanUpSlideEvents(),_.initSlideEvents(),_.checkResponsive(!1,!0),!0===_.options.focusOnSelect&&$(_.$slideTrack).children().on("click.slick",_.selectHandler),_.setSlideClasses("number"==typeof _.currentSlide?_.currentSlide:0),_.setPosition(),_.focusHandler(),_.paused=!_.options.autoplay,_.autoPlay(),_.$slider.trigger("reInit",[_])},Slick.prototype.resize=function(){var _=this;$(window).width()!==_.windowWidth&&(clearTimeout(_.windowDelay),_.windowDelay=window.setTimeout(function(){_.windowWidth=$(window).width(),_.checkResponsive(),_.unslicked||_.setPosition()},50))},Slick.prototype.removeSlide=Slick.prototype.slickRemove=function(index,removeBefore,removeAll){var _=this;if("boolean"==typeof index?(removeBefore=index,index=!0===removeBefore?0:_.slideCount-1):index=!0===removeBefore?--index:index,_.slideCount<1||index<0||index>_.slideCount-1)return!1;_.unload(),!0===removeAll?_.$slideTrack.children().remove():_.$slideTrack.children(this.options.slide).eq(index).remove(),_.$slides=_.$slideTrack.children(this.options.slide),_.$slideTrack.children(this.options.slide).detach(),_.$slideTrack.append(_.$slides),_.$slidesCache=_.$slides,_.reinit()},Slick.prototype.setCSS=function(position){var x,y,_=this,positionProps={};!0===_.options.rtl&&(position=-position),x="left"==_.positionProp?Math.ceil(position)+"px":"0px",y="top"==_.positionProp?Math.ceil(position)+"px":"0px",positionProps[_.positionProp]=position,!1===_.transformsEnabled?_.$slideTrack.css(positionProps):(positionProps={},!1===_.cssTransitions?(positionProps[_.animType]="translate("+x+", "+y+")",_.$slideTrack.css(positionProps)):(positionProps[_.animType]="translate3d("+x+", "+y+", 0px)",_.$slideTrack.css(positionProps)))},Slick.prototype.setDimensions=function(){var _=this;!1===_.options.vertical?!0===_.options.centerMode&&_.$list.css({padding:"0px "+_.options.centerPadding}):(_.$list.height(_.$slides.first().outerHeight(!0)*_.options.slidesToShow),!0===_.options.centerMode&&_.$list.css({padding:_.options.centerPadding+" 0px"})),_.listWidth=_.$list.width(),_.listHeight=_.$list.height(),!1===_.options.vertical&&!1===_.options.variableWidth?(_.slideWidth=Math.ceil(_.listWidth/_.options.slidesToShow),_.$slideTrack.width(Math.ceil(_.slideWidth*_.$slideTrack.children(".slick-slide").length))):!0===_.options.variableWidth?_.$slideTrack.width(5e3*_.slideCount):(_.slideWidth=Math.ceil(_.listWidth),_.$slideTrack.height(Math.ceil(_.$slides.first().outerHeight(!0)*_.$slideTrack.children(".slick-slide").length)));var offset=_.$slides.first().outerWidth(!0)-_.$slides.first().width();!1===_.options.variableWidth&&_.$slideTrack.children(".slick-slide").width(_.slideWidth-offset)},Slick.prototype.setFade=function(){var targetLeft,_=this;_.$slides.each(function(index,element){targetLeft=_.slideWidth*index*-1,!0===_.options.rtl?$(element).css({position:"relative",right:targetLeft,top:0,zIndex:_.options.zIndex-2,opacity:0}
2368):$(element).css({position:"relative",left:targetLeft,top:0,zIndex:_.options.zIndex-2,opacity:0})}),_.$slides.eq(_.currentSlide).css({zIndex:_.options.zIndex-1,opacity:1})},Slick.prototype.setHeight=function(){var _=this;if(1===_.options.slidesToShow&&!0===_.options.adaptiveHeight&&!1===_.options.vertical){var targetHeight=_.$slides.eq(_.currentSlide).outerHeight(!0);_.$list.css("height",targetHeight)}},Slick.prototype.setOption=Slick.prototype.slickSetOption=function(){/** 2369 * accepts arguments in format of: 2370 * 2371 * - for changing a single option's value: 2372 * .slick("setOption", option, value, refresh ) 2373 * 2374 * - for changing a set of responsive options: 2375 * .slick("setOption", 'responsive', [{}, ...], refresh ) 2376 * 2377 * - for updating multiple values at once (not responsive) 2378 * .slick("setOption", { 'option': value, ... }, refresh ) 2379 */ 2380var l,item,option,value,type,_=this,refresh=!1;if("object"===$.type(arguments[0])?(option=arguments[0],refresh=arguments[1],type="multiple"):"string"===$.type(arguments[0])&&(option=arguments[0],value=arguments[1],refresh=arguments[2],"responsive"===arguments[0]&&"array"===$.type(arguments[1])?type="responsive":void 0!==arguments[1]&&(type="single")),"single"===type)_.options[option]=value;else if("multiple"===type)$.each(option,function(opt,val){_.options[opt]=val});else if("responsive"===type)for(item in value)if("array"!==$.type(_.options.responsive))_.options.responsive=[value[item]];else{ 2381// loop through the responsive object and splice out duplicates. 2382for(l=_.options.responsive.length-1;l>=0;)_.options.responsive[l].breakpoint===value[item].breakpoint&&_.options.responsive.splice(l,1),l--;_.options.responsive.push(value[item])}refresh&&(_.unload(),_.reinit())},Slick.prototype.setPosition=function(){var _=this;_.setDimensions(),_.setHeight(),!1===_.options.fade?_.setCSS(_.getLeft(_.currentSlide)):_.setFade(),_.$slider.trigger("setPosition",[_])},Slick.prototype.setProps=function(){var _=this,bodyStyle=document.body.style;_.positionProp=!0===_.options.vertical?"top":"left","top"===_.positionProp?_.$slider.addClass("slick-vertical"):_.$slider.removeClass("slick-vertical"),void 0===bodyStyle.WebkitTransition&&void 0===bodyStyle.MozTransition&&void 0===bodyStyle.msTransition||!0===_.options.useCSS&&(_.cssTransitions=!0),_.options.fade&&("number"==typeof _.options.zIndex?_.options.zIndex<3&&(_.options.zIndex=3):_.options.zIndex=_.defaults.zIndex),void 0!==bodyStyle.OTransform&&(_.animType="OTransform",_.transformType="-o-transform",_.transitionType="OTransition",void 0===bodyStyle.perspectiveProperty&&void 0===bodyStyle.webkitPerspective&&(_.animType=!1)),void 0!==bodyStyle.MozTransform&&(_.animType="MozTransform",_.transformType="-moz-transform",_.transitionType="MozTransition",void 0===bodyStyle.perspectiveProperty&&void 0===bodyStyle.MozPerspective&&(_.animType=!1)),void 0!==bodyStyle.webkitTransform&&(_.animType="webkitTransform",_.transformType="-webkit-transform",_.transitionType="webkitTransition",void 0===bodyStyle.perspectiveProperty&&void 0===bodyStyle.webkitPerspective&&(_.animType=!1)),void 0!==bodyStyle.msTransform&&(_.animType="msTransform",_.transformType="-ms-transform",_.transitionType="msTransition",void 0===bodyStyle.msTransform&&(_.animType=!1)),void 0!==bodyStyle.transform&&!1!==_.animType&&(_.animType="transform",_.transformType="transform",_.transitionType="transition"),_.transformsEnabled=_.options.useTransform&&null!==_.animType&&!1!==_.animType},Slick.prototype.setSlideClasses=function(index){var centerOffset,allSlides,indexOffset,remainder,_=this;if(allSlides=_.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),_.$slides.eq(index).addClass("slick-current"),!0===_.options.centerMode){var evenCoef=_.options.slidesToShow%2==0?1:0;centerOffset=Math.floor(_.options.slidesToShow/2),!0===_.options.infinite&&(index>=centerOffset&&index<=_.slideCount-1-centerOffset?_.$slides.slice(index-centerOffset+evenCoef,index+centerOffset+1).addClass("slick-active").attr("aria-hidden","false"):(indexOffset=_.options.slidesToShow+index,allSlides.slice(indexOffset-centerOffset+1+evenCoef,indexOffset+centerOffset+2).addClass("slick-active").attr("aria-hidden","false")),0===index?allSlides.eq(allSlides.length-1-_.options.slidesToShow).addClass("slick-center"):index===_.slideCount-1&&allSlides.eq(_.options.slidesToShow).addClass("slick-center")),_.$slides.eq(index).addClass("slick-center")}else index>=0&&index<=_.slideCount-_.options.slidesToShow?_.$slides.slice(index,index+_.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):allSlides.length<=_.options.slidesToShow?allSlides.addClass("slick-active").attr("aria-hidden","false"):(remainder=_.slideCount%_.options.slidesToShow,indexOffset=!0===_.options.infinite?_.o
2382ptions.slidesToShow+index:index,_.options.slidesToShow==_.options.slidesToScroll&&_.slideCount-index<_.options.slidesToShow?allSlides.slice(indexOffset-(_.options.slidesToShow-remainder),indexOffset+remainder).addClass("slick-active").attr("aria-hidden","false"):allSlides.slice(indexOffset,indexOffset+_.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"));"ondemand"!==_.options.lazyLoad&&"anticipated"!==_.options.lazyLoad||_.lazyLoad()},Slick.prototype.setupInfinite=function(){var i,slideIndex,infiniteCount,_=this;if(!0===_.options.fade&&(_.options.centerMode=!1),!0===_.options.infinite&&!1===_.options.fade&&(slideIndex=null,_.slideCount>_.options.slidesToShow)){for(infiniteCount=!0===_.options.centerMode?_.options.slidesToShow+1:_.options.slidesToShow,i=_.slideCount;i>_.slideCount-infiniteCount;i-=1)slideIndex=i-1,$(_.$slides[slideIndex]).clone(!0).attr("id","").attr("data-slick-index",slideIndex-_.slideCount).prependTo(_.$slideTrack).addClass("slick-cloned");for(i=0;i<infiniteCount+_.slideCount;i+=1)slideIndex=i,$(_.$slides[slideIndex]).clone(!0).attr("id","").attr("data-slick-index",slideIndex+_.slideCount).appendTo(_.$slideTrack).addClass("slick-cloned");_.$slideTrack.find(".slick-cloned").find("[id]").each(function(){$(this).attr("id","")})}},Slick.prototype.interrupt=function(toggle){var _=this;toggle||_.autoPlay(),_.interrupted=toggle},Slick.prototype.selectHandler=function(event){var _=this,targetElement=$(event.target).is(".slick-slide")?$(event.target):$(event.target).parents(".slick-slide"),index=parseInt(targetElement.attr("data-slick-index"));if(index||(index=0),_.slideCount<=_.options.slidesToShow)return void _.slideHandler(index,!1,!0);_.slideHandler(index)},Slick.prototype.slideHandler=function(index,sync,dontAnimate){var targetSlide,animSlide,oldSlide,slideLeft,navTarget,targetLeft=null,_=this;if(sync=sync||!1,!(!0===_.animating&&!0===_.options.waitForAnimate||!0===_.options.fade&&_.currentSlide===index)){if(!1===sync&&_.asNavFor(index),targetSlide=index,targetLeft=_.getLeft(targetSlide),slideLeft=_.getLeft(_.currentSlide),_.currentLeft=null===_.swipeLeft?slideLeft:_.swipeLeft,!1===_.options.infinite&&!1===_.options.centerMode&&(index<0||index>_.getDotCount()*_.options.slidesToScroll))return void(!1===_.options.fade&&(targetSlide=_.currentSlide,!0!==dontAnimate&&_.slideCount>_.options.slidesToShow?_.animateSlide(slideLeft,function(){_.postSlide(targetSlide)}):_.postSlide(targetSlide)));if(!1===_.options.infinite&&!0===_.options.centerMode&&(index<0||index>_.slideCount-_.options.slidesToScroll))return void(!1===_.options.fade&&(targetSlide=_.currentSlide,!0!==dontAnimate&&_.slideCount>_.options.slidesToShow?_.animateSlide(slideLeft,function(){_.postSlide(targetSlide)}):_.postSlide(targetSlide)));if(_.options.autoplay&&clearInterval(_.autoPlayTimer),animSlide=targetSlide<0?_.slideCount%_.options.slidesToScroll!=0?_.slideCount-_.slideCount%_.options.slidesToScroll:_.slideCount+targetSlide:targetSlide>=_.slideCount?_.slideCount%_.options.slidesToScroll!=0?0:targetSlide-_.slideCount:targetSlide,_.animating=!0,_.$slider.trigger("beforeChange",[_,_.currentSlide,animSlide]),oldSlide=_.currentSlide,_.currentSlide=animSlide,_.setSlideClasses(_.currentSlide),_.options.asNavFor&&(navTarget=_.getNavTarget(),navTarget=navTarget.slick("getSlick"),navTarget.slideCount<=navTarget.options.slidesToShow&&navTarget.setSlideClasses(_.currentSlide)),_.updateDots(),_.updateArrows(),!0===_.options.fade)return!0!==dontAnimate?(_.fadeSlideOut(oldSlide),_.fadeSlide(animSlide,function(){_.postSlide(animSlide)})):_.postSlide(animSlide),void _.animateHeight();!0!==dontAnimate&&_.slideCount>_.options.slidesToShow?_.animateSlide(targetLeft,function(){_.postSlide(animSlide)}):_.postSlide(animSlide)}},Slick.prototype.startLoad=function(){var _=this;!0===_.options.arrows&&_.slideCount>_.options.slidesToShow&&(_.$prevArrow.hide(),_.$nextArrow.hide()),!0===_.options.dots&&_.slideCount>_.options.slidesToShow&&_.$dots.hide(),_.$slider.addClass("slick-loading")},Slick.prototype.swipeDirection=function(){var xDist,yDist,r,swipeAngle,_=this;return xDist=_.touchObject.startX-_.touchObject.curX,yDist=_.touchObject.startY-_.touchObject.curY,r=Math.atan2(yDist,xDist),swipeAngle=Math.round(180*r/Math.PI),swipeAngle<0&&(swipeAngle=360-Math.abs(swipeAngle)),swipeAngle<=45&&swipeAngle>=0?!1===_.options.rtl?"left":"right":swipeAngle<=360&&swipeAngle>=315?!1===_.options.rtl?"left":"right":swipeAngle>=135&&swipeAngle<=225?!1===_.options.rtl?"right":"left":!0===_.options.verticalSwiping?swipeAngle>=35&&swipeAngle<=135?"down":"up":"vertical"},Slick.prototype.swipeEnd=function(event){var slideCount,direction,_=this;if(_.dragging=!1,_.swiping=!1,_.scrolling)return _.scrolling=!1,!1;if(_.interrupted=!1,_.shouldClick=!(_.touchObject.swipeLength>10),void 0===_.touchObject.curX)return!1;if(!0===_.touchObject.edgeHit&&_.$slider.trigger("edge",[_,_.swipeDirection()]),_.touchObject.swipeLength>=_.touchObject.minSwipe){switch(direction=_.swipeDirection()){case"left":case"down":slideCount=_.options.swipeToSlide?_.checkNavigable(_.currentSlide+_.getSlideCount()):_.currentSlide+_.getSlideCount(),_.currentDirection=0;break;case"right":case"up":slideCount=_.options.swipeToSlide?_.checkNavigable(_.currentSlide-_.getSlideCount()):_.currentSlide-_.getSlideCount(),_.currentDirection=1}"vertical"!=direction&&(_.slideHandler(slideCount),_.touchObject={},_.$slider.trigger("swipe",[_,direction]))}else _.touchObject.startX!==_.touchObject.curX&&(_.slideHandler(_.currentSlide),_.touchObject={})},Slick.prototype.swipeHandler=function(event){var _=this;if(!(!1===_.options.swipe||"ontouchend"in document&&!1===_.options.swipe||!1===_.options.draggable&&-1!==event.type.indexOf("mou
2382se")))switch(_.touchObject.fingerCount=event.originalEvent&&void 0!==event.originalEvent.touches?event.originalEvent.touches.length:1,_.touchObject.minSwipe=_.listWidth/_.options.touchThreshold,!0===_.options.verticalSwiping&&(_.touchObject.minSwipe=_.listHeight/_.options.touchThreshold),event.data.action){case"start":_.swipeStart(event);break;case"move":_.swipeMove(event);break;case"end":_.swipeEnd(event)}},Slick.prototype.swipeMove=function(event){var curLeft,swipeDirection,swipeLength,positionOffset,touches,verticalSwipeLength,_=this;return touches=void 0!==event.originalEvent?event.originalEvent.touches:null,!(!_.dragging||_.scrolling||touches&&1!==touches.length)&&(curLeft=_.getLeft(_.currentSlide),_.touchObject.curX=void 0!==touches?touches[0].pageX:event.clientX,_.touchObject.curY=void 0!==touches?touches[0].pageY:event.clientY,_.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(_.touchObject.curX-_.touchObject.startX,2))),verticalSwipeLength=Math.round(Math.sqrt(Math.pow(_.touchObject.curY-_.touchObject.startY,2))),!_.options.verticalSwiping&&!_.swiping&&verticalSwipeLength>4?(_.scrolling=!0,!1):(!0===_.options.verticalSwiping&&(_.touchObject.swipeLength=verticalSwipeLength),swipeDirection=_.swipeDirection(),void 0!==event.originalEvent&&_.touchObject.swipeLength>4&&(_.swiping=!0,event.preventDefault()),positionOffset=(!1===_.options.rtl?1:-1)*(_.touchObject.curX>_.touchObject.startX?1:-1),!0===_.options.verticalSwiping&&(positionOffset=_.touchObject.curY>_.touchObject.startY?1:-1),swipeLength=_.touchObject.swipeLength,_.touchObject.edgeHit=!1,!1===_.options.infinite&&(0===_.currentSlide&&"right"===swipeDirection||_.currentSlide>=_.getDotCount()&&"left"===swipeDirection)&&(swipeLength=_.touchObject.swipeLength*_.options.edgeFriction,_.touchObject.edgeHit=!0),!1===_.options.vertical?_.swipeLeft=curLeft+swipeLength*positionOffset:_.swipeLeft=curLeft+swipeLength*(_.$list.height()/_.listWidth)*positionOffset,!0===_.options.verticalSwiping&&(_.swipeLeft=curLeft+swipeLength*positionOffset),!0!==_.options.fade&&!1!==_.options.touchMove&&(!0===_.animating?(_.swipeLeft=null,!1):void _.setCSS(_.swipeLeft))))},Slick.prototype.swipeStart=function(event){var touches,_=this;if(_.interrupted=!0,1!==_.touchObject.fingerCount||_.slideCount<=_.options.slidesToShow)return _.touchObject={},!1;void 0!==event.originalEvent&&void 0!==event.originalEvent.touches&&(touches=event.originalEvent.touches[0]),_.touchObject.startX=_.touchObject.curX=void 0!==touches?touches.pageX:event.clientX,_.touchObject.startY=_.touchObject.curY=void 0!==touches?touches.pageY:event.clientY,_.dragging=!0},Slick.prototype.unfilterSlides=Slick.prototype.slickUnfilter=function(){var _=this;null!==_.$slidesCache&&(_.unload(),_.$slideTrack.children(this.options.slide).detach(),_.$slidesCache.appendTo(_.$slideTrack),_.reinit())},Slick.prototype.unload=function(){var _=this;$(".slick-cloned",_.$slider).remove(),_.$dots&&_.$dots.remove(),_.$prevArrow&&_.htmlExpr.test(_.options.prevArrow)&&_.$prevArrow.remove(),_.$nextArrow&&_.htmlExpr.test(_.options.nextArrow)&&_.$nextArrow.remove(),_.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},Slick.prototype.unslick=function(fromBreakpoint){var _=this;_.$slider.trigger("unslick",[_,fromBreakpoint]),_.destroy()},Slick.prototype.updateArrows=function(){var _=this;Math.floor(_.options.slidesToShow/2),!0===_.options.arrows&&_.slideCount>_.options.slidesToShow&&!_.options.infinite&&(_.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),_.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===_.currentSlide?(_.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),_.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):_.currentSlide>=_.slideCount-_.options.slidesToShow&&!1===_.options.centerMode?(_.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),_.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):_.currentSlide>=_.slideCount-1&&!0===_.options.centerMode&&(_.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),_.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},Slick.prototype.updateDots=function(){var _=this;null!==_.$dots&&(_.$dots.find("li").removeClass("slick-active").end(),_.$dots.find("li").eq(Math.floor(_.currentSlide/_.options.slidesToScroll)).addClass("slick-active"))},Slick.prototype.visibility=function(){var _=this;_.options.autoplay&&(document[_.hidden]?_.interrupted=!0:_.interrupted=!1)},$.fn.slick=function(){var i,ret,_=this,opt=arguments[0],args=Array.prototype.slice.call(arguments,1
2382),l=_.length;for(i=0;i<l;i++)if("object"==typeof opt||void 0===opt?_[i].slick=new Slick(_[i],opt):ret=_[i].slick[opt].apply(_[i].slick,args),void 0!==ret)return ret;return _}}),$("#social-tabs").myTabs(),// Init - Hero Slick 2383$(".hero-wide").slick({autoplay:!0,autoplaySpeed:1e4,arrows:!1,dots:!0,mobileFirst:!0,slidesToShow:1,slidesToScroll:1,rows:0}),$(".images-slider-multi").slick({infinite:!1,speed:300,slidesToShow:4,slidesToScroll:4,rows:0,arrows:!1,dots:!0,responsive:[{breakpoint:800,settings:{slidesToShow:3,slidesToScroll:3}},{breakpoint:600,settings:{slidesToShow:2,slidesToScroll:2}}]}),$(function(){function redirect_focus(el){ 2384// console.log(el); 2385$(el).attr("tabindex",-1).on("blur focusout",function(){$(this).removeAttr("tabindex")}).focus()}function scroll_to_target(el){ 2386// console.log(el); 2387var $scroll_to=$(el).offset().top,$header_height=$("#header").height();$scroll_to>=$header_height&&($scroll_to=$(el).offset().top-$header_height),$("html, body").animate({scrollTop:$scroll_to},500)} 2388// ADA - Hamburger Navigation 2389function activate_nav(show_nav){var $nav=$("#nav-main");show_nav?$nav.find("a").attr("tabindex",0):$nav.find("a").attr("tabindex",-1)} 2390////////////////////////////// 2391// ADA 2392////////////////////////////// 2393// $('*').on('focus', function() { 2394// console.log(document.activeElement); 2395// }); 2396$("a, button, [tabindex], h1, h2, h3, h4, h5, h6, p, img, .error, .entry-content li").not('[tabindex="0"], [tabindex^="-"]').each(function(i){$(this).attr("tabindex",0)}), 2397// $('.addthis_button, .slick-slide, .slick-slide h1, .slick-slide h2, .slick-slide h3, .slick-slide h4, .slick-slide h5, .slick-slide h6, .slick-slide p, .slick-slide a').each(function(i) { 2398// $(this).attr('tabindex', -1); 2399// }); 2400// $('a img, .addthis_button').each(function(i) { 2401// $(this).attr('tabindex', -1); 2402// }); 2403$(".addthis_button").each(function(i){$(this).attr("tabindex",-1)}), 2404// $('a[href^="#"]:not(a[href="#"])').click(function(e) { 2405// e.preventDefault(); 2406// $(e.target).blur(); 2407// var scroll_target = $(e.target).attr('href'); 2408// scroll_to_target($(scroll_target)); 2409// }); 2410$(".skip").click(function(e){e.preventDefault();var skipTo="#"+this.href.split("#")[1];scroll_to_target($(skipTo)),redirect_focus($(skipTo))}), 2411// Accessibility Transcriptions 2412$(".transcription-link").modaal(),activate_nav(!1),$(".hamburger-nav").on("click",function(e){e.preventDefault(),$(this).hasClass("active")?(activate_nav(!1),$(this).attr({"aria-expanded":!1,"aria-label":"Open Navigation",title:"Open Navigation"}),setTimeout(function(){$(".hamburger-nav").focus()},100)):(activate_nav(!0),$(this).attr({"aria-expanded":!0,"aria-label":"Close Navigation",title:"Close Navigation"}),setTimeout(function(){redirect_focus($("#nav-main"))},100))}), 2413// $('.hamburger-close').on('click', function(e) { 2414// e.preventDefault(); 2415// $('.hamburger-nav').click().focus(); 2416// }); 2417$(document).on("focusout","#nav-main",function(e){$(e.relatedTarget).parents("#nav-main").length<1&&$(".hamburger-nav").focus()}),$(document).on("focusout","#header",function(e){$(e.relatedTarget).parents("#header").length<1&&$(".hamburger-nav").hasClass("active")&&redirect_focus($("#nav-main"))}), 2418////////////////////////////// 2419// Core Inits 2420////////////////////////////// 2421// Init - Placeholder 2422$("input, textarea").placeholder(), 2423// Init - Label Hint 2424//$('.lbl-hint').labelHint(); 2425// Init - Chosen Plugin 2426$(".chosen-select").chosen({width:"100%"}),$(".chosen-search-input").attr("aria-label","Filter Available Options"), 2427// Init - Custom Checkbox 2428$(".custom-chbx").customChbx(), 2429// Init - File Input 2430$(".fileinput").fileInput(), 2431// Init - Dropdowns 2432$(".dropdown .dropbtn").on("click",function(e){function closeDropdown(){$(dropdown).removeClass("active").find(".dropbtn").attr("aria-expanded","false"),$(dropdown).find(".dropdown-content").attr("aria-hidden","true")}e.stopPropagation();var dropdown=$(this).parent(); 2433//$(dropdown).removeClass('active').find('.dropbtn').attr('aria-expanded', 'false'); 2434// $(dropdown).addClass('active').find('.dropbtn').attr('aria-expanded', 'true'); 2435// $(dropdown).find('.dropdown-content').attr('tabindex', -1).on('blur focusout', function() { 2436// $(this).removeAttr('tabindex'); 2437// }).focus() 2438return $(dropdown).hasClass("active")?closeDropdown():function(){$(dropdown).addClass("active").find(".dropbtn").attr("aria-expanded","true"),$(dropdown).find(".dropdown-content").attr("tabindex",-1).on("blur focusout",function(){$(dropdown).find(".dropdown-content").removeAttr("tabindex").attr("aria-hidden","true")}).focus()}(),$(window).on("click",function(e){$(dropdown).hasClass("active")&&($(e.target).closest(dropdown).length<1?closeDropdown():$(e.target).is("a")&&$(e.target).closest(dropdown).length>0&&($(dropdown).find(".dropdown-content .current").removeClass("current"),$(e.target).addClass("current"),closeDropdown()))}),$(document).on("focusout",".dropdown",function(e){$(e.relatedTarget).parents(".dropdown").length<1&&closeDropdown()}),!1}), 2439////////////////////////////// 2440// Site Inits 2441////////////////////////////// 2442// Init - Accordion 2443$(".accordion").accordion(), 2444// Init - Colorbox 2445$(".cbox_group1").colorbox({rel:"cbox_group1",maxWidth:"95%",maxHeight:"95%"}),$(".cbox").colorbox({maxWidth:"95%",maxHeight:"95%"}), 2446// Init - Equal Heights Plugin 2447$(".eqheight").matchHeight(), 2448// Init - Hamburger 2449$(".hamburger-nav").hamburger({negativeSpace:0,// optional. e.g. '.header'. insert element to subtract its height from page height. 2450animation:"fadeIn"}), 2451// Pickaday 2452$(".date").pikaday({firstDay:1,minDate:new Date,format:"MM/DD/YYYY"}),$(".birth-date").pikaday({minDate:!1,maxDate:new Date,yearRange:100}), 2453// Pick a time 2454$(".time12h").timepicker({appendTo:function(e){return e.parent()},timeFormat:"g:ia"}), 2455////////////////////////////// 2456// Other
2457////////////////////////////// 2458// Fix Startup CSS animations 2459$(window).load(function(){$("body").removeClass("preload")}), 2460//If scrolled past logo section fix nav to top 2461$(window).scroll(function(){$(window).scrollTop()>1?$("body").addClass("header-fixed"):$("body").removeClass("header-fixed")}).scroll()});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.