function validate_char(field) 
{ 
	var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789$%!&,.'?-#:/®*+";
	valid += " ";
	valid += "\"";
	valid += ";";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only characters Aa-Zz, 0-9, ? $ % ! & , . ' - # : / \ ® * are accepted.");
		field.focus(); 
		field.select();
	} 
}

function validate_exp(field) 
{ 
	var valid = "\\r";
	valid += "\\n";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+2);							
		if (valid.indexOf(temp) == "1")
		{
			ok = "yes";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only characters \r & \n are accepted.");
		field.focus(); 
		field.select();
	} 
}

function validate_url(field) 
{ 
	var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%&.?-#:/_";
	valid += " ";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only characters Aa-Zz, 0-9, ? % & . - # : / _ are accepted.");
		field.focus(); 
		field.select();
	} 
}

function validate_pw(field) 
{ 
	var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789$%!&,.'?-";
	valid += " ";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only characters Aa-Zz, 0-9, ? $ % ! & , . ' -  are accepted.");
		field.focus(); 
		field.select();
	} 
}

function validate_datechar(field) 
{ 
	var valid = "0123456789/";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only numbers 0-9 and / (forward slash) are accepted in date fields!");
		field.focus(); 
		field.select();
	} 
}

function validate_usziphonechar(field) 
{ 
	var valid = "0123456789-+";
	valid += " ";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only numbers 0-9, - (dash) and + (plus sign) are accepted in US zip code and phone fields!");
		field.focus(); 
		field.select();
	} 
}

function validate_euziphonechar(field) 
{ 
	var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-+";
	valid += " ";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only characters A-Z, 0-9, - (dash) and + (plus sign) are accepted in zip/postal code and phone fields!");
		field.focus(); 
		field.select();
	} 
}

function validate_money(field) 
{ 
	var valid = "0123456789.";
	var ok = "yes"; 
	var temp; 
	for (var i=0; i < field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);							
		if (valid.indexOf(temp) == "-1")
		{
			ok = "no";
		}
	}
	if (ok == "no")
	{
		alert("Invalid Entry! Only numbers 0-9 and . (period) are accepted.");
		field.focus(); 
		field.select();
	} 
}


// this function helps sets up the default button that clicks 
// depending on where the user is in the form

function fnTrapKD(btn)
{
	if (document.all)
	{
		if (event.keyCode == 13)
		{ 
			event.returnValue = false;
			event.cancel = true;
			btn.click(); 
		} 
	} 
}

