/* 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.6.0 */ (function(c){if(void 0===c.fn.inputmask){var e={},I=function(c){var e=document.createElement("input");c="on"+c;var a=c in e;a||(e.setAttribute(c,"return;"),a="function"==typeof e[c]);return a},B=function(k,h){var a=e.aliases[k];return a?(a.alias&&B(a.alias),c.extend(!0,e,a),c.extend(!0,e,h),!0):!1},O=function(k){e.numericInput&&(k=k.split("").reverse().join(""));var h=!1,a=0,d=e.greedy,f=e.repeat;"*"==f&&(d=!1);1==k.length&&!1==d&&0!=f&&(e.placeholder="");k=c.map(k.split(""),function(c,d){var l=[]; if(c==e.escapeChar)h=!0;else if(c!=e.optionalmarker.start&&c!=e.optionalmarker.end||h){var b=e.definitions[c];if(b&&!h)for(var g=0;g=f?b[f-1]:[],m=C.validator,C=C.cardinality;a.matches.splice(l++,0,{fn:m?"string"==typeof m?RegExp(m):new function(){this.test=m}:/./,cardinality:C?C:1,optionality:a.isOptional,casing:g.casing,def:g.definitionSymbol||c})}a.matches.splice(l++,0,{fn:g.validator?"string"==typeof g.validator?RegExp(g.validator):new function(){this.test=g.validator}: /./,cardinality:g.cardinality,optionality:a.isOptional,casing:g.casing,def:g.definitionSymbol||c})}else a.matches.splice(l++,0,{fn:null,cardinality:0,optionality:a.isOptional,casing:null,def:c}),k=!1}e.numericInput&&(a=a.split("").reverse().join(""));var h=/(?:[?*+]|\{[0-9]+(?:,[0-9]*)?\})\??|[^.?*+^${[]()|\\]+|./g,k=!1,g=new c,f,r,v=[];for(b=[];f=h.exec(a);)switch(r=f[0],r.charAt(0)){case e.optionalmarker.end:case e.groupmarker.end:f=v.pop();0w;N--)g+=v(K,c-(N-1),!0);d&&(g+=d);return null!=f(c).fn?f(c).fn.test(g,K,c,b,a):d==F(c)||d==a.skipOptionalPartCharacter?{refresh:!0,c:F(c),pos:c}:!1}if(n=!0===n){var D=x(b,T,n);!0===D&&(D={pos:b});return D}var q=[],D=!1,s=h,X= l().slice(),U=d().lastValidPosition;H(b);var y=[];c.each(e,function(a,c){if("object"==typeof c){h=a;var e=b,f=d().lastValidPosition,k;if(f==U){if(1=U||h==s)&&0<=e&&eb.result.pos)&&(n=b.result.pos,m=b.activeMasksetIndex)});g=c.map(g,function(g,N){if(-1!=c.inArray(g.activeMasksetIndex, a)){if(g.result.pos==n)return g;if(!1!==g.result){h=g.activeMasksetIndex;for(var R=b;Rb.lastValidPosition? (b.activeMasksetIndex=a,b.lastValidPosition=d().lastValidPosition,b.next=g(d().lastValidPosition)):d().lastValidPosition==b.lastValidPosition&&(-1==b.next||b.next>g(d().lastValidPosition))&&(b.activeMasksetIndex=a,b.lastValidPosition=d().lastValidPosition,b.next=g(d().lastValidPosition)))});h=-1!=b.lastValidPosition&&e[a].lastValidPosition==b.lastValidPosition?a:b.activeMasksetIndex;a!=h&&(B(l(),g(b.lastValidPosition),p()),d().writeOutBuffer=!0);q.data("_inputmask").activeMasksetIndex=h}function m(a){a= f(a);return void 0!=a?a.fn:!1}function p(){return a.getMaskLength(b(),d().greedy,d().repeat,l(),a)}function g(a){var c=p();if(a>=c)return c;for(;++a=a)return 0;for(;0<--a&&!m(a););return a}function r(a,c,b,d){d&&(c=z(a,c));d=f(c);var g=b;if(void 0!=g&&void 0!=d)switch(d.casing){case "upper":g=b.toUpperCase();break;case "lower":g=b.toLowerCase()}a[c]=g}function v(a,c,b){b&&(c=z(a,c));return a[c]}function z(a,c){for(var d;void 0==a[c]&&a.length=g&&c.lastValidPosition==e){for(var l=!0,f=0;f<=e;f++){var k=m(f);if(k&&(void 0==b[f]||b[f]==F(f))||!k&&b[f]!=F(f)){l=!1;break}}if(d=d||l)return!1}g=c.lastValidPosition}});h=l;return d}}var y=!1,L=l().join(""),q,fa;this.unmaskedvalue=function(a,c){y=a.data("_inputmask").isRTL;return I(a,c)};this.isComplete= function(a){return Y(a)};this.mask=function(w){function z(a){a=c._data(a).events;c.each(a,function(a,b){c.each(b,function(a,c){if("inputmask"==c.namespace&&"setvalue"!=c.type&&"_keypress"!=c.type){var b=c.handler;c.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return b.apply(this,arguments)}}})})}function n(a){var b;Object.getOwnPropertyDescriptor&&(b=Object.getOwnPropertyDescriptor(a,"value"));if(b&&b.get){if(!a._valueGet){var d=b.get,g=b.set;a._valueGet=function(){return y? d.call(this).split("").reverse().join(""):d.call(this)};a._valueSet=function(a){g.call(this,y?a.split("").reverse().join(""):a)};Object.defineProperty(a,"value",{get:function(){var a=c(this),b=c(this).data("_inputmask"),g=b.masksets,e=b.activeMasksetIndex;return b&&b.opts.autoUnmask?a.inputmask("unmaskedvalue"):d.call(this)!=g[e]._buffer.join("")?d.call(this):""},set:function(a){g.call(this,a);c(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 y?d.call(this).split("").reverse().join(""):d.call(this)},a._valueSet=function(a){g.call(this,y?a.split("").reverse().join(""):a)},a.__defineGetter__("value",function(){var a=c(this),b=c(this).data("_inputmask"),g=b.masksets,e=b.activeMasksetIndex;return b&&b.opts.autoUnmask?a.inputmask("unmaskedvalue"):d.call(this)!=g[e]._buffer.join("")?d.call(this):""}),a.__defineSetter__("value",function(a){g.call(this, a);c(this).triggerHandler("setvalue.inputmask")}));else if(a._valueGet||(a._valueGet=function(){return y?this.value.split("").reverse().join(""):this.value},a._valueSet=function(a){this.value=y?a.split("").reverse().join(""):a}),void 0==c.valHooks.text||!0!=c.valHooks.text.inputmaskpatch)d=c.valHooks.text&&c.valHooks.text.get?c.valHooks.text.get:function(a){return a.value},g=c.valHooks.text&&c.valHooks.text.set?c.valHooks.text.set:function(a,c){a.value=c;return a},c.extend(c.valHooks,{text:{get:function(a){var b= c(a);if(b.data("_inputmask")){if(b.data("_inputmask").opts.autoUnmask)return b.inputmask("unmaskedvalue");a=d(a);b=b.data("_inputmask");return a!=b.masksets[b.activeMasksetIndex]._buffer.join("")?a:""}return d(a)},set:function(a,b){var d=c(a),e=g(a,b);d.data("_inputmask")&&d.triggerHandler("setvalue.inputmask");return e},inputmaskpatch:!0}})}function x(a,c,e,t){var h=l();if(!1!==t)for(;!m(a)&&0<=a-1;)a--;for(t=a;ta&&0<=h;h--)if(m(h)){var k=H(h),p=v(e,k);p!=F(k)&&!1!==C(k,p,!0)&&f(h).def==f(k).def&&(r(e,h,p,!0),V(k))}else V(h);void 0!=g&&v(e,a)==F(a)&&r(e,a,g);a=e.length;if(!1==d().greedy){g=P(e.join("")).split(""); e.length=g.length;h=0;for(k=e.length;h=f.end,l());d().lastValidPosition=A;)e=0==e?-1:H(e);e>=A?(D(A,p(),x),k=d().lastValidPosition,e=g(k),e!=p()&&k>=A&&v(l(),e,!0)!=F(e)&&(d().lastValidPosition=e)):d().writeOutBuffer=!1}else r(k,A,x,!0);if(-1==G||G>g(A))G=g(A)}else!n&&(k=Ak)&&(G=k);G>d().p&&(d().p=G)}});!0!==n&&(h=B,M());if(!1!==t&&(c.each(m,function(a,b){if(b.activeMasksetIndex==h)return z=b,!1}),void 0!= z)){var L=this;setTimeout(function(){a.onKeyValidation.call(L,z.result,a)},0);if(d().writeOutBuffer&&!1!==z.result){var I=l();t=f?void 0:a.numericInput?A>E?H(G):x==a.radixPoint?G-1:H(G-1):G;J(this,I,t);!0!==f&&setTimeout(function(){!0===Y(I)&&w.trigger("complete");W=!0;w.trigger("input")},0)}else q&&(d().buffer=d().undoBuffer.split(""))}a.showTooltip&&w.prop("title",d().mask);b.preventDefault()}}function U(d){var e=c(this),g=d.keyCode,f=l();ba&&g==a.keyCode.BACKSPACE&&fa==this._valueGet()&&I.call(this, d);a.onKeyUp.call(this,d,f,a);g==a.keyCode.TAB&&a.showMaskOnFocus&&(e.hasClass("focus.inputmask")&&0==this._valueGet().length?(f=b().slice(),J(this,f),s(this,0),L=l().join("")):(J(this,f),f.join("")==b().join("")&&-1!=c.inArray(a.radixPoint,f)?(s(this,E(0)),e.click()):s(this,E(0),E(p()))))}q=c(w);if(q.is(":input")){q.data("_inputmask",{masksets:e,activeMasksetIndex:h,opts:a,isRTL:!1});a.showTooltip&&q.prop("title",d().mask);d().greedy=d().greedy?d().greedy:0==d().repeat;if(null!=q.attr("maxLength")){var Q= q.prop("maxLength");-1=Q&&-1