/* 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.62 */ (function(b){void 0===b.fn.inputmask&&(b.inputmask={defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},quantifiermarker:{start:"{",end:"}"},groupmarker:{start:"(",end:")"},escapeChar:"\\",mask:null,oncomplete:b.noop,onincomplete:b.noop,oncleared:b.noop,repeat:0,greedy:!0,autoUnmask:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,aliases:{},onKeyUp:b.noop,onKeyDown:b.noop,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:b.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(b,C,J,w,B){B=b.length;C||("*"==J?B=w.length+1:1=t?p[t-1]:[],k=q.validator,q=q.cardinality;d.push({fn:k?"string"==typeof k?RegExp(k):new function(){this.test=k}:/./,cardinality:q?q:1,optionality:e,newBlockMarker:!0==e?m:!1,offset:0,casing:h.casing,def:h.definitionSymbol||b});!0==e&&(m=!1)}d.push({fn:h.validator?"string"==typeof h.validator?RegExp(h.validator):new function(){this.test=h.validator}:/./,cardinality:h.cardinality,optionality:e, newBlockMarker:m,offset:0,casing:h.casing,def:h.definitionSymbol||b})}else d.push({fn:null,cardinality:0,optionality:e,newBlockMarker:m,offset:0,casing:null,def:b}),c=!1;m=!1;return d}e=!1}else e=!0;m=!0}})}function P(){function d(b){var c=b.length;for(i=0;iba;X--)K+=L(s,d-(X-1));c&&(K+=c);return null!=l.tests[d].fn?l.tests[d].fn.test(K, s,b,r,a):c==L(l._buffer,b,!0)||c==a.skipOptionalPartCharacter?{refresh:!0,c:L(l._buffer,b,!0),pos:b}:!1}if(x=!0===x){var H=Q(l,c(),r,x);!0===H&&(H={pos:l});return H}var n=[],H=!1,h=e,m=g().slice(),u=c().lastValidPosition;z(l);var v=[];b.each(d,function(a,b){if("object"==typeof b){e=a;var d=l,k=c().lastValidPosition,f;if(k==u){if(1=u||e==h)&&0<=d&&dl.result.pos)&&(x=l.result.pos,e=l.activeMasksetIndex)});c=b.map(c,function(c,K){if(-1!=b.inArray(c.activeMasksetIndex,a)){if(c.result.pos==x)return c;if(!1!==c.result){for(var s=l;sr.lastValidPosition?(r.activeMasksetIndex=a,r.lastValidPosition=c().lastValidPosition,r.next=q(c().lastValidPosition)):c().lastValidPosition==r.lastValidPosition&&(-1==r.next||r.next>q(c().lastValidPosition))&&(r.activeMasksetIndex= a,r.lastValidPosition=c().lastValidPosition,r.next=q(c().lastValidPosition)))});e=-1!=r.lastValidPosition&&d[a].lastValidPosition==r.lastValidPosition?a:r.activeMasksetIndex;a!=e&&(F(g(),q(r.lastValidPosition),t()),c().writeOutBuffer=!0);v.data("_inputmask").activeMasksetIndex=e}function p(a){a=f(a);a=m()[a];return void 0!=a?a.fn:!1}function f(a){return a%m().length}function t(){return a.getMaskLength(n(),c().greedy,c().repeat,g(),a)}function q(a){var b=t();if(a>=b)return b;for(;++a=a)return 0;for(;0<--a&&!p(a););return a}function A(a,b,c,d){d&&(b=B(a,b));d=m()[f(b)];var g=c;if(void 0!=g)switch(d.casing){case "upper":g=c.toUpperCase();break;case "lower":g=c.toLowerCase()}a[b]=g}function L(a,b,c){c&&(b=B(a,b));return a[b]}function B(a,b){for(var c;void 0==a[b]&&a.length=g&&d.lastValidPosition==k){for(var h=!0,m=0;m<=k;m++){var q=p(m),u=f(m);if(q&&(void 0==a[m]||a[m]==N(m))||!q&&a[m]!=n()[u]){h=!1;break}}if(c=c||h)return!1}g=d.lastValidPosition}});e=k;return c}var D=!1,S=g().join(""),v;this.unmaskedvalue=function(a,b){D=a.data("_inputmask").isRTL; return P(a,b)};this.isComplete=function(a){return V(a)};this.mask=function(l){function r(a){a=b._data(a).events;b.each(a,function(a,c){b.each(c,function(a,b){if("inputmask"==b.namespace&&"setvalue"!=b.type&&"_keypress"!=b.type){var c=b.handler;b.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return c.apply(this,arguments)}}})})}function x(a){var c;Object.getOwnPropertyDescriptor&&(c=Object.getOwnPropertyDescriptor(a,"value"));if(c&&c.get){if(!a._valueGet){var d=c.get,g= c.set;a._valueGet=function(){return D?d.call(this).split("").reverse().join(""):d.call(this)};a._valueSet=function(a){g.call(this,D?a.split("").reverse().join(""):a)};Object.defineProperty(a,"value",{get:function(){var a=b(this),c=b(this).data("_inputmask"),g=c.masksets,K=c.activeMasksetIndex;return c&&c.opts.autoUnmask?a.inputmask("unmaskedvalue"):d.call(this)!=g[K]._buffer.join("")?d.call(this):""},set:function(a){g.call(this,a);b(this).triggerHandler("setvalue.inputmask")}})}}else if(document.__lookupGetter__&& a.__lookupGetter__("value"))a._valueGet||(d=a.__lookupGetter__("value"),g=a.__lookupSetter__("value"),a._valueGet=function(){return D?d.call(this).split("").reverse().join(""):d.call(this)},a._valueSet=function(a){g.call(this,D?a.split("").reverse().join(""):a)},a.__defineGetter__("value",function(){var a=b(this),c=b(this).data("_inputmask"),g=c.masksets,K=c.activeMasksetIndex;return c&&c.opts.autoUnmask?a.inputmask("unmaskedvalue"):d.call(this)!=g[K]._buffer.join("")?d.call(this):""}),a.__defineSetter__("value", function(a){g.call(this,a);b(this).triggerHandler("setvalue.inputmask")}));else if(a._valueGet||(a._valueGet=function(){return D?this.value.split("").reverse().join(""):this.value},a._valueSet=function(a){this.value=D?a.split("").reverse().join(""):a}),void 0==b.valHooks.text||!0!=b.valHooks.text.inputmaskpatch)d=b.valHooks.text&&b.valHooks.text.get?b.valHooks.text.get:function(){return this.value},g=b.valHooks.text&&b.valHooks.text.set?b.valHooks.text.set:function(a){return this.value=a},jQuery.extend(b.valHooks, {text:{get:function(a){var c=b(a);if(c.data("_inputmask")){if(c.data("_inputmask").opts.autoUnmask)return c.inputmask("unmaskedvalue");a=d.call(a);c=c.data("_inputmask");return a!=c.masksets[c.activeMasksetIndex]._buffer.join("")?a:""}return d.call(a)},set:function(a,c){var d=b(a),s=g.call(a,c);d.data("_inputmask")&&d.triggerHandler("setvalue.inputmask");return s},inputmaskpatch:!0}})}function B(a,b,d,e){var I=g();if(!1!==e)for(;!p(a)&&0<=a-1;)a--;for(e=a;e=E;)f=0==f?-1:z(f);f>=E?(H(E,k.length,x),k=c().lastValidPosition,f=q(k),f!=t()&&k>=E&&L(g(),f,!0)!=N(f)&&(c().lastValidPosition=f)):c().writeOutBuffer=!1}else A(k,E,x,!0);if(-1==w||w>q(E))w=q(E)}else!n&&(k=Ek)&&(w=k);w>c().p&&(c().p=w)}});!0!==n&&(e=B,h());if(!1!==m&&(b.each(s,function(a,b){if(b.activeMasksetIndex==e)return v=b,!1}),void 0!=v)){var F=this;setTimeout(function(){a.onKeyValidation.call(F, v.result,a)},0);if(c().writeOutBuffer&&!1!==v.result){var G=g();m=l?void 0:a.numericInput?E>C?z(w):x==a.radixPoint?w-1:z(w-1):w;M(this,G,m);!0!==l&&setTimeout(function(){V(G)&&r.trigger("complete")},0)}else p&&(c().buffer=c().undoBuffer.split(""))}a.showTooltip&&r.prop("title",c().mask);f.preventDefault()}}function ca(c){var d=b(this),e=c.keyCode,f=g();a.onKeyUp.call(this,c,f,a);e==a.keyCode.TAB&&a.showMaskOnFocus&&(d.hasClass("focus.inputmask")&&0==this._valueGet().length?(f=n().slice(),M(this,f), u(this,0),S=g().join("")):(M(this,f),u(this,0,t())))}v=b(l);if(v.is(":input")){v.data("_inputmask",{masksets:d,activeMasksetIndex:e,opts:a,isRTL:!1});a.showTooltip&&v.prop("title",c().mask);c().greedy=c().greedy?c().greedy:0==c().repeat;if(null!=v.attr("maxLength")){var R=v.prop("maxLength");-1R&&-1