/* 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.13 */ (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;t.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)}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: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 h(){function a(d,j){var h=j.split(k.optionalmarker.end,2),g,m,l=h[0].split(k.optionalmarker.start);1t;g--)j+=D(c,e-(g-1));b&&(j+=b);return null!=f.tests[e].fn?f.tests[e].fn.test(j,c,a,d,k):!1}if(d)return h(a,q[p]);var g=[],l=!1,o=p;j.each(q,function(d){p=d;var f=a;if(o!=p&&!B(a)){if(b==this._buffer[f]||b==k.skipOptionalPartCharacter)return g[d]={refresh:!0},this.lastValidPosition=f,!1;f=e?E(c,a):z(c,a)}if((e||k.numericInput?this.lastValidPosition<=k.numericInput?r(c):z(c,f):this.lastValidPosition>=E(c,f))&&0<=f&&f=b){p=e;if(p!=c){var e=r(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 J(a,b,c){var d=g()[G(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 D(a,b,c){c&&(b=V(a, b));return a[b]}function V(a,b,c){if(c)for(;0>b&&a.length=highestValidPosition&&d.lastValidPosition==e-1){for(var h=!0,j=0;jK&&(n-=1,k.numericInput&&""!=k.radixPoint&&f[n]==k.radixPoint?(n=h(K,f.length-1==n?n:n-1,I(n),!0),n++):v?(n=h(K,n,I(n),!0),n=f[n+1]==k.radixPoint?n+1:z(f,n)):n=e(n,w),T(f,n,p),F(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==r(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==r(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 J(f,g,d);c&&(d=z(f,g),F(this,f,d),setTimeout(function(){S(f)&&b.trigger("complete")},0))}else M&&F(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(),F(this, f),v||o(this,0),Q=this._valueGet())}var s=j(a);if(s.is(":input")){var f=l().slice();q[p].greedy=q[p].greedy?q[p].greedy:0==q[p].repeat;var A=s.prop("maxLength");r(f)>A&&-1L&&(y(c,f[c],f,true,v)!==false||!B(c))?c:L):o(a,c=P;Z=534>=(533d;d++)a[d]=function(){var a=d;return{validator:function(d,b,h,g,j){if(j.regex["urlpre"+(a+1)]){var y=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(a,d){var c=j.inputmask.escapeRegex.call(this,a);return RegExp("^[+-]?(\\d+|\\d{1,"+d+"}(("+c+"\\d{"+d+"})?)+)$")}},alias:"decimal"}})})(jQuery);