/* 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.2.7 */ (function(f){void 0==f.fn.inputmask&&(f.inputmask={defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},escapeChar:"\\",mask:null,oncomplete:f.noop,onincomplete:f.noop,oncleared:f.noop,repeat:0,greedy:!0,autoUnmask:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,aliases:{},onKeyUp:f.noop,onKeyDown:f.noop,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:f.noop,skipOptionalPartCharacter:" ",showTooltip:!1,numericInput:!1,radixPoint:"",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:[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,d,c){var e=a.length;!d&&1=l?f[l-1]:[],n=g.validator,g=g.cardinality;t.push({fn:n?"string"==typeof n?RegExp(n):new function(){this.test=n}:/./,cardinality:g?g:1,optionality:b,newBlockMarker:!0==b?d:!1,offset:0,casing:e.casing,def:e.definitionSymbol|a});!0==b&&(d=!1)}t.push({fn:e.validator?"string"==typeof e.validator?RegExp(e.validator): new function(){this.test=e.validator}:/./,cardinality:e.cardinality,optionality:b,newBlockMarker:d,offset:0,casing:e.casing,def:e.definitionSymbol|a})}else t.push({fn:null,cardinality:0,optionality:b,newBlockMarker:d,offset:0,casing:null,def:a}),c=!1;d=!1;return t}})}function C(){function a(b){var c=b.length;for(i=0;it;n--)f+=B(c,e-(n-1));b&&(f+=b);return null!=g.tests[e].fn?g.tests[e].fn.test(f,c,a,d,h):!1}if(d)return j(a,u());var n=[],m=!1,k=p;f.each(x,function(d){p=d;var g=a;if(k!=p&&!A(a)){if(b==this._buffer[g]||b==h.skipOptionalPartCharacter)return n[d]={refresh:!0},this.lastValidPosition=g,!1;g=e?L(c,a):z(c,a)}if((void 0==this.lastValidPosition&&g==(e?L(c,r(c)):z(c,-1))||e||h.numericInput?this.lastValidPosition<= h.numericInput?r(c):z(c,g):this.lastValidPosition>=L(c,g))&&0<=g&&g=b){p=e;if(p!=c){var e=r(a),f=m();if(d||h.numericInput)a.reverse(), f.reverse();for(var j=a.length=b;j=c)return c;for(var d=b;++d=c)return 0;for(;0<--c&&!A(c););return c}function J(a,b,c){var d=H()[D(b)], e=c;if(void 0!=e)switch(d.casing){case "upper":e=c.toUpperCase();break;case "lower":e=c.toLowerCase()}a[b]=e}function B(a,b,c){c&&(b=W(a,b));return a[b]}function W(a,b,c){if(c)for(;0>b&&a.length=c&&e.lastValidPosition==j-1){for(var h=!0,f=0;fk?(o-=1,h.numericInput&&""!=h.radixPoint&&g[o]==h.radixPoint?(o=C(k,g.length-1==o?o:o-1,G(o),!0),o++):w?(o=C(k,o,G(o),!0),o=g[o+1]==h.radixPoint?o+1:z(g,o)):o=n(o,e),S(g,o,p),E(b,g,o)):0=k;)m=0==m?-1:L(g,m);m>=k?C(k,g.length,j):d=!1}else J(g,k,j);d&&(j=z(g,k),E(this,g,j),setTimeout(function(){R(g)&&b.trigger("complete")},0))}V&&s(this,c,e);h.showTooltip&&b.prop("title",u().mask);a.preventDefault()}}function k(a){var b=f(this),c=a.keyCode;h.onKeyUp.call(this,a,g,h);c==h.keyCode.TAB&&(b.hasClass("focus.inputmask")&& 0==this._valueGet().length&&h.showMaskOnFocus)&&(g=m().slice(),E(this,g),w||s(this,0),P=this._valueGet())}var l=f(a);if(l.is(":input")){h.showTooltip&&l.prop("title",u().mask);var g=m().slice();u().greedy=u().greedy?u().greedy:0==u().repeat;var K=l.prop("maxLength");r(g)>K&&-1M&&(I(c,g[c],g,true,w)!==false||!A(c))?c:M):s(a,c=parseInt(RegExp(/[0-9]+/).exec(ca))}var x,p=0;if("string"==typeof a)switch(a){case "mask":return b(h.alias,d),x=C(),this.each(function(){O(this)});case "unmaskedvalue":return x=this.data("inputmask").masksets,p=this.data("inputmask").activeMasksetIndex,h=this.data("inputmask").opts,Y(this);case "remove":return this.each(function(){var a=f(this),b=this;setTimeout(function(){if(a.data("inputmask")){x=a.data("inputmask").masksets;p=a.data("inputmask").activeMasksetIndex; h=a.data("inputmask").opts;b._valueSet(Y(a,!0));a.removeData("inputmask");a.unbind(".inputmask");a.removeClass("focus.inputmask");var c;Object.getOwnPropertyDescriptor&&(c=Object.getOwnPropertyDescriptor(b,"value"));c&&c.get?b._valueGet&&Object.defineProperty(b,"value",{get:b._valueGet,set:b._valueSet}):document.__lookupGetter__&&b.__lookupGetter__("value")&&b._valueGet&&(b.__defineGetter__("value",b._valueGet),b.__defineSetter__("value",b._valueSet));delete b._valueGet;delete b._valueSet}},0)}); case "getemptymask":return this.data("inputmask")?(x=this.data("inputmask").masksets,p=this.data("inputmask").activeMasksetIndex,x[p]._buffer.join("")):"";case "hasMaskedValue":return this.data("inputmask")?!this.data("inputmask").opts.autoUnmask:!1;case "isComplete":return x=this.data("inputmask").masksets,p=this.data("inputmask").activeMasksetIndex,h=this.data("inputmask").opts,R(this[0]._valueGet().split(""));default:return b(a,d)||(h.mask=a),x=C(),this.each(function(){O(this)})}else{if("object"== typeof a)return h=f.extend(!0,{},f.inputmask.defaults,a),b(h.alias,a),x=C(),this.each(function(){O(this)});if(void 0==a)return this.each(function(){var a=f(this).attr("data-inputmask");if(a&&""!=a)try{var a=a.replace(RegExp("'","g"),'"'),c=f.parseJSON("{"+a+"}");h=f.extend(!0,{},f.inputmask.defaults,c);b(h.alias,c);h.alias=void 0;f(this).inputmask(h)}catch(d){}})}return this})})(jQuery); (function(f){f.extend(f.inputmask.defaults.definitions,{A:{validator:"[A-Za-z]",cardinality:1,casing:"upper"},"#":{validator:"[A-Za-z\u0410-\u044f\u0401\u04510-9]",cardinality:1,casing:"upper"}});f.extend(f.inputmask.defaults.aliases,{url:{mask:"ir",placeholder:"",separator:"",defaultPrefix:"http://",regex:{urlpre1:/[fh]/,urlpre2:/(ft|ht)/,urlpre3:/(ftp|htt)/,urlpre4:/(ftp:|http|ftps)/,urlpre5:/(ftp:\/|ftps:|http:|https)/,urlpre6:/(ftp:\/\/|ftps:\/|http:\/|https:)/,urlpre7:/(ftp:\/\/|ftps:\/\/|http:\/\/|https:\/)/, urlpre8:/(ftp:\/\/|ftps:\/\/|http:\/\/|https:\/\/)/},definitions:{i:{validator:function(){return!0},cardinality:8,prevalidator:function(){for(var a=[],d=0;8>d;d++)a[d]=function(){var a=d;return{validator:function(d,b,j,f,C){if(C.regex["urlpre"+(a+1)]){var u=d;0c?a:da?(d[c]=a.toString(), d[c-1]="0"):(d[c]=a.toString().charAt(1),d[c-1]=a.toString().charAt(0)),{pos:c,c:d[c]}):f},cardinality:2,prevalidator:[{validator:function(a,d,c,e,b){var f=b.regex.hrspre.test(a);return!e&&!f&&(f=b.regex.hrs.test("0"+a))?(d[c]="0",c++,{pos:c}):f},cardinality:1}]},t:{validator:function(a,d,c,e,b){var f=b.regex.ampm.test(a);return!e&&!f&&(f=b.regex.ampm.test(a+"m"))?(d[c-1]=a.charAt(0),d[c]="m",c++,c):f},casing:"lower",cardinality:2,prevalidator:[{validator:function(a,d,c,e,b){if(e=b.regex.ampmpre.test(a))if(e= b.regex.ampm.test(a+"m"))return d[c]=a,d[c+1]="m",c;return e},cardinality:1}]}},insertMode:!1,autoUnmask:!1},datetime12:{mask:"1/2/y h:s t",placeholder:"dd/mm/yyyy hh:mm xm",alias:"datetime",hourFormat:"12"},"hh:mm t":{mask:"h:s t",placeholder:"hh:mm xm",alias:"datetime",hourFormat:"12"},"h:s t":{mask:"h:s t",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"}})})(jQuery); (function(f){f.extend(f.inputmask.defaults.aliases,{decimal:{mask:"~",placeholder:"",repeat:10,greedy:!1,numericInput:!0,digits:"*",groupSeparator:",",radixPoint:".",groupSize:3,autoGroup:!1,getMaskLength:function(a,d,c,e,b){var j=a.length;!d&&1=i;i++)f+="0";n=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits).test(f);if(!n&&!e&&a==b.radixPoint&&(n=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits).test("0"+f+"0")))return d[c]="0",c++,{pos:c}}return!1!=n&&!e&&a!=b.radixPoint?{pos:b.postFormat(d,c+1,!1,b)}:n},cardinality:1,prevalidator:null}},insertMode:!0,autoUnmask:!1}, "non-negative-decimal":{regex:{number:function(a,d,c,e){a=f.inputmask.escapeRegex.call(this,a);c=f.inputmask.escapeRegex.call(this,c);e=isNaN(e)?e:"{0,"+e+"}";return RegExp("^[+]?(\\d+|\\d{1,"+d+"}(("+a+"\\d{"+d+"})?)+)("+c+"\\d"+e+")?$")}},alias:"decimal"},integer:{regex:{number:function(a,d){var c=f.inputmask.escapeRegex.call(this,a);return RegExp("^[+-]?(\\d+|\\d{1,"+d+"}(("+c+"\\d{"+d+"})?)+)$")}},alias:"decimal"}})})(jQuery);