/* 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.1.7 */ (function(j){void 0==j.fn.inputmask&&(j.inputmask={defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},escapeChar:"\\",mask:null,oncomplete:j.noop,onincomplete:j.noop,oncleared:j.noop,repeat:0,greedy:!0,autoUnmask:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,aliases:{},onKeyUp:j.noop,onKeyDown:j.noop,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:j.noop,skipOptionalPartCharacter:" ",numericInput:!1,radixPoint:"",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=g?j[g-1]:[],l=f.validator,f=f.cardinality;s.push({fn:l?"string"==typeof l?RegExp(l):new function(){this.test=l}:/./,cardinality:f?f:1,optionality:b,newBlockMarker:!0==b?d:!1,offset:0,casing:e.casing,def:a});!0==b&&(d=!1)}s.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:a})}else s.push({fn:null,cardinality:0,optionality:b,newBlockMarker:d,offset:0,casing:null,def:a}),c=!1;d=!1;return s}})}function h(){function a(d,j){var h=j.split(k.optionalmarker.end,2),g,l,m=h[0].split(k.optionalmarker.start);1e;g--)j+=A(c,s-(g-1));b&&(j+=b);return null!=f.tests[s].fn?f.tests[s].fn.test(j,c,a,d,k):!1}if(d)return h(a,p[m]);var g=[],l=!1,o=m;j.each(p,function(d){m=d;var f=a;if(o!=m&&!B(a)){if(b==this._buffer[f]||b==k.skipOptionalPartCharacter)return g[d]={refresh:!0},this.lastValidPosition=f,!1;f=e?E(c,a):y(c,a)}if((e||k.numericInput?this.lastValidPosition<=k.numericInput?q(c):y(c,f):this.lastValidPosition>=E(c,f))&&0<=f&&f=b){m=e;if(m!=c){var e=q(a),h=l();if(d||k.numericInput)a.reverse(),h.reverse();for(var j=a.length=b;j=c)return c;for(var d=b;++d=c)return 0;for(;0<--c&&!B(c););return c}function K(a,b,c){var d=g()[I(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 A(a,b,c){c&&(b=W(a, b));return a[b]}function W(a,b,c){if(c)for(;0>b&&a.length=highestValidPosition&&d.lastValidPosition==e-1){for(var h=!0,j=0;jL&&(n-=1,k.numericInput&&""!=k.radixPoint&&f[n]==k.radixPoint?(n=h(L,f.length-1==n?n:n-1,F(n),!0),n++):v?(n=h(L,n,F(n),!0),n=f[n+1]==k.radixPoint?n+1:y(f,n)):n=e(n,w),U(f,n,m),H(b,f,n))}b._valueGet()==l().join("")&&j(b).trigger("cleared");a.preventDefault()}else c==k.keyCode.END||c==k.keyCode.PAGE_DOWN?setTimeout(function(){var c=C(b,f,!1,!0);!k.insertMode&&(c==q(f)&&!a.shiftKey)&&c--;o(b,a.shiftKey?g.begin:c,c)},0):c==k.keyCode.HOME||c==k.keyCode.PAGE_UP?o(b,0,a.shiftKey?g.begin:0):c==k.keyCode.ESCAPE? (b._valueSet(Q),o(b,0,C(b,f))):c==k.keyCode.INSERT?(k.insertMode=!k.insertMode,o(b,!k.insertMode&&g.begin==q(f)?g.begin-1:g.begin)):a.ctrlKey&&88==c?setTimeout(function(){o(b,C(b,f,!0))},0):k.insertMode||(c==k.keyCode.RIGHT?(w=g.begin==g.end?g.end+1:g.end,w=w=g;)l= 0==l?-1:E(f,l);l>=g?h(g,f.length,d):c=!1}else K(f,g,d);c&&(d=y(f,g),H(this,f,d),setTimeout(function(){S(f)&&b.trigger("complete")},0))}else N&&H(this,f,l.begin);a.preventDefault()}}function x(a){var b=j(this),c=a.keyCode;k.onKeyUp.call(this,a,f,k);c==k.keyCode.TAB&&(b.hasClass("focus.inputmask")&&0==this._valueGet().length&&k.showMaskOnFocus)&&(f=l().slice(),H(this,f),v||o(this,0),Q=this._valueGet())}var t=j(a);if(t.is(":input")){var f=l().slice();p[m].greedy=p[m].greedy?p[m].greedy:0==p[m].repeat; var z=t.prop("maxLength");q(f)>z&&-1M&&(G(c,f[c],f,true,v)!==false||!B(c))?c:M):o(a,c=parseInt(RegExp(/[0-9]+/).exec(ba));var p,m=0;if("string"==typeof a)switch(a){case "mask":return c(k.alias,d),p=h(),this.each(function(){P(this)}); case "unmaskedvalue":return p=this.data("inputmask").masksets,m=this.data("inputmask").activeMasksetIndex,k.definitions=this.data("inputmask").definitions,Z(this);case "remove":return this.each(function(){var a=j(this),b=this;setTimeout(function(){if(a.data("inputmask")){p=a.data("inputmask").masksets;m=a.data("inputmask").activeMasksetIndex;k.definitions=a.data("inputmask").definitions;b._valueSet(Z(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")?(p=this.data("inputmask").masksets,m=this.data("inputmask").activeMasksetIndex,p[m]._buffer.join("")):"";case "hasMaskedValue":return this.data("inputmask")? !this.data("inputmask").autoUnmask:!1;case "isComplete":return p=this.data("inputmask").masksets,m=this.data("inputmask").activeMasksetIndex,k.definitions=this.data("inputmask").definitions,S(this[0].split(""));default:return c(a,d)||(k.mask=a),p=h(),this.each(function(){P(this)})}else{if("object"==typeof a)return k=j.extend(!0,{},j.inputmask.defaults,a),c(k.alias,a),p=h(),this.each(function(){P(this)});if(void 0==a)return this.each(function(){var a=j(this).attr("data-inputmask");if(a&&""!=a)try{var a= a.replace(RegExp("'","g"),'"'),b=j.parseJSON("{"+a+"}");k=j.extend(!0,{},j.inputmask.defaults,b);c(k.alias,b);k.alias=void 0;j(this).inputmask(k)}catch(d){}})}return this})})(jQuery); (function(j){j.extend(j.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"}});j.extend(j.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,h,g,j){if(j.regex["urlpre"+(a+1)]){var G=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]}):h},cardinality:2,prevalidator:[{validator:function(a,d,c,e,b){var h=b.regex.hrspre.test(a);return!e&&!h&&(h=b.regex.hrs.test("0"+a))?(d[c]="0",c++,{pos:c}):h},cardinality:1}]},t:{validator:function(a,d,c,e,b){var h=b.regex.ampm.test(a);return!e&&!h&&(h=b.regex.ampm.test(a+"m"))?(d[c-1]=a.charAt(0),d[c]="m",c++,c):h},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(j){j.extend(j.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 h=a.length;!d&&1=i;i++)h+="0"; g=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits).test(h);if(!g&&!e&&a==b.radixPoint&&(g=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits).test("0"+h+"0")))return d[c]="0",c++,{pos:c}}return!1!=g&&!e&&a!=b.radixPoint?{pos:b.postFormat(d,c+1,!1,b)}:g},cardinality:1,prevalidator:null}},insertMode:!0,autoUnmask:!1},"non-negative-decimal":{regex:{number:function(a,d,c,e){a=j.inputmask.escapeRegex.call(this,a);c=j.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(){return/^([+-]?\d*)$/}},alias:"decimal"}})})(jQuery);