/* 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.3.58 */ (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(c,G,K,C,B){B=c.length;G||("*"==K?B=C.length+1:1=t?s[t-1]:[],g=r.validator,r=r.cardinality;d.push({fn:g?"string"==typeof g?RegExp(g):new function(){this.test=g}:/./,cardinality:r?r:1,optionality:f,newBlockMarker:!0==f?m:!1,offset:0,casing:k.casing,def:k.definitionSymbol||c});!0==f&&(m=!1)}d.push({fn:k.validator?"string"==typeof k.validator?RegExp(k.validator):new function(){this.test=k.validator}:/./,cardinality:k.cardinality,optionality:f, newBlockMarker:m,offset:0,casing:k.casing,def:k.definitionSymbol||c})}else d.push({fn:null,cardinality:0,optionality:f,newBlockMarker:m,offset:0,casing:null,def:c}),b=!1;m=!1;return d}f=!1}else f=!0;m=!0}})}function N(){function d(c){var b=c.length;for(i=0;ica;n--)T+=L(d,h-(n-1));l&&(T+=l);return null!=b.tests[h].fn?b.tests[h].fn.test(T, d,c,u,a):l==L(b._buffer,c,!0)||l==a.skipOptionalPartCharacter?{refresh:!0,c:L(b._buffer,c,!0),pos:c}:!1}if(z=!0===z){var I=H(l,b(),u,z);!0===I&&(I={pos:l});return I}var q=[],I=!1,k=f,m=e().slice(),w=b().lastValidPosition;y(l);var v=[];c.each(d,function(c,a){if("object"==typeof a){f=c;var d=l,g=b().lastValidPosition,h;if(g==w){if(1=w||f==k)&&0<=d&&dl.result.pos)&&(z=l.result.pos,h=l.activeMasksetIndex)});b=c.map(b,function(b,T){if(-1!=c.inArray(b.activeMasksetIndex,a)){if(b.result.pos==z)return b;if(!1!==b.result){for(var e=l;eu.lastValidPosition?(u.activeMasksetIndex=a,u.lastValidPosition=b().lastValidPosition,u.next=r(b().lastValidPosition)):b().lastValidPosition==u.lastValidPosition&&(-1==u.next||u.next>r(b().lastValidPosition))&&(u.activeMasksetIndex= a,u.lastValidPosition=b().lastValidPosition,u.next=r(b().lastValidPosition)))});f=-1!=u.lastValidPosition&&d[a].lastValidPosition==u.lastValidPosition?a:u.activeMasksetIndex;a!=f&&(J(e(),r(u.lastValidPosition),t()),b().writeOutBuffer=!0);v.data("_inputmask").activeMasksetIndex=f}function s(a){a=p(a);a=m()[a];return void 0!=a?a.fn:!1}function p(a){return a%m().length}function t(){return a.getMaskLength(q(),b().greedy,b().repeat,e(),a)}function r(a){var c=t();if(a>=c)return c;for(;++a=a)return 0;for(;0<--a&&!s(a););return a}function B(a,c,b,d){d&&(c=A(a,c));d=m()[p(c)];var e=b;if(void 0!=e)switch(d.casing){case "upper":e=b.toUpperCase();break;case "lower":e=b.toLowerCase()}a[c]=e}function L(a,c,b){b&&(c=A(a,c));return a[c]}function A(a,c){for(var b;void 0==a[c]&&a.length=e&&d.lastValidPosition==g){for(var k=!0,m=0;m<=g;m++){var r=s(m),w=p(m);if(r&&(void 0==a[m]||a[m]==Q(m))||!r&&a[m]!=q()[w]){k=!1;break}}if(b=b||k)return!1}e=d.lastValidPosition}});f=g;return b}function aa(b,c){return E?1x.begin&&b().lastValidPosition=F;)h=0==h?-1:y(h);h>=F?(I(F,k.length,A),k=b().lastValidPosition,h=r(k),h!=t()&&k>=F&&L(e(),h,!0)!=Q(h)&&(b().lastValidPosition=h)):b().writeOutBuffer=!1}else B(k,F,A,!0);if(-1==M||M>r(F))M=r(F)}else if(k=Fk)M=k;b().p=M}});!0!==n&&(f=p,k());if(!1!==q&&(c.each(v,function(a,b){if(b.activeMasksetIndex==f)return z=b,!1}),void 0!=z)){var O=this;setTimeout(function(){a.onKeyValidation.call(O,z.result,a)},0);if(b().writeOutBuffer&&!1!==z.result){var N=e();q=m?void 0:a.numericInput? F>D?y(M):A==a.radixPoint?M-1:y(M-1):M;P(this,N,q);!0!==m&&setTimeout(function(){W(N)&&u.trigger("complete")},0)}else l&&(b().buffer=b().undoBuffer.split(""))}a.showTooltip&&u.prop("title",b().mask);h.preventDefault()}}function N(b){var d=c(this),f=b.keyCode,g=e(),k=w(this);a.onKeyUp.call(this,b,g,a);w(this,k.begin,k.end);f==a.keyCode.TAB&&a.showMaskOnFocus&&(d.hasClass("focus.inputmask")&&0==this._valueGet().length?(g=q().slice(),P(this,g),w(this,0),S=e().join("")):(P(this,g),w(this,0,t())))}v=c(l); if(v.is(":input")){v.data("_inputmask",{masksets:d,activeMasksetIndex:f,opts:a,isRTL:!1});a.showTooltip&&v.prop("title",b().mask);b().greedy=b().greedy?b().greedy:0==b().repeat;if(null!=v.attr("maxLength")){var R=v.prop("maxLength");-1R&&-1=parseInt(RegExp(/[0-9]+/).exec(J))}if("string"===typeof A)switch(A){case "mask":return C(a.alias,G),g=N(),this.each(function(){D(c.extend(!0,{},g),0).mask(this)});case "unmaskedvalue":return J=c(this),J.data("_inputmask")?(g=J.data("_inputmask").masksets,y=J.data("_inputmask").activeMasksetIndex,a=J.data("_inputmask").opts,D(g,y).unmaskedvalue(J)):J.val();case "remove":return this.each(function(){var d=c(this);if(d.data("_inputmask")){g=d.data("_inputmask").masksets;y=d.data("_inputmask").activeMasksetIndex; a=d.data("_inputmask").opts;this._valueSet(D(g,y).unmaskedvalue(d,!0));d.removeData("_inputmask");d.unbind(".inputmask");d.removeClass("focus.inputmask");var f;Object.getOwnPropertyDescriptor&&(f=Object.getOwnPropertyDescriptor(this,"value"));f&&f.get?this._valueGet&&Object.defineProperty(this,"value",{get:this._valueGet,set:this._valueSet}):document.__lookupGetter__&&this.__lookupGetter__("value")&&this._valueGet&&(this.__defineGetter__("value",this._valueGet),this.__defineSetter__("value",this._valueSet)); try{delete this._valueGet,delete this._valueSet}catch(b){this._valueSet=this._valueGet=void 0}}});case "getemptymask":return this.data("_inputmask")?(g=this.data("_inputmask").masksets,y=this.data("_inputmask").activeMasksetIndex,g[y]._buffer.join("")):"";case "hasMaskedValue":return this.data("_inputmask")?!this.data("_inputmask").opts.autoUnmask:!1;case "isComplete":return g=this.data("_inputmask").masksets,y=this.data("_inputmask").activeMasksetIndex,a=this.data("_inputmask").opts,D(g,y).isComplete(this[0]._valueGet().split("")); case "getmetadata":if(this.data("_inputmask"))return g=this.data("_inputmask").masksets,y=this.data("_inputmask").activeMasksetIndex,g[y].metadata;return;default:return C(A,G)||(a.mask=A),g=N(),this.each(function(){D(c.extend(!0,{},g),y).mask(this)})}else{if("object"==typeof A)return a=c.extend(!0,{},c.inputmask.defaults,A),C(a.alias,A),g=N(),this.each(function(){D(c.extend(!0,{},g),y).mask(this)});if(void 0==A)return this.each(function(){var d=c(this).attr("data-inputmask");if(d&&""!=d)try{var d= d.replace(RegExp("'","g"),'"'),f=c.parseJSON("{"+d+"}");c.extend(!0,f,G);a=c.extend(!0,{},c.inputmask.defaults,f);C(a.alias,f);a.alias=void 0;c(this).inputmask(a)}catch(b){}})}return this})})(jQuery);