/* 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.2.28 */ (function(f){void 0==f.fn.inputmask&&(f.inputmask={defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},escapeChar:"\\",mask:null,oncomplete:f.noop,onincomplete:f.noop,oncleared:f.noop,repeat:0,greedy:!0,autoUnmask:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,aliases:{},onKeyUp:f.noop,onKeyDown:f.noop,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:f.noop,skipOptionalPartCharacter:" ",showTooltip:!1,numericInput:!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:[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(a,f,d){var e=a.length;!f&&1=h?e[h-1]:[],l=k.validator,k=k.cardinality;t.push({fn:l?"string"==typeof l?RegExp(l):new function(){this.test=l}:/./,cardinality:k?k:1,optionality:b,newBlockMarker:!0==b?c:!1,offset:0,casing:f.casing,def:f.definitionSymbol|a});!0==b&&(c=!1)}t.push({fn:f.validator? "string"==typeof f.validator?RegExp(f.validator):new function(){this.test=f.validator}:/./,cardinality:f.cardinality,optionality:b,newBlockMarker:c,offset:0,casing:f.casing,def:f.definitionSymbol|a})}else t.push({fn:null,cardinality:0,optionality:b,newBlockMarker:c,offset:0,casing:null,def:a}),d=!1;c=!1;return t}})}function y(){function a(b){var d=b.length;for(i=0;it;l--)j+=E(h,f-(l-1));b&&(j+=b);return null!=c.tests[f].fn?c.tests[f].fn.test(j,h,a,d,g):!1}if(d){var j=e(a,h());!0===j&&(j={pos:a});return j}var k=[],j=!1,p=r;f.each(x,function(d){r=d;if(p!=r&&!z(a)){if(b==this._buffer[a]|| b==g.skipOptionalPartCharacter)return k.push({activeMasksetIndex:d,result:{refresh:!0}}),this.lastValidPosition=a,!1;this.lastValidPosition=c?l()+1:-1}if((void 0==this.lastValidPosition&&a==(c?A(l()):u(-1))||c||g.numericInput?this.lastValidPosition<=g.numericInput?l():u(a):this.lastValidPosition>=A(a))&&0<=a&&af:f==m().length-1:this.lastValidPositiond.lastValidPosition))d.activeMasksetIndex=b,d.lastValidPosition=this.lastValidPosition});r=d.activeMasksetIndex;b!=r&&(a?K(m(),0,A(d.lastValidPosition)):K(m(),u(d.lastValidPosition), l()),h().writeOutBuffer=!0)}function z(a){a=v(a);a=B()[a];return void 0!=a?a.fn:!1}function v(a){return a%B().length}function C(a){return g.placeholder.charAt(a%g.placeholder.length)}function l(){return g.getMaskLength(p(),h().greedy,h().repeat,m(),g)}function u(a){var b=l();if(a>=b)return b;for(;++a=a)return 0;for(;0<--a&&!z(a););return a}function I(a,b,d,c,f){c&&(b=T(a,b,f));c=B()[v(b)];f=d;if(void 0!=f)switch(c.casing){case "upper":f=d.toUpperCase();break; case "lower":f=d.toLowerCase()}a[b]=f}function E(a,b,d){d&&(b=T(a,b));return a[b]}function T(a,b,d){if(d)for(;0>b&&a.length=d&&e.lastValidPosition==f){for(var j=!0,g=0;g<=f;g++){var h=z(g),k=v(g);if(h&&(void 0==a[g]||a[g]==C(g))||!h&&a[g]!=p()[k]){j=!1;break}}if(b=b|| j)return!1}d=e.lastValidPosition});r=c;return b}function N(a){function b(a){a=f._data(a).events;f.each(a,function(a,b){f.each(b,function(a,b){if("inputmask"==b.namespace){var d=b.handler;b.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return d.apply(this,arguments)}}})})}function c(a){var b;Object.getOwnPropertyDescriptor&&(b=Object.getOwnPropertyDescriptor(a,"value"));if(b&&b.get)a._valueGet||(a._valueGet=b.get,a._valueSet=b.set,Object.defineProperty(a,"value",{get:function(){var a= f(this),b=f(this).data("inputmask"),d=b.masksets,c=b.activeMasksetIndex;return b&&b.opts.autoUnmask?a.inputmask("unmaskedvalue"):this._valueGet()!=d[c]._buffer.join("")?this._valueGet():""},set:function(a){this._valueSet(a);f(this).triggerHandler("setvalue.inputmask")}}));else if(document.__lookupGetter__&&a.__lookupGetter__("value"))a._valueGet||(a._valueGet=a.__lookupGetter__("value"),a._valueSet=a.__lookupSetter__("value"),a.__defineGetter__("value",function(){var a=f(this),b=f(this).data("inputmask"), d=b.masksets,c=b.activeMasksetIndex;return b&&b.opts.autoUnmask?a.inputmask("unmaskedvalue"):this._valueGet()!=d[c]._buffer.join("")?this._valueGet():""}),a.__defineSetter__("value",function(a){this._valueSet(a);f(this).triggerHandler("setvalue.inputmask")}));else if(a._valueGet||(a._valueGet=function(){return this.value},a._valueSet=function(a){this.value=a}),!0!=f.fn.val.inputmaskpatch)f.fn.val=function(){if(arguments.length==0){var a=f(this);if(a.data("inputmask")){if(a.data("inputmask").opts.autoUnmask)return a.inputmask("unmaskedvalue"); var a=f.inputmask.val.apply(a),b=f(this).data("inputmask");return a!=b.masksets[b.activeMasksetIndex]._buffer.join("")?a:""}return f.inputmask.val.apply(a)}var d=arguments;return this.each(function(){var a=f(this),b=f.inputmask.val.apply(a,d);a.data("inputmask")&&a.triggerHandler("setvalue.inputmask");return b})},f.extend(f.fn.val,{inputmaskpatch:!0})}function j(a,b){if(g.numericInput&&""!=g.radixPoint&&!1===g.skipRadixDance){var d=a._valueGet().indexOf(g.radixPoint);n=b.begin<=d||b.end<=d||-1==d}} function k(a,b,d){for(var c=m();!z(a)&&0<=a-1;)a--;for(var e=a;eb:eb:h().lastValidPositionb){if(e-=1,g.numericInput&&""!=g.radixPoint&&a[e]==g.radixPoint?(e=y(0,a.length-1==e?e:e-1,C(e),!0),e++):n?(e=y(0,e,C(e),!0),e=a[e+1]==g.radixPoint?e+1:u(e)):e=k(e,f),void 0!=h().lastValidPosition)-1!=h().lastValidPosition&&m()[h().lastValidPosition]==p()[h().lastValidPosition]&&(h().lastValidPosition=n?u(h().lastValidPosition):0==h().lastValidPosition?-1:A(h().lastValidPosition)),(n?h().lastValidPosition>b:h().lastValidPosition1||D.end-D.begin==1&&g.insertMode){a=D.end=s;)c=c==0?-1:A(c);c>=s?y(s,e.length,o):h().writeOutBuffer=false}else I(e,s,o,true,n);h().p=u(s)}}),!0!==t&&S(n),!1!== j&&(f.each(c,function(a,b){if(b.activeMasksetIndex==r){v=b;return false}}),void 0!=v&&(setTimeout(function(){g.onKeyValidation.call(this,v.result,g)},0),h().writeOutBuffer&&!1!==v.result?(s=h().p,B=m(),H(this,B,b?void 0:s),setTimeout(function(){M(B)&&q.trigger("complete")},0)):h().buffer=h().undoBuffer.split("")));Q&&!0!==b&&w(this,d,e);g.showTooltip&&q.prop("title",h().mask);a.preventDefault()}}function q(a){var b=f(this),c=a.keyCode,d=m();g.onKeyUp.call(this,a,d,g);c==g.keyCode.TAB&&(b.hasClass("focus.inputmask")&& 0==this._valueGet().length&&g.showMaskOnFocus)&&(d=p().slice(),H(this,d),n||w(this,0),h().undoBuffer=this._valueGet())}var o=f(a);if(o.is(":input")){g.showTooltip&&o.prop("title",h().mask);h().greedy=h().greedy?h().greedy:0==h().repeat;var G=o.prop("maxLength");l()>G&&-1b&&(F(d,c[d],true,n)!==false||!z(d))?d:b)}else{b=u(e==void 0?-1:e);w(a,d=parseInt(RegExp(/[0-9]+/).exec(Z))}var x,r=0;if("string"==typeof a)switch(a){case "mask":return b(g.alias, c),x=y(),this.each(function(){N(this)});case "unmaskedvalue":return x=this.data("inputmask").masksets,r=this.data("inputmask").activeMasksetIndex,g=this.data("inputmask").opts,L(this);case "remove":return this.each(function(){var a=f(this),b=this;setTimeout(function(){if(a.data("inputmask")){x=a.data("inputmask").masksets;r=a.data("inputmask").activeMasksetIndex;g=a.data("inputmask").opts;b._valueSet(L(a,!0));a.removeData("inputmask");a.unbind(".inputmask");a.removeClass("focus.inputmask");var c; Object.getOwnPropertyDescriptor&&(c=Object.getOwnPropertyDescriptor(b,"value"));c&&c.get?b._valueGet&&Object.defineProperty(b,"value",{get:b._valueGet,set:b._valueSet}):document.__lookupGetter__&&b.__lookupGetter__("value")&&b._valueGet&&(b.__defineGetter__("value",b._valueGet),b.__defineSetter__("value",b._valueSet));delete b._valueGet;delete b._valueSet}},0)});case "getemptymask":return this.data("inputmask")?(x=this.data("inputmask").masksets,r=this.data("inputmask").activeMasksetIndex,x[r]._buffer.join("")): "";case "hasMaskedValue":return this.data("inputmask")?!this.data("inputmask").opts.autoUnmask:!1;case "isComplete":return x=this.data("inputmask").masksets,r=this.data("inputmask").activeMasksetIndex,g=this.data("inputmask").opts,M(this[0]._valueGet().split(""));default:return b(a,c)||(g.mask=a),x=y(),this.each(function(){N(this)})}else{if("object"==typeof a)return g=f.extend(!0,{},f.inputmask.defaults,a),b(g.alias,a),x=y(),this.each(function(){N(this)});if(void 0==a)return this.each(function(){var a= f(this).attr("data-inputmask");if(a&&""!=a)try{var a=a.replace(RegExp("'","g"),'"'),c=f.parseJSON("{"+a+"}");g=f.extend(!0,{},f.inputmask.defaults,c);b(g.alias,c);g.alias=void 0;f(this).inputmask(g)}catch(d){}})}return this})})(jQuery); (function(f){f.extend(f.inputmask.defaults.definitions,{A:{validator:"[A-Za-z]",cardinality:1,casing:"upper"},"#":{validator:"[A-Za-z\u0410-\u044f\u0401\u04510-9]",cardinality:1,casing:"upper"}});f.extend(f.inputmask.defaults.aliases,{url:{mask:"ir",placeholder:"",separator:"",defaultPrefix:"http://",regex:{urlpre1:/[fh]/,urlpre2:/(ft|ht)/,urlpre3:/(ftp|htt)/,urlpre4:/(ftp:|http|ftps)/,urlpre5:/(ftp:\/|ftps:|http:|https)/,urlpre6:/(ftp:\/\/|ftps:\/|http:\/|https:)/,urlpre7:/(ftp:\/\/|ftps:\/\/|http:\/\/|https:\/)/, urlpre8:/(ftp:\/\/|ftps:\/\/|http:\/\/|https:\/\/)/},definitions:{i:{validator:function(){return!0},cardinality:8,prevalidator:function(){for(var a=[],c=0;8>c;c++)a[c]=function(){var a=c;return{validator:function(c,b,f,k,y){if(y.regex["urlpre"+(a+1)]){var h=c;0d?a:ca?(c[d]=a.toString(), c[d-1]="0"):(c[d]=a.toString().charAt(1),c[d-1]=a.toString().charAt(0)),{pos:d,c:c[d]}):f},cardinality:2,prevalidator:[{validator:function(a,c,d,e,b){var f=b.regex.hrspre.test(a);return!e&&!f&&(f=b.regex.hrs.test("0"+a))?(c[d]="0",d++,{pos:d}):f},cardinality:1}]},t:{validator:function(a,c,d,e,b){var f=b.regex.ampm.test(a);return!e&&!f&&(f=b.regex.ampm.test(a+"m"))?(c[d-1]=a.charAt(0),c[d]="m",d++,d):f},casing:"lower",cardinality:2,prevalidator:[{validator:function(a,c,d,e,b){if(e=b.regex.ampmpre.test(a))if(e= b.regex.ampm.test(a+"m"))return c[d]=a,c[d+1]="m",d;return e},cardinality:1}]}},insertMode:!1,autoUnmask:!1},datetime12:{mask:"1/2/y h:s t",placeholder:"dd/mm/yyyy hh:mm xm",alias:"datetime",hourFormat:"12"},"hh:mm t":{mask:"h:s t",placeholder:"hh:mm xm",alias:"datetime",hourFormat:"12"},"h:s t":{mask:"h:s t",placeholder:"hh:mm xm",alias:"datetime",hourFormat:"12"},"hh:mm:ss":{mask:"h:s:s",autoUnmask:!1},"hh:mm":{mask:"h:s",autoUnmask:!1},date:{alias:"dd/mm/yyyy"}})})(jQuery); (function(f){f.extend(f.inputmask.defaults.aliases,{decimal:{mask:"~",placeholder:"",repeat:10,greedy:!1,numericInput:!0,digits:"*",groupSeparator:"",radixPoint:".",groupSize:3,autoGroup:!1,allowPlus:!0,allowMinus:!0,getMaskLength:function(a,c,d,e,b){var j=a.length;!c&&1=d&&"0"===c[0]&&/[\d-]/.test(a))return c[0]="",{pos:0};var j=e?c.slice(0,d):c.slice();j.splice(d+1,0,a);j=j.join("");if(b.autoGroup&&!e)var k=f.inputmask.escapeRegex.call(this, b.groupSeparator),j=j.replace(RegExp(k,"g"),"");k=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits,b.allowPlus,b.allowMinus).test(j);if(!k&&(j+="0",k=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits,b.allowPlus,b.allowMinus).test(j),!k)){k=j.lastIndexOf(b.groupSeparator);for(i=j.length-k;3>=i;i++)j+="0";k=b.regex.number(b.groupSeparator,b.groupSize,b.radixPoint,b.digits,b.allowPlus,b.allowMinus).test(j);if(!k&&!e&&a==b.radixPoint&&(k=b.regex.number(b.groupSeparator, b.groupSize,b.radixPoint,b.digits,b.allowPlus,b.allowMinus).test("0"+j+"0")))return c[d]="0",d++,{pos:d}}return!1!=k&&!e&&a!=b.radixPoint?{pos:b.postFormat(c,d+1,!1,b)}:k},cardinality:1,prevalidator:null}},insertMode:!0,autoUnmask:!1},integer:{regex:{number:function(a,c,d,e,b,j){a=f.inputmask.escapeRegex.call(this,a);return RegExp("^"+("["+(b?"+":"")+(j?"-":"")+"]?")+"(\\d+|\\d{1,"+c+"}(("+a+"\\d{"+c+"})?)+)$")}},alias:"decimal"}})})(jQuery); (function(f){f.extend(f.inputmask.defaults.aliases,{Regex:{mask:"r",greedy:!1,repeat:10,regex:null,regexSplit:null,definitions:{r:{validator:function(a,c,d,e,b){null==b.regexSplit&&(b.regexSplit=b.regex.match(RegExp("\\[.*?]\\*","g")));var f=c.slice(),c="",e=!1;f.splice(d,0,a);a=f.join("");for(d=0;d