

//Product: Input Mask
//Company: Assisted Solutions, Inc.
//Website: http://www.assistedsolutions.com
//Programmer: Paul C. Waldschmidt

//This component has been copyrighted by Assisted Solutions, Inc.  It is not to be altered 
//or distributed, except as part of an application.  This product requires a license 
//all usage.  Visit http://www.assistedsolutions.com/store for more information.

var $a;function ASI_InputMask_OnInput(event,$b){ASI_InputMask_ValidateContent($b);ASI_InputMask_PutCaretPos($b,ASI_InputMask_GetSelectionStart($b));};function ASI_InputMask_ValidateContent($b){var $c="";var $d=$b.value;var $e=$b.getAttribute("mask");var $f=$b.getAttribute("maskAlpha");var $g=$b.getAttribute("maskNumeric");var $h=$b.getAttribute("maskAlphaNumeric");var $i=$b.getAttribute("maskDisplay");for(i=0;i<$e.length;i++){if($e.substring(i,(i+1))==$f){while($d.length>0&&(!(($d.substring(0,1).charCodeAt(0)>=65&&$d.substring(0,1).charCodeAt(0)<=90)||($d.substring(0,1).charCodeAt(0)>=97&&$d.substring(0,1).charCodeAt(0)<=122)))){$d=$d.substring(1);};if($d.length>0){$c+=$d.substring(0,1);$d=$d.substring(1);}else{$c+=$i;}}else if($e.substring(i,(i+1))==$g){while($d.length>0&&(!($d.substring(0,1).charCodeAt(0)>=48&&$d.substring(0,1).charCodeAt(0)<=57))){$d=$d.substring(1);};if($d.length>0){$c+=$d.substring(0,1);$d=$d.substring(1);}else{$c+=$i;}}else if($e.substring(i,(i+1))==$h){while($d.length>0&&(!(($d.substring(0,1).charCodeAt(0)>=65&&$d.substring(0,1).charCodeAt(0)<=90)||($d.substring(0,1).charCodeAt(0)>=97&&$d.substring(0,1).charCodeAt(0)<=122)||($d.substring(0,1).charCodeAt(0)>=48&&$d.substring(0,1).charCodeAt(0)<=57)))){$d=$d.substring(1);};if($d.length>0){$c+=$d.substring(0,1);$d=$d.substring(1);}else{$c+=$i;}}else{$c+=$e.substring(i,(i+1));}};$b.value=$c;};function ASI_InputMask_ValidatePos($j,$b){if($b==null){$b=$a;};ASI_InputMask_PutCaretPos($b,$j);};function ASI_InputMask_OnPaste($b){var $d=window.clipboardData.getData("Text");var $j=ASI_InputMask_PlaceInMask($b,$d);$a=$b;window.setTimeout("ASI_InputMask_ValidatePos("+$j+")",10);ASI_InputMask_StopEvent(event);};function ASI_InputMask_OnCut($b){var $k=ASI_InputMask_GetSelectionStart($b);var $l=ASI_InputMask_GetSelectionEnd($b);if($k+$l==$b.value.length){window.clipboardData.setData("Text",$b.value);$b.value="";ASI_InputMask_GotFocus($b);}else{var $i=$b.getAttribute("maskDisplay");window.clipboardData.setData("Text",$b.value.substring($k,($k+1)));ASI_InputMask_UpdateChar($b,$k,$i);ASI_InputMask_PutCaretPos($b,$k);};ASI_InputMask_StopEvent(event);};function ASI_InputMask_PlaceInMask($b,$d){var $c="";if($d.length>0){var $e=$b.getAttribute("mask");var $f=$b.getAttribute("maskAlpha");var $g=$b.getAttribute("maskNumeric");var $h=$b.getAttribute("maskAlphaNumeric");var $i=$b.getAttribute("maskDisplay");var $m=ASI_InputMask_GetSelectionStart($b);$c+=$b.value.substring(0,$m);for(i=$m;i<$e.length;i++){if($e.substring(i,(i+1))==$f){while($d.length>0&&(!(($d.substring(0,1).charCodeAt(0)>=65&&$d.substring(0,1).charCodeAt(0)<=90)||($d.substring(0,1).charCodeAt(0)>=97&&$d.substring(0,1).charCodeAt(0)<=122)))){$d=$d.substring(1);};if($d.length>0){$c+=$d.substring(0,1);$d=$d.substring(1);}else{break;}}else if($e.substring(i,(i+1))==$g){while($d.length>0&&(!($d.substring(0,1).charCodeAt(0)>=48&&$d.substring(0,1).charCodeAt(0)<=57))){$d=$d.substring(1);};if($d.length>0){$c+=$d.substring(0,1);$d=$d.substring(1);}else{break;}}else if($e.substring(i,(i+1))==$h){while($d.length>0&&(!(($d.substring(0,1).charCodeAt(0)>=65&&$d.substring(0,1).charCodeAt(0)<=90)||($d.substring(0,1).charCodeAt(0)>=97&&$d.substring(0,1).charCodeAt(0)<=122)||($d.substring(0,1).charCodeAt(0)>=48&&$d.substring(0,1).charCodeAt(0)<=57)))){$d=$d.substring(1);};if($d.length>0){$c+=$d.substring(0,1);$d=$d.substring(1);}else{break;}}else{$c+=$e.substring(i,(i+1));}};$c+=$b.value.substring(i,$e.length);};$b.value=$c;return i;};function ASI_InputMask_LostFocus($b){var $e=$b.getAttribute("mask");if($e!=null&&$b.value==ASI_InputMask_GetDisplayMask($b,true)){$b.value="";}else{if($b.value!=null&&$b.value.length>0){var $n=$b.getAttribute("RegexPattern");var $o=$b.getAttribute("OnRegexMatch");var $p=$b.getAttribute("OnRegexNoMatch");if($n!=null&&$n.length>0){var re=new RegExp($n);if($b.value.match(re)){if($o!=null&&$o.length>0){eval($o);}}else{if($p!=null&&$p.length>0){eval($p);}}}}}};function ASI_InputMask_KeyDown(event,$b){var $e=$b.getAttribute("mask");if($e!=null&&$e.length>0){var k=ASI_InputMask_GetKeyCode(event);if(k==8||(k>=33&&k<=40)||k==46){switch(k){case 8:ASI_InputMask_KeyBackspace($b);break;case 33:ASI_InputMask_PushPosBegin($b);break;case 34:ASI_InputMask_PushPosEnd($b);break;case 35:ASI_InputMask_PushPosEnd($b);break;case 36:ASI_InputMask_PushPosBegin($b);break;case 37:ASI_InputMask_PushPosLeft($b);break;case 38:ASI_InputMask_PushPosLeft($b);break;case 39:ASI_InputMask_PushPosRight($b);break;case 40:ASI_InputMask_PushPosRight($b);break;case 46:ASI_InputMask_KeyDelete($b);break;};ASI_InputMask_StopEvent(event);}}};function ASI_InputMask_KeyPress(event,$b){var $e=$b.getAttribute("mask");if($e!=null&&$e.length>0){var kc=ASI_InputMask_GetKeyCode(event);var ss=ASI_InputMask_GetSelectionStart($b);if(kc!=9){if(ASI_InputMask_KeyIsValid($b,ss,kc)){var ks=String.fromCharCode(kc);ASI_InputMask_UpdateChar($b,ss,ks);ASI_InputMask_PutCaretPos($b,ss+1);}else{var $q=$b.getAttribute("OnWrongKeyPressed");if($q!=null&&$q.length>0){eval($q);}};ASI_InputMask_StopEvent(event);}}};function ASI_InputMask_StopEvent(event){if(document.all){event.returnValue=false;}else if(event.preventDefault){event.preventDefault();}};function ASI_InputMask_StopEventPropagation(event){event.cancelBubble=true;if(event.stopPropagation){event.stopPropagation();}};function ASI_InputMask_GotFocus($b){var $e=$b.getAttribute("mask");if($e!=null&&$e.length>0){var $r=ASI_InputMask_GetSelectionStart($b);var $j=ASI_InputMask_GetValidPos($b,$r);if($j!=-1){if($b.value==null||$b.value.length==0){$b.value=ASI_InputMask_GetDisplayMask($b,true);};ASI_InputMask_PutCaretPos($b,$j);}else{$b.blur();}}};function ASI_InputMask_OnClick(event,$b){var $e=$b.getAttribute("mask");if($e!=null&&$e.length>0){var $s=ASI_InputMask_GetSelectionStart($b);ASI_InputMask_PutCaretPos($b,$s);};ASI_InputMask_StopEventPropagation(event);};function ASI_InputMask_GetKeyCode(event){return(event.keyCode?event.keyCode:event.which?event.which:event.charCode);};function ASI_InputMask_KeyDelete($b){var $k=ASI_InputMask_GetSelectionStart($b);var $l=ASI_InputMask_GetSelectionEnd($b);if($k==0&&$l==$b.value.length){$b.value="";ASI_InputMask_GotFocus($b);}else{var $i=$b.getAttribute("maskDisplay");ASI_InputMask_UpdateChar($b,$k,$i);ASI_InputMask_PutCaretPos($b,$k+1);}};function ASI_InputMask_KeyBackspace($b){var $k=ASI_InputMask_GetSelectionStart($b);var $l=ASI_InputMask_GetSelectionEnd($b);if($k==0&&$l==$b.value.length){$b.value="";ASI_InputMask_GotFocus($b);}else{var $i=$b.getAttribute("maskDisplay");ASI_InputMask_UpdateChar($b,$k,$i);$j=ASI_InputMask_GetValidPos($b,$k-1,true);ASI_InputMask_PutCaretPos($b,$j);}};function ASI_InputMask_PushPosLeft($b){var k=ASI_InputMask_GetSelectionStart($b);if((k-1)>=0){ASI_InputMask_PutCaretPos($b,(k-1),true);}};function ASI_InputMask_PushPosRight($b){var k=ASI_InputMask_GetSelectionStart($b);if((k+1)<$b.value.length){ASI_InputMask_PutCaretPos($b,(k+1));}};function ASI_InputMask_PushPosBegin($b){ASI_InputMask_PutCaretPos($b,0);};function ASI_InputMask_PushPosEnd($b){ASI_InputMask_PutCaretPos($b,$b.getAttribute("mask").length);};function ASI_InputMask_UpdateChar($b,$j,ks){var x=$b.value;var $t=x.substring(0,$j);var $u=x.substring($j+1,x.length);$b.value=$t+ks+$u;};function ASI_InputMask_PutCaretPos($b,$j,$v){if($j<=0){$j=0;};if($j>=$b.value.length-1){$j=$b.value.length-1};$j=ASI_InputMask_GetValidPos($b,$j,$v);if($j!=-1){if($b.createTextRange){var $w=$b.createTextRange();$w.moveStart("character",$j);$w.moveEnd('character',$j+1-$b.value.length);$w.select();}else if($b.setSelectionRange){$b.focus();$b.setSelectionRange($j,$j+1);}}else{$b.blur();}};function ASI_InputMask_GetValidPos($b,$j,$v){if($v==null){$v=false;};if(ASI_InputMask_PosIsValid($b,$j)){return $j;}else{var $e=$b.getAttribute("mask");if($v){while($j>=0){if(ASI_InputMask_PosIsValid($b,$j)){return $j;};$j--;};while($j<$e.length-1){if(ASI_InputMask_PosIsValid($b,$j)){return $j;};$j++;}}else{while($j<$e.length-1){if(ASI_InputMask_PosIsValid($b,$j)){return $j;};$j++;};while($j>=0){if(ASI_InputMask_PosIsValid($b,$j)){return $j;};$j--;}};return -1;}};function ASI_InputMask_PosIsValid($b,$j){var $e=$b.getAttribute("mask");var m=$e.split("");if(m.length>$j){if(m[$j]!=null){var $f=$b.getAttribute("maskAlpha");var $g=$b.getAttribute("maskNumeric");var $h=$b.getAttribute("maskAlphaNumeric");if(m[$j]==$f||m[$j]==$g||m[$j]==$h){return true;}else{return false;}}else{return false;}}else{return false;}};function ASI_InputMask_KeyIsValid($b,$j,$x){var m=$b.getAttribute("mask").split("");if(m.length>$j){var $y=m[$j];var $z=$b.getAttribute("maskAlpha");var $A=$b.getAttribute("maskNumeric");var $B=$b.getAttribute("maskAlphaNumeric");if($y==$z){if(($x>=65&&$x<=90)||($x>=97&&$x<=122)){return true;}else{return false;}}else if($y==$A){if($x>=48&&$x<=57){return true;}else{return false;}}else if($y==$B){if(($x>=48&&$x<=57)||($x>=65&&$x<=90)||($x>=97&&$x<=122)){return true;}else{return false;}}else{return false;}}else{return false;}};function ASI_InputMask_GetSelectionStart($b){if($b.createTextRange){$C=document.selection.createRange().duplicate();$C.moveEnd("character",$b.value.length);$j=$b.value.lastIndexOf($C.text);if($C.text=="")$j=$b.value.length;return $j;}else{return $b.selectionStart;}};function ASI_InputMask_GetSelectionEnd($b){if($b.createTextRange){$C=document.selection.createRange().duplicate();$C.moveStart("character",-$b.value.length);$j=$C.text.length;return $j;}else{return $b.selectionEnd;}};function ASI_InputMask_GetDisplayMask($b,$D){var $e=$b.getAttribute("mask");if($D==true){var f="";var $f=$b.getAttribute("maskAlpha");var $g=$b.getAttribute("maskNumeric");var $h=$b.getAttribute("maskAlphaNumeric");var $i=$b.getAttribute("maskDisplay");var m=$e.split("");for(mi=0;mi<m.length;mi++){if(m[mi]==$f||m[mi]==$g||m[mi]==$h){f+=$i;}else{f+=m[mi];}};return f;}else{return $e;}}



