/* Input Mask plugin for jquery http://github.com/RobinHerbots/jquery.inputmask Copyright (c) 2010 - 2014 Robin Herbots Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php) Version: 3.0.60 */ (function(f){"function"===typeof define&&define.amd?define("jquery.inputmask",["jquery"],f):f(jQuery)})(function(f){if(void 0===f.fn.inputmask){var T=function(f){var e=document.createElement("input");f="on"+f;var c=f in e;c||(e.setAttribute(f,"return;"),c="function"==typeof e[f]);return c},D=function(b,e,c){return(b=c.aliases[b])?(b.alias&&D(b.alias,void 0,c),f.extend(!0,c,b),f.extend(!0,c,e),!0):!1},J=function(b,e){function c(c){function f(c,e,b,g){this.matches=[];this.isGroup=c||!1;this.isOptional= e||!1;this.isQuantifier=b||!1;this.isAlternator=g||!1;this.quantifier={min:1,max:1}}function e(c,f,g){var k=b.definitions[f],l=0==c.matches.length;g=void 0!=g?g:c.matches.length;if(k&&!y){for(var m=k.prevalidator,v=m?m.length:0,u=1;u=u?m[u-1]:[],w=t.validator,t=t.cardinality;c.matches.splice(g++,0,{fn:w?"string"==typeof w?RegExp(w):new function(){this.test=w}:/./,cardinality:t?t:1,optionality:c.isOptional,newBlockMarker:l,casing:k.casing,def:k.definitionSymbol||f,placeholder:k.placeholder, mask:f})}c.matches.splice(g++,0,{fn:k.validator?"string"==typeof k.validator?RegExp(k.validator):new function(){this.test=k.validator}:/./,cardinality:k.cardinality,optionality:c.isOptional,newBlockMarker:l,casing:k.casing,def:k.definitionSymbol||f,placeholder:k.placeholder,mask:f})}else c.matches.splice(g++,0,{fn:null,cardinality:0,optionality:c.isOptional,newBlockMarker:l,casing:null,def:f,placeholder:void 0,mask:f}),y=!1}for(var t=/(?:[?*+]|\{[0-9\+\*]+(?:,[0-9\+\*]*)?\})\??|[^.?*+^${[]()|\\]+|./g, y=!1,v=new f,l,g=[],F=[],m;l=t.exec(c);)switch(l=l[0],l.charAt(0)){case b.optionalmarker.end:case b.groupmarker.end:m=g.pop();0h?v(h,p,h-1)[0]:w(h,p,h-1),b=p.match,p=p.locator.slice(),f.push(null==b.fn?b.def:b.placeholder||c.placeholder.charAt(h%c.placeholder.length));h++}while((void 0==M||h-1=h);f.pop();return f}function y(a){var d=e;d.buffer=void 0;d.tests={};!0!==a&&(d._buffer=void 0,d.validPositions={},d.p=-1)}function t(a){var d=-1,r=e.validPositions;void 0==a&&(a=-1);var c=d,f;for(f in r){var b=parseInt(f);if(-1==a||null!=r[b].match.fn)b=a&&(d=b)}return 1n.quantifier.min-1,e=0==f.inArray(e,m.matches))if(N>n.quantifier.min-1){B=!0;h=a;break}else return!0;else return!0}else{if(e=b(e,r,g,k))return!0}else h++}for(var l=0a)break}}var g=e.maskToken,h=d?r:0;r=d||[0];var s= [],B=!1;if(void 0==d){d=a-1;for(var l;void 0==(l=e.validPositions[d])&&-1a);d++);(0==s.length||B)&&s.push({match:{fn:null,cardinality:0,optionality:!0,casing:null,def:""},locator:[]});return e.tests[a]=s}function l(){void 0==e._buffer&&(e._buffer=F(!1,1));return e._buffer}function g(){void 0==e.buffer&& (e.buffer=F(!0,t(),!0));return e.buffer}function J(a,d){var f=g().slice();if(!0===a)y(),a=0,d=f.length;else for(var b=a;bl;n--)A+=void 0==e.validPositions[a- (n-1)]?U(a-(n-1)):e.validPositions[a-(n-1)].input;d&&(A+=d);h=null!=s.fn?s.fn.test(A,e,a,r,c):d!=s.def&&d!=c.skipOptionalPartCharacter||""==s.def?!1:{c:s.def,pos:a};if(!1!==h){l=void 0!=h.c?h.c:d;l=l==c.skipOptionalPartCharacter&&null===s.fn?s.def:l;A=a;void 0!=h.remove&&q(h.remove,h.remove+1);if(h.refreshFromBuffer){A=h.refreshFromBuffer;r=!0;J(!0===A?A:A.start,A.end);if(void 0==h.pos&&void 0==h.c)return h.pos=t(),!1;A=void 0!=h.pos?h.pos:a;if(A!=a)return h=f.extend(h,u(A,l,!0)),!1}else if(!0!== h&&void 0!=h.pos&&h.pos!=a&&(A=h.pos,J(a,A),A!=a))return h=f.extend(h,u(A,l,!0)),!1;if(!0!=h&&void 0==h.pos&&void 0==h.c)return!1;0=Q())return!1;h=p(a,d,r,b);if(!r&&!1===h)if((s=e.validPositions[a])&&null==s.match.fn&&(s.match.def==d||d==c.skipOptionalPartCharacter))h={caret:E(a)}; else if((c.insertMode||void 0==e.validPositions[E(a)])&&!P(a))for(var s=a+1,B=E(a);s<=B;s++)if(h=p(s,d,r,b),!1!==h){a=s;break}!0===h&&(h={pos:a});return h}function P(a){a=D(a);return null!=a.fn?a.fn:!1}function Q(){var a;M=n.prop("maxLength");-1==M&&(M=void 0);if(!1==c.greedy){var d;d=t();a=e.validPositions[d];var f=void 0!=a?a.locator.slice():void 0;for(d+=1;void 0==a||null!=a.match.fn||null==a.match.fn&&""!=a.match.def;d++)a=w(d,f,d-1),f=a.locator.slice();a=d}else a=g().length;return void 0==M|| a=d)return d;for(;++aa););return a}function W(a){if(0>=a)return 0;for(;0<--a&&!P(a););return a}function I(a,d,c){a._valueSet(d.join(""));void 0!=c&&x(a,c)}function U(a,d){d=d||D(a);return d.placeholder||(null==d.fn?d.def:c.placeholder.charAt(a%c.placeholder.length))}function R(a,d,r,b,p){b=void 0!=b?b.slice():ha(a._valueGet()).split("");y();d&&a._valueSet("");f.each(b,function(d,c){if(!0===p){var b=e.p,b=-1==b?b:W(b), g=-1==b?d:E(b);-1==f.inArray(c,l().slice(b+1,g))&&Z.call(a,void 0,!0,c.charCodeAt(0),!1,r,d)}else Z.call(a,void 0,!0,c.charCodeAt(0),!1,r,d),r=r||0e.p});d&&(d=c.onKeyPress.call(this,void 0,g(),0,c),X(a,d),I(a,g(),f(a).is(":focus")?E(t(0)):void 0))}function T(a){return f.inputmask.escapeRegex.call(this,a)}function ha(a){return a.replace(RegExp("("+T(l().join(""))+")*$"),"")}function ca(a){if(a.data("_inputmask")&&!a.hasClass("hasDatepicker")){var d=[],r=e.validPositions,b;for(b in r)r[b].match&& null!=r[b].match.fn&&d.push(r[b].input);d=(C?d.reverse():d).join("");r=(C?g().reverse():g()).join("");f.isFunction(c.onUnMask)&&(d=c.onUnMask.call(a,r,d,c));return d}return a[0]._valueGet()}function O(a){!C||"number"!=typeof a||c.greedy&&""==c.placeholder||(a=g().length-a);return a}function x(a,d,e){a=a.jquery&&0p;b--)if(B=h[b].match,(B.optionality||B.optionalQuantifier)&&d[b]==U(b,B))c--;else break;return a?{l:c,def:h[c]?h[c].match:void 0}:c}function aa(a){var d=g().slice(),c=$();d.length=c;I(a,d)}function S(a){if(f.isFunction(c.isComplete))return c.isComplete.call(n, a,c);if("*"!=c.repeat){var d=!1,e=$(!0),b=W(e.l);if(t()==b&&(void 0==e.def||e.def.newBlockMarker||e.def.optionalQuantifier))for(d=!0,e=0;e<=b;e++){var g=P(e);if(g&&(void 0==a[e]||a[e]==U(e))||!g&&a[e]!=U(e)){d=!1;break}}return d}}function oa(a){a=f._data(a).events;f.each(a,function(a,c){f.each(c,function(a,d){if("inputmask"==d.namespace&&"setvalue"!=d.type){var c=d.handler;d.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return c.apply(this,arguments)}}})})}function pa(a){function d(a){if(void 0== f.valHooks[a]||!0!=f.valHooks[a].inputmaskpatch){var d=f.valHooks[a]&&f.valHooks[a].get?f.valHooks[a].get:function(a){return a.value},c=f.valHooks[a]&&f.valHooks[a].set?f.valHooks[a].set:function(a,d){a.value=d;return a};f.valHooks[a]={get:function(a){var c=f(a);if(c.data("_inputmask")){if(c.data("_inputmask").opts.autoUnmask)return c.inputmask("unmaskedvalue");a=d(a);c=(c=c.data("_inputmask").maskset._buffer)?c.join(""):"";return a!=c?a:""}return d(a)},set:function(a,d){var e=f(a),b=e.data("_inputmask"); b?(b=c(a,f.isFunction(b.opts.onBeforeMask)?b.opts.onBeforeMask.call(z,d,b.opts):d),e.triggerHandler("setvalue.inputmask")):b=c(a,d);return b},inputmaskpatch:!0}}}function c(){var a=f(this),d=f(this).data("_inputmask");return d?d.opts.autoUnmask?a.inputmask("unmaskedvalue"):h.call(this)!=l().join("")?h.call(this):"":h.call(this)}function e(a){var d=f(this).data("_inputmask");d?(s.call(this,f.isFunction(d.opts.onBeforeMask)?d.opts.onBeforeMask.call(z,a,d.opts):a),f(this).triggerHandler("setvalue.inputmask")): s.call(this,a)}function b(a){f(a).bind("mouseenter.inputmask",function(a){a=f(this);this._valueGet()!=g().join("")&&a.trigger("setvalue")});if(a=f._data(a).events.mouseover){for(var d=a[a.length-1],c=a.length-1;0=b.end-b.begin?b.begin=W(b.begin):d==c.keyCode.DELETE&&b.begin==b.end&&b.end++; q(b.begin,b.end);d=t(b.begin);e.p=de.length&&(x(this,e.length),b=x(this));1!=g().length-e.length||e.charAt(b.begin)==g()[b.begin]||e.charAt(b.begin+1)==g()[b.begin]||P(b.begin)||(a.keyCode=c.keyCode.BACKSPACE,ea.call(this,a));a.preventDefault()}function sa(a){n=f(a);if(n.is(":input")&&"number"!=n.attr("type")){n.data("_inputmask",{maskset:e,opts:c,isRTL:!1});c.showTooltip&&n.prop("title",e.mask);("rtl"==a.dir||c.rightAlign)&&n.css("text-align", "right");if("rtl"==a.dir||c.numericInput){a.dir="ltr";n.removeAttr("dir");var b=n.data("_inputmask");b.isRTL=!0;n.data("_inputmask",b);C=!0}n.unbind(".inputmask");n.removeClass("focus-inputmask");n.closest("form").bind("submit",function(){K!=g().join("")&&n.change();c.autoUnmask&&c.removeMaskOnSubmit&&n.inputmask("remove")}).bind("reset",function(){setTimeout(function(){n.trigger("setvalue")},0)});n.bind("mouseenter.inputmask",function(){!f(this).hasClass("focus-inputmask")&&c.showMaskOnHover&&this._valueGet()!= g().join("")&&I(this,g())}).bind("blur.inputmask",function(){var a=f(this);if(a.data("_inputmask")){var b=this._valueGet(),d=g();a.removeClass("focus-inputmask");K!=g().join("")&&a.change();c.clearMaskOnLostFocus&&""!=b&&(b==l().join("")?this._valueSet(""):aa(this));!1===S(d)&&(a.trigger("incomplete"),c.clearIncomplete&&(y(),c.clearMaskOnLostFocus?this._valueSet(""):(d=l().slice(),I(this,d))))}}).bind("focus.inputmask",function(){var a=f(this),b=this._valueGet();c.showMaskOnFocus&&!a.hasClass("focus-inputmask")&& (!c.showMaskOnHover||c.showMaskOnHover&&""==b)&&this._valueGet()!=g().join("")&&I(this,g(),E(t()));a.addClass("focus-inputmask");K=g().join("")}).bind("mouseleave.inputmask",function(){var a=f(this);c.clearMaskOnLostFocus&&(a.hasClass("focus-inputmask")||this._valueGet()==a.attr("placeholder")||(this._valueGet()==l().join("")||""==this._valueGet()?this._valueSet(""):aa(this)))}).bind("click.inputmask",function(){var a=this;f(a).is(":focus")&&setTimeout(function(){var b=x(a);if(b.begin==b.end){var b= C?O(b.begin):b.begin,c=t(b),c=E(c);b