var isNS4 = (navigator.appName=="Netscape")?1:0;
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
var browserName=navigator.appName; 

var currimg = 6;

function autoTab(input,len, e)
        {
        var keyCode = (isNN) ? e.which : e.keyCode;
        var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
        if(input.value.length >= len && !containsElement(filter,keyCode))
                {
                input.value = input.value.slice(0, len);
                input.form[(getIndex(input)+1) % input.form.length].focus();
                }

        function containsElement(arr, ele)
                {
                var found = false, index = 0;
                while(!found && index < arr.length)
                if(arr[index] == ele)
                found = true;
                else
                index++;
                return found;
                }

        function getIndex(input)
                {
                var index = -1, i = 0, found = false;
                while (i < input.form.length && index == -1)
                if (input.form[i] == input)index = i;
                else i++;
                return index;
                }

        return true;
        }

function handle(e) {
     var key = (isNN) ? e.which : e.keyCode;
     if (key > 47 && key < 58) return true; else return false;
}

function isValid(string,allowed)
	{
	for (var i=0; i< string.length; i++)
		{
		if (allowed.indexOf(string.charAt(i)) == -1)
			return false;
		}
	return true;
	}

function isValidNum(string,len)
	{
	if (!(string.length >= len))
		return false;
	return true;
	}

function isEmailOk(string)
	{
	var at = '@';
	if (string.match(at) == '@')
		return true;
	return false;
	}


function checkcontact()
	{

	var nums = '0123456789';

	formObj = document.getaddr;

	if (formObj.FIRSTNAME.value == "")
		{
		continueRed();
		formObj.FIRSTNAME.focus();
		return false;
		}
	else
		{
		//resetChange(6);
		}

	if (formObj.LASTNAME.value == "")
		{
		continueRed();
		formObj.LASTNAME.focus();
		return false;
		}

	if (formObj.PH1AREA.value == "")
		{
		continueRed();
		formObj.PH1AREA.focus();
		return false;
		}
        else 
		{
       	        if (!isValid(formObj.PH1AREA.value,nums) || !isValidNum(formObj.PH1AREA.value,3))
               	        {
			continueRed();
			formObj.PH1SUFX.value = "";
			formObj.PH1EXCH.value = "";
			formObj.PH1AREA.value = "";
                        formObj.PH1AREA.focus();
                        return false;
                        }
		}

	if (formObj.PH1EXCH.value == "")
		{
		continueRed();
		formObj.PH1EXCH.focus();
		return false;
		}
        else 
                {
                if (!isValid(formObj.PH1EXCH.value,nums) || !isValidNum(formObj.PH1EXCH.value,3))
                        {
			continueRed();
			formObj.PH1SUFX.value = "";
			formObj.PH1EXCH.value = "";
                        formObj.PH1EXCH.focus();
                        return false;
                        }
                }

	if (formObj.PH1SUFX.value == "")
		{
		continueRed();
		formObj.PH1SUFX.focus();
		return false;
		}
        else 
                {
                if (!isValid(formObj.PH1SUFX.value,nums) || !isValidNum(formObj.PH1SUFX.value,4))
                        {
			continueRed();
			formObj.PH1SUFX.value = "";
                        formObj.PH1SUFX.focus();
                        return false;
                        }
                }

	if (formObj.PH2AREA.value == "")
		{
		continueRed();
		formObj.PH2AREA.focus();
		return false;
		}
        else
                {
                if (!isValid(formObj.PH2AREA.value,nums) || !isValidNum(formObj.PH2AREA.value,3))
                        {
			continueRed();
			formObj.PH2SUFX.value = "";
			formObj.PH2EXCH.value = "";
			formObj.PH2AREA.value = "";
                        formObj.PH2AREA.focus();
                        return false;
                        }
                }

	if (formObj.PH2EXCH.value == "")
		{
		continueRed();
		formObj.PH2EXCH.focus();
		return false;
		}
	else
                {
                if (!isValid(formObj.PH2EXCH.value,nums) || !isValidNum(formObj.PH2EXCH.value,3))
                        {
			continueRed();
			formObj.PH2EXCH.value = "";
                        formObj.PH2EXCH.focus();
                        return false;
                        }
                }

	if (formObj.PH2SUFX.value == "")
		{
		continueRed();
		formObj.PH2SUFX.focus();
		return false;
		}
        else
                {
                if (!isValid(formObj.PH2SUFX.value,nums) || !isValidNum(formObj.PH2SUFX.value,4))
                        {
			continueRed();
			formObj.PH2SUFX.value = "";
                        formObj.PH2SUFX.focus();
                        return false;
                        }
                }

	if (formObj.EMAIL.value == "")
		{
		continueRed();
		formObj.EMAIL.focus();
		return false;
		}
	else
		{
		if (!isEmailOk(formObj.EMAIL.value))
			{
			continueRed();
			formObj.EMAIL.focus();
			return false;
			}
		}

	if (formObj.BADDR1.value == "")
		{
		continueRed();
		formObj.BADDR1.focus();
		return false;
		}

	if (formObj.BADDR2.value == "")
		{
		// What? Do Nothing
		}

	if (formObj.BCITY.value == "")
		{
		continueRed();
		formObj.BCITY.focus();
		return false;
		}

	if (!(browserName == "Microsoft Internet Explorer"))
		{
		if (formObj.BSTATE.value == "Select")
			{
			continueRed();
			formObj.BSTATE.focus();
			return false;
			}
		}
	else
		{
		bval = formObj.BSTATE[formObj.BSTATE.selectedIndex].text;
		if ( (bval == "Select") )
			{
			continueRed();
			formObj.BSTATE.focus();
			return false;
			}
		}

	if (formObj.BZIP.value == "")
		{
		continueRed();
		formObj.BZIP.focus();
		return false;
		}
	else
		{
		if (formObj.BZIP.value != "")
			{
			if (!isValid(formObj.BZIP.value,nums) || !isValidNum(formObj.BZIP.value,5))
				{
				continueRed();
				formObj.BZIP.value = "";
				formObj.BZIP.focus();
				return false;
				}
			}
		}

	document.images[17].src = "continue-green.gif";
	formObj.SAME.blur();
	return true;
	}

function checknums(input)
	{
	var nums = '1234567890';

	if (!isValid(input.value,nums))
		{
		input.value = "";
		input.focus();
		return false;
		}
	return true;
	}

function checkalphas(input)
	{
	var alphas = ' abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

	if (!isValid(input.value,alphas))
		{
		input.value = "";
		input.focus();
		return false;
		}
	return true;
	}

function clearImages()
	{
	var start = 7;
	var end = 16;
	var i = start;
	while (i<=end)
		{
		if (i == 13)
			{
			document.images[i].src = "blankbox.gif";
			}
		else
			{
			document.images[i].src = "redstar.gif";
			}
		++i;
		}
	document.images[currimg].src = "redbox.gif";
	}

function imageChange(number)
        {
        document.images[number].src = "redbox.gif";
	currimg = number;
        }

function imageSet(number)
	{
	document.images[number].src = "redstar.gif";
	}

function resetChange(number)
        {
        document.images[number].src = "greenstar.gif";
        }

function imageClear(number)
	{
	document.images[number].src = "blankbox.gif";
	}

function continueRed()
	{
	document.images[17].src = "continue-red.gif";
	}
