/* Input Mask plugin for jquery http://github.com/RobinHerbots/jquery.inputmask Copyright (c) 2010 - 2013 Robin Herbots Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php) Version: 2.6.0 */ (function(c){void 0===c.fn.inputmask&&(c.inputmask={defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},quantifiermarker:{start:"{",end:"}"},groupmarker:{start:"(",end:")"},escapeChar:"\\",mask:null,oncomplete:c.noop,onincomplete:c.noop,oncleared:c.noop,repeat:0,greedy:!0,autoUnmask:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,aliases:{},onKeyUp:c.noop,onKeyDown:c.noop,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:c.noop,skipOptionalPartCharacter:" ",showTooltip:!1, numericInput:!1,isNumeric:!1,radixPoint:"",skipRadixDance:!1,rightAlignNumerics:!0,definitions:{9:{validator:"[0-9]",cardinality:1},a:{validator:"[A-Za-z\u0410-\u044f\u0401\u0451]",cardinality:1},"*":{validator:"[A-Za-z\u0410-\u044f\u0401\u04510-9]",cardinality:1}},keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111, NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91},ignorables:[8,9,13,19,27,33,34,35,36,37,38,39,40,45,46,93,112,113,114,115,116,117,118,119,120,121,122,123],getMaskLength:function(a,c,f,g,b){b=a.length;c||("*"==f?b=g.length+1:1=p?k[p-1]:[],l=P.validator,P=P.cardinality;g.push({fn:l?"string"==typeof l?RegExp(l):new function(){this.test=l}:/./,cardinality:P?P:1,optionality:b,newBlockMarker:!0==b?d:!1,offset:0,casing:h.casing,def:h.definitionSymbol||a});!0==b&&(d=!1)}g.push({fn:h.validator?"string"==typeof h.validator?RegExp(h.validator):new function(){this.test=h.validator}:/./,cardinality:h.cardinality,optionality:b, newBlockMarker:d,offset:0,casing:h.casing,def:h.definitionSymbol||a})}else g.push({fn:null,cardinality:0,optionality:b,newBlockMarker:d,offset:0,casing:null,def:a}),f=!1;d=!1;return g}b=!1}else b=!0;d=!0}})}function k(){function a(b){function d(){this.matches=[];this.isQuantifier=this.isOptional=this.isGroup=!1}var f=/(?:[?*+]|\{[0-9]+(?:,[0-9]*)?\})\??|[^.?*+^${[]()|\\]+|./g,c=new d,g,h=[];for(C=[];g=f.exec(b);)switch(g=g[0],g.charAt(0)){case e.optionalmarker.end:case e.groupmarker.end:g=h.pop(); 0g;T--)c+=N($,a-(T-1),!0);b&&(c+=b);return null!=f(a).fn?f(a).fn.test(c,$,a,d,e):b==H(a)||b==e.skipOptionalPartCharacter?{refresh:!0,c:H(a),pos:a}:!1}if(A=!0===A){var l=m(g,D,A);!0=== l&&(l={pos:g});return l}var q=[],l=!1,s=b,w=h().slice(),t=d().lastValidPosition;v(g);var M=[];c.each(a,function(a,e){if("object"==typeof e){b=a;var c=g,f=d().lastValidPosition,y;if(f==t){if(1=t||b==s)&&0<=c&&cb.result.pos)&&(l=b.result.pos,y=b.activeMasksetIndex)}); e=c.map(e,function(e,T){if(-1!=c.inArray(e.activeMasksetIndex,f)){if(e.result.pos==l)return e;if(!1!==e.result){b=e.activeMasksetIndex;for(var O=g;Of.lastValidPosition?(f.activeMasksetIndex=a,f.lastValidPosition=d().lastValidPosition,f.next=p(d().lastValidPosition)):d().lastValidPosition==f.lastValidPosition&&(-1==f.next||f.next>p(d().lastValidPosition))&&(f.activeMasksetIndex=a,f.lastValidPosition=d().lastValidPosition,f.next=p(d().lastValidPosition)))});b=-1!=f.lastValidPosition&&a[e].lastValidPosition==f.lastValidPosition?e:f.activeMasksetIndex;e!=b&&(W(h(),p(f.lastValidPosition),n()),d().writeOutBuffer= !0);s.data("_inputmask").activeMasksetIndex=b}function r(a){a=f(a);return void 0!=a?a.fn:!1}function n(){return e.getMaskLength(g(),d().greedy,d().repeat,h(),e)}function p(a){var b=n();if(a>=b)return b;for(;++a=a)return 0;for(;0<--a&&!r(a););return a}function u(a,b,d,e){e&&(b=K(a,b));e=f(b);var c=d;if(void 0!=c&&void 0!=e)switch(e.casing){case "upper":c=d.toUpperCase();break;case "lower":c=d.toLowerCase()}a[b]=c}function N(a,b,d){d&&(b=K(a,b));return a[b]}function K(a, b){for(var d;void 0==a[b]&&a.length=g&&e.lastValidPosition==c){for(var k=!0,l=0;l<=c;l++){var m=r(l);f();if(m&&(void 0==d[l]||d[l]==H(l))||!m&&d[l]!=H(l)){k=!1;break}}if(h=h||k)return!1}g=e.lastValidPosition}});b=k;return h}}var z=!1,F=h().join(""),s,ia;this.unmaskedvalue=function(a,b){z=a.data("_inputmask").isRTL;return ha(a,b)};this.isComplete=function(a){return R(a)};this.mask= function(t){function D(a){a=c._data(a).events;c.each(a,function(a,b){c.each(b,function(a,b){if("inputmask"==b.namespace&&"setvalue"!=b.type&&"_keypress"!=b.type){var d=b.handler;b.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return d.apply(this,arguments)}}})})}function A(a){var b;Object.getOwnPropertyDescriptor&&(b=Object.getOwnPropertyDescriptor(a,"value"));if(b&&b.get){if(!a._valueGet){var d=b.get,e=b.set;a._valueGet=function(){return z?d.call(this).split("").reverse().join(""): d.call(this)};a._valueSet=function(a){e.call(this,z?a.split("").reverse().join(""):a)};Object.defineProperty(a,"value",{get:function(){var a=c(this),b=c(this).data("_inputmask"),e=b.masksets,f=b.activeMasksetIndex;return b&&b.opts.autoUnmask?a.inputmask("unmaskedvalue"):d.call(this)!=e[f]._buffer.join("")?d.call(this):""},set:function(a){e.call(this,a);c(this).triggerHandler("setvalue.inputmask")}})}}else if(document.__lookupGetter__&&a.__lookupGetter__("value"))a._valueGet||(d=a.__lookupGetter__("value"), e=a.__lookupSetter__("value"),a._valueGet=function(){return z?d.call(this).split("").reverse().join(""):d.call(this)},a._valueSet=function(a){e.call(this,z?a.split("").reverse().join(""):a)},a.__defineGetter__("value",function(){var a=c(this),b=c(this).data("_inputmask"),e=b.masksets,f=b.activeMasksetIndex;return b&&b.opts.autoUnmask?a.inputmask("unmaskedvalue"):d.call(this)!=e[f]._buffer.join("")?d.call(this):""}),a.__defineSetter__("value",function(a){e.call(this,a);c(this).triggerHandler("setvalue.inputmask")})); else if(a._valueGet||(a._valueGet=function(){return z?this.value.split("").reverse().join(""):this.value},a._valueSet=function(a){this.value=z?a.split("").reverse().join(""):a}),void 0==c.valHooks.text||!0!=c.valHooks.text.inputmaskpatch)d=c.valHooks.text&&c.valHooks.text.get?c.valHooks.text.get:function(a){return a.value},e=c.valHooks.text&&c.valHooks.text.set?c.valHooks.text.set:function(a,b){a.value=b;return a},jQuery.extend(c.valHooks,{text:{get:function(a){var b=c(a);if(b.data("_inputmask")){if(b.data("_inputmask").opts.autoUnmask)return b.inputmask("unmaskedvalue"); a=d(a);b=b.data("_inputmask");return a!=b.masksets[b.activeMasksetIndex]._buffer.join("")?a:""}return d(a)},set:function(a,b){var d=c(a),f=e(a,b);d.data("_inputmask")&&d.triggerHandler("setvalue.inputmask");return f},inputmaskpatch:!0}})}function K(a,b,e,c){var l=h();if(!1!==c)for(;!r(a)&&0<=a-1;)a--;for(c=a;c=c.end,h());d().lastValidPosition=B;)c=0==c?-1:v(c);c>=B?(da(B,k.length,A),k=d().lastValidPosition,c=p(k),c!=n()&&k>=B&&N(h(),c,!0)!=H(c)&&(d().lastValidPosition=c)):d().writeOutBuffer=!1}else u(k,B,A,!0);if(-1==G||G>p(B))G=p(B)}else!t&&(k=Bk)&&(G=k);G>d().p&&(d().p=G)}});!0!==t&&(b=F,l());if(!1!==r&&(c.each(m,function(a,d){if(d.activeMasksetIndex==b)return D=d,!1}),void 0!=D)){var L= this;setTimeout(function(){e.onKeyValidation.call(L,D.result,e)},0);if(d().writeOutBuffer&&!1!==D.result){var K=h();r=g?void 0:e.numericInput?B>E?v(G):A==e.radixPoint?G-1:v(G-1):G;I(this,K,r);!0!==g&&setTimeout(function(){!0===R(K)&&M.trigger("complete")},0)}else s&&(d().buffer=d().undoBuffer.split(""))}e.showTooltip&&M.prop("title",d().mask);f.preventDefault()}}function Y(a){var b=c(this),d=a.keyCode,f=h();M&&d==e.keyCode.BACKSPACE&&ia==this._valueGet()&&fa.call(this,a);e.onKeyUp.call(this,a,f,e); d==e.keyCode.TAB&&e.showMaskOnFocus&&(b.hasClass("focus.inputmask")&&0==this._valueGet().length?(f=g().slice(),I(this,f),w(this,0),F=h().join("")):(I(this,f),w(this,0,n())))}s=c(t);if(s.is(":input")){s.data("_inputmask",{masksets:a,activeMasksetIndex:b,opts:e,isRTL:!1});e.showTooltip&&s.prop("title",d().mask);d().greedy=d().greedy?d().greedy:0==d().repeat;if(null!=s.attr("maxLength")){var E=s.prop("maxLength");-1=E&& -1d;d++)a[d]=function(){var a=d;return{validator:function(d,b,c,k,v){if(v.regex["urlpre"+(a+1)]){var e=d;0g)return a;if(dd?a:d}return g},onKeyUp:function(a,d,f){d=c(this);a.ctrlKey&&a.keyCode== f.keyCode.RIGHT&&(a=new Date,d.val(a.getDate().toString()+(a.getMonth()+1).toString()+a.getFullYear().toString()))},definitions:{1:{validator:function(a,d,c,g,b){var h=b.regex.val1.test(a);return g||h||a.charAt(1)!=b.separator&&-1=="-./".indexOf(a.charAt(1))||!(h=b.regex.val1.test("0"+a.charAt(0)))?h:(d[c-1]="0",{pos:c,c:a.charAt(0)})},cardinality:2,prevalidator:[{validator:function(a,d,c,g,b){var h=b.regex.val1pre.test(a);return g||h||!(h=b.regex.val1.test("0"+a))?h:(d[c]="0",c++,{pos:c})},cardinality:1}]}, 2:{validator:function(a,c,f,g,b){var h=c.join("").substr(0,3),k=b.regex.val2(b.separator).test(h+a);return g||k||a.charAt(1)!=b.separator&&-1=="-./".indexOf(a.charAt(1))||!(k=b.regex.val2(b.separator).test(h+"0"+a.charAt(0)))?k:(c[f-1]="0",{pos:f,c:a.charAt(0)})},cardinality:2,prevalidator:[{validator:function(a,c,f,g,b){var h=c.join("").substr(0,3),k=b.regex.val2pre(b.separator).test(h+a);return g||k||!(k=b.regex.val2(b.separator).test(h+"0"+a))?k:(c[f]="0",f++,{pos:f})},cardinality:1}]},y:{validator:function(a, c,f,g,b){if(b.isInYearRange(a,b.yearrange.minyear,b.yearrange.maxyear)){if(c.join("").substr(0,6)!=b.leapday)return!0;a=parseInt(a,10);return 0===a%4?0===a%100?0===a%400?!0:!1:!0:!1}return!1},cardinality:4,prevalidator:[{validator:function(a,c,f,g,b){var h=b.isInYearRange(a,b.yearrange.minyear,b.yearrange.maxyear);if(!g&&!h){g=b.determinebaseyear(b.yearrange.minyear,b.yearrange.maxyear,a+"0").toString().slice(0,1);if(h=b.isInYearRange(g+a,b.yearrange.minyear,b.yearrange.maxyear))return c[f++]=g[0], {pos:f};g=b.determinebaseyear(b.yearrange.minyear,b.yearrange.maxyear,a+"0").toString().slice(0,2);if(h=b.isInYearRange(g+a,b.yearrange.minyear,b.yearrange.maxyear))return c[f++]=g[0],c[f++]=g[1],{pos:f}}return h},cardinality:1},{validator:function(a,c,f,g,b){var h=b.isInYearRange(a,b.yearrange.minyear,b.yearrange.maxyear);if(!g&&!h){g=b.determinebaseyear(b.yearrange.minyear,b.yearrange.maxyear,a).toString().slice(0,2);if(h=b.isInYearRange(a[0]+g[1]+a[1],b.yearrange.minyear,b.yearrange.maxyear))return c[f++]= g[1],{pos:f};g=b.determinebaseyear(b.yearrange.minyear,b.yearrange.maxyear,a).toString().slice(0,2);b.isInYearRange(g+a,b.yearrange.minyear,b.yearrange.maxyear)?c.join("").substr(0,6)!=b.leapday?h=!0:(b=parseInt(a,10),h=0===b%4?0===b%100?0===b%400?!0:!1:!0:!1):h=!1;if(h)return c[f-1]=g[0],c[f++]=g[1],c[f++]=a[0],{pos:f}}return h},cardinality:2},{validator:function(a,c,f,g,b){return b.isInYearRange(a,b.yearrange.minyear,b.yearrange.maxyear)},cardinality:3}]}},insertMode:!1,autoUnmask:!1},"mm/dd/yyyy":{placeholder:"mm/dd/yyyy", alias:"dd/mm/yyyy",regex:{val2pre:function(a){a=c.inputmask.escapeRegex.call(this,a);return RegExp("((0[13-9]|1[012])"+a+"[0-3])|(02"+a+"[0-2])")},val2:function(a){a=c.inputmask.escapeRegex.call(this,a);return RegExp("((0[1-9]|1[012])"+a+"(0[1-9]|[12][0-9]))|((0[13-9]|1[012])"+a+"30)|((0[13578]|1[02])"+a+"31)")},val1pre:/[01]/,val1:/0[1-9]|1[012]/},leapday:"02/29/",onKeyUp:function(a,d,f){d=c(this);a.ctrlKey&&a.keyCode==f.keyCode.RIGHT&&(a=new Date,d.val((a.getMonth()+1).toString()+a.getDate().toString()+ a.getFullYear().toString()))}},"yyyy/mm/dd":{mask:"y/1/2",placeholder:"yyyy/mm/dd",alias:"mm/dd/yyyy",leapday:"/02/29",onKeyUp:function(a,d,f){d=c(this);a.ctrlKey&&a.keyCode==f.keyCode.RIGHT&&(a=new Date,d.val(a.getFullYear().toString()+(a.getMonth()+1).toString()+a.getDate().toString()))},definitions:{2:{validator:function(a,c,f,g,b){var h=c.join("").substr(5,3),k=b.regex.val2(b.separator).test(h+a);if(!(g||k||a.charAt(1)!=b.separator&&-1=="-./".indexOf(a.charAt(1)))&&(k=b.regex.val2(b.separator).test(h+ "0"+a.charAt(0))))return c[f-1]="0",{pos:f,c:a.charAt(0)};if(k){if(c.join("").substr(4,4)+a!=b.leapday)return!0;a=parseInt(c.join("").substr(0,4),10);return 0===a%4?0===a%100?0===a%400?!0:!1:!0:!1}return k},cardinality:2,prevalidator:[{validator:function(a,c,f,g,b){var h=c.join("").substr(5,3),k=b.regex.val2pre(b.separator).test(h+a);return g||k||!(k=b.regex.val2(b.separator).test(h+"0"+a))?k:(c[f]="0",f++,{pos:f})},cardinality:1}]}}},"dd.mm.yyyy":{mask:"1.2.y",placeholder:"dd.mm.yyyy",leapday:"29.02.", separator:".",alias:"dd/mm/yyyy"},"dd-mm-yyyy":{mask:"1-2-y",placeholder:"dd-mm-yyyy",leapday:"29-02-",separator:"-",alias:"dd/mm/yyyy"},"mm.dd.yyyy":{mask:"1.2.y",placeholder:"mm.dd.yyyy",leapday:"02.29.",separator:".",alias:"mm/dd/yyyy"},"mm-dd-yyyy":{mask:"1-2-y",placeholder:"mm-dd-yyyy",leapday:"02-29-",separator:"-",alias:"mm/dd/yyyy"},"yyyy.mm.dd":{mask:"y.1.2",placeholder:"yyyy.mm.dd",leapday:".02.29",separator:".",alias:"yyyy/mm/dd"},"yyyy-mm-dd":{mask:"y-1-2",placeholder:"yyyy-mm-dd",leapday:"-02-29", separator:"-",alias:"yyyy/mm/dd"},datetime:{mask:"1/2/y h:s",placeholder:"dd/mm/yyyy hh:mm",alias:"dd/mm/yyyy",regex:{hrspre:/[012]/,hrs24:/2[0-9]|1[3-9]/,hrs:/[01][0-9]|2[0-3]/,ampm:/^[a|p|A|P][m|M]/},timeseparator:":",hourFormat:"24",definitions:{h:{validator:function(a,c,f,g,b){var h=b.regex.hrs.test(a);return g||h||a.charAt(1)!=b.timeseparator&&-1=="-.:".indexOf(a.charAt(1))||!(h=b.regex.hrs.test("0"+a.charAt(0)))?h&&"24"!==b.hourFormat&&b.regex.hrs24.test(a)?(a=parseInt(a,10),c[f+5]=24==a?"a": "p",c[f+6]="m",a-=12,10>a?(c[f]=a.toString(),c[f-1]="0"):(c[f]=a.toString().charAt(1),c[f-1]=a.toString().charAt(0)),{pos:f,c:c[f]}):h:(c[f-1]="0",c[f]=a.charAt(0),f++,{pos:f})},cardinality:2,prevalidator:[{validator:function(a,c,f,g,b){var h=b.regex.hrspre.test(a);return g||h||!(h=b.regex.hrs.test("0"+a))?h:(c[f]="0",f++,{pos:f})},cardinality:1}]},t:{validator:function(a,c,f,g,b){return b.regex.ampm.test(a+"m")},casing:"lower",cardinality:1}},insertMode:!1,autoUnmask:!1},datetime12:{mask:"1/2/y h:s t\\m", placeholder:"dd/mm/yyyy hh:mm xm",alias:"datetime",hourFormat:"12"},"hh:mm t":{mask:"h:s t\\m",placeholder:"hh:mm xm",alias:"datetime",hourFormat:"12"},"h:s t":{mask:"h:s t\\m",placeholder:"hh:mm xm",alias:"datetime",hourFormat:"12"},"hh:mm:ss":{mask:"h:s:s",autoUnmask:!1},"hh:mm":{mask:"h:s",autoUnmask:!1},date:{alias:"dd/mm/yyyy"},"mm/yyyy":{mask:"1/y",placeholder:"mm/yyyy",leapday:"donotuse",separator:"/",alias:"mm/dd/yyyy"}})})(jQuery); (function(c){c.extend(c.inputmask.defaults.aliases,{decimal:{mask:"~",placeholder:"",repeat:"*",greedy:!1,numericInput:!1,isNumeric:!0,digits:"*",groupSeparator:"",radixPoint:".",groupSize:3,autoGroup:!1,allowPlus:!0,allowMinus:!0,integerDigits:"*",defaultValue:"",prefix:"",suffix:"",getMaskLength:function(a,d,f,g,b){var h=a.length;d||("*"==f?h=g.length+1:1=f&&"0"===d[0]&&/[\d-]/.test(a)&&1==d.length)return d[0]="",{pos:0};var h=g?d.slice(0,f):d.slice();h.splice(f,0,a);var h=h.join(""),k=c.inputmask.escapeRegex.call(this,b.groupSeparator),h=h.replace(RegExp(k,"g"),""),k=b.regex.number(b).test(h);if(!k&&(h+="0",k=b.regex.number(b).test(h),!k)){k=h.lastIndexOf(b.groupSeparator);for(i=h.length-k;3>=i;i++)h+="0";k=b.regex.number(b).test(h);if(!k&&!g&&a==b.radixPoint&&(k=b.regex.number(b).test("0"+ h+"0")))return d[f]="0",f++,{pos:f}}return!1==k||g||a==b.radixPoint?k:{pos:b.postFormat(d,f,!1,b)}},cardinality:1,prevalidator:null}},insertMode:!0,autoUnmask:!1},integer:{regex:{number:function(a){var d=c.inputmask.escapeRegex.call(this,a.groupSeparator);return RegExp("^"+(a.allowPlus||a.allowMinus?"["+(a.allowPlus?"+":"")+(a.allowMinus?"-":"")+"]?":"")+"(\\d+|\\d{1,"+a.groupSize+"}(("+d+"\\d{"+a.groupSize+"})?)+)$")}},alias:"decimal"}})})(jQuery); (function(c){c.extend(c.inputmask.defaults.aliases,{Regex:{mask:"r",greedy:!1,repeat:"*",regex:null,regexTokens:null,tokenizer:/\[\^?]?(?:[^\\\]]+|\\[\S\s]?)*]?|\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9][0-9]*|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|c[A-Za-z]|[\S\s]?)|\((?:\?[:=!]?)?|(?:[?*+]|\{[0-9]+(?:,[0-9]*)?\})\??|[^.?*+^${[()|\\]+|./g,quantifierFilter:/[0-9]+[^,]/,definitions:{r:{validator:function(a,c,f,g,b){function h(){this.matches=[];this.isLiteral=this.isQuantifier=this.isGroup=!1}function k(){var a= new h,c,d=[];for(b.regexTokens=[];c=b.tokenizer.exec(b.regex);)switch(c=c[0],c.charAt(0)){case "[":case "\\":0