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