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