/*---------------------------New Phone Validation Start ------------------------------*/
function formatNumber(phonName)
{

var valueStr = document.getElementById(phonName).value;

var valueLen = valueStr.length;

if(valueLen==0){document.getElementById(phonName).value="(";}
if(valueLen>3 && valueLen<5){if(event.keyCode==8){try{document.getElementById(phonName).value=document.getElementById(phonName).value.remove(valueLen-1,1);}catch(err){}}else{document.getElementById(phonName).value=document.getElementById(phonName).value+") ";}}
if(valueLen>8 && valueLen<10){if(event.keyCode==8){try{document.getElementById(phonName).value=document.getElementById(phonName).value.remove(valueLen-1,1);}catch(err){}}else{document.getElementById(phonName).value=document.getElementById(phonName).value+"-";}}
}

/*---------------------------New Phone Validation End ------------------------------*/
function showDiv( id ) { 
	
   //if(document.all.textBox01.style.visibility == 'visible') document.all.textBox01.style.visibility = 'hidden'; 
   //if(document.all.textBox02.style.visibility == 'visible') document.all.textBox02.style.visibility = 'hidden'; 
	if(document.all.textBox03.style.visibility == 'visible') 
		{
			document.all.textBox03.style.visibility = 'hidden'; 
			document.all.dropDown.style.visibility = 'hidden'; 
		}
	
    document.all.textBox01.value = ''; 
    document.all.textBox02.value = ''; 
	document.all.textBox03.value = ''; 
	
	if(id == 'textBox03')
		{
			
    		document.all[ id ].style.visibility = 'visible'; 
			document.all.dropDown.style.visibility = 'visible'; 
		    document.all[ id ].focus(); 
		}
}
  
var dFilterStep

function dFilterStrip (dFilterTemp, dFilterMask)
{
    dFilterMask = replace(dFilterMask,'#','');
    for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
		{
		    dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
		}
		return dFilterTemp;
}

function dFilterMax (dFilterMask)
{
 		dFilterTemp = dFilterMask;
    for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
		{
		 		if (dFilterMask.charAt(dFilterStep)!='#')
				{
		        dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
				}
		}
		return dFilterTemp.length;
}

function dFilter (key, textbox, dFilterMask)
{
		dFilterNum = dFilterStrip(textbox.value, dFilterMask);
		
		if (key==9)
		{
		    return true;
		}
		else if (key==8&&dFilterNum.length!=0)
		{
		 	 	dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
		}
 	  else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
		{
        dFilterNum=dFilterNum+String.fromCharCode(key);
		}

		var dFilterFinal='';
    for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
		{
        if (dFilterMask.charAt(dFilterStep)=='#')
				{
					  if (dFilterNum.length!=0)
					  {
				        dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
					      dFilterNum = dFilterNum.substring(1,dFilterNum.length);
					  }
				    else
				    {
				        dFilterFinal = dFilterFinal + "";
				    }
				}
		 		else if (dFilterMask.charAt(dFilterStep)!='#')
				{
				    dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep); 			
				}
//		    dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
		}


		textbox.value = dFilterFinal;
    return false;
}

function replace(fullString,text,by) {
// Replaces text with by in string
    var strLength = fullString.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return fullString;

    var i = fullString.indexOf(text);
    if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
    if (i == -1) return fullString;

    var newstr = fullString.substring(0,i) + by;

    if (i+txtLength < strLength)
        newstr += replace(fullString.substring(i+txtLength,strLength),text,by);

    return newstr;
}

/*----------------------------PHONE VALIDATION -------------------------------------------*/
var zChar = new Array(' ', '(', ')', '-', '.');
var maxphonelength = 13;
var phonevalue1;
var phonevalue2;
var cursorposition;

function ParseForNumber1(object){phonevalue1 = ParseChar(object.value, zChar);}
function ParseForNumber2(object){phonevalue2 = ParseChar(object.value, zChar);}

function backspacerUP(object,e) 
	{ 
		if(e)		{e = e					} else {e = window.event		} 
		if(e.which)	{var keycode = e.which 	} else {var keycode = e.keyCode	}
		ParseForNumber1(object)
		if(keycode >= 48){ValidatePhone(object)}
	}

function backspacerDOWN(object,e) 
	{ 
		if(e){ e = e } else {e = window.event } 
		if(e.which){ var keycode = e.which } else {var keycode = e.keyCode }
		ParseForNumber2(object)
	} 

function GetCursorPosition()
	{
		var t1 = phonevalue1;var t2 = phonevalue2;var bool = false;
		for (i=0; i<t1.length; i++)
			{
				if (t1.substring(i,1) != t2.substring(i,1)) 
					{
						if(!bool) {cursorposition=i;bool=true}
					}
			}
	}

function ValidatePhone(object)
	{
		var p = phonevalue1;
		p = p.replace(/[^\d]*/gi,"");
		if (p.length < 3){object.value=p} 
		else if(p.length==3)
		{
			pp=p;d4=p.indexOf('(');d5=p.indexOf(')');if(d4==-1){pp="("+pp;}if(d5==-1){pp=pp+")";}object.value = pp;
		} 
		else if(p.length>3 && p.length < 7)
		{
			p ="(" + p;l30=p.length;p30=p.substring(0,4);p30=p30+")";p31=p.substring(4,l30);pp=p30+p31;object.value = pp; 
		}
		else if(p.length >= 7)
		{
			p ="(" + p; l30=p.length;p30=p.substring(0,4);p30=p30+")";p31=p.substring(4,l30);pp=p30+p31;l40 = pp.length;p40 = pp.substring(0,8);p40 = p40 + "-";
			p41 = pp.substring(8,l40);ppp = p40 + p41;object.value = ppp.substring(0, maxphonelength);
		}

		GetCursorPosition()

		if(cursorposition >= 0)
			{
			if (cursorposition == 0){cursorposition = 2}
			else if (cursorposition <= 2) {cursorposition = cursorposition + 1} 
			else if (cursorposition <= 5) {cursorposition = cursorposition + 2}
			else if (cursorposition == 6) {cursorposition = cursorposition + 2}
			else if (cursorposition == 7) 
				{
					cursorposition = cursorposition + 4;
					e1=object.value.indexOf(')')
					e2=object.value.indexOf('-')
					if (e1>-1 && e2>-1)
						{
							if (e2-e1 == 4) {cursorposition = cursorposition - 1}
						}
				} 
			else if (cursorposition < 11) {cursorposition = cursorposition + 3}
			else if (cursorposition == 11) {cursorposition = cursorposition + 1}
			else if (cursorposition >= 12) {cursorposition = cursorposition}

			var txtRange = object.createTextRange();
			txtRange.moveStart( "character", cursorposition);
			txtRange.moveEnd( "character", cursorposition - object.value.length);
			txtRange.select();
			}

	}

function ParseChar(sStr, sChar)
	{
		if (sChar.length == null) 
			{
				zChar = new Array(sChar);
			}
		else zChar = sChar;

		for (i=0; i<zChar.length; i++)
			{
				sNewStr = "";var iStart = 0;var iEnd = sStr.indexOf(sChar[i]);
				while (iEnd != -1)
					{
						sNewStr += sStr.substring(iStart, iEnd);iStart = iEnd + 1;iEnd = sStr.indexOf(sChar[i], iStart);
					}
				sNewStr += sStr.substring(sStr.lastIndexOf(sChar[i]) + 1, sStr.length);
				sStr = sNewStr;
			}
		return sNewStr;
	}
/*----------------------------PHONE VALIDATION -------------------------------------------*/
