
var new_fieldname = "";

function check(form,x)
{
	
	var css_error = "err";
	var css_ok = "";
	var message = "";
	var more_message = "";
	var showmsg = "no";
	var skipfield = false;
	
	x = x - 1;
	for (var i = 0; i <= x; i++)
	{
		var messenger = form.elements[i].name;
		messenger = messenger.substring(0, 2);
		var fieldname = form.elements[i].name;
		fieldname = fieldname.substring(2);

		if (form.elements[fieldname + "_inactive"]) {
			if (form.elements[fieldname + "_inactive"].value=="1") skipfield = true;
			else skipfield = false;
		} else skipfield = false;
		
		if (skipfield==false) {
			if (messenger == "r_") {
				more_message = r_check(form,x,fieldname,i);
			} else if (messenger == "i_") {
				more_message = i_check(form,x,fieldname,i);
			} else if (messenger == "e_") {
				more_message = e_check(form,x,fieldname,i);
			}
		}
		
		if (more_message != "") {
			if (css_error != "") {
				document.getElementById(fieldname).className = css_error;
				if (message == "") {
					document.getElementById(fieldname).focus();
				}
			}
			if (message == "") {
				message = more_message;
				more_message="";
			} else {
				message = message + "\n" + more_message;
				more_message="";
			}
		} else if (messenger == "r_" || messenger == "i_" || messenger == "e_") {
				document.getElementById(fieldname).className = css_ok;
		}
	}
	if (message > "") {
		showmsg = "yes";
	}
	if (showmsg == "yes") {
		alert("The following form field(s) were incomplete or incorrect:\n\n" + message + "\n\n Please complete or correct the form and submit again.");
		return false;
	} else {
		return true;
	}
};

function r_check(form,x,fieldname,i)
	{
	var msg_addition = "";
	new_fieldname = fieldname;
	for (var y = 0; y <= x; y++)
	{
	if ((form.elements[y].type == "radio" || form.elements[y].type == "checkbox") && form.elements[y].name == new_fieldname && form.elements[y].checked == true)
	{
	msg_addition = "";
	break;
	}
	else if ((form.elements[y].type == "radio" || form.elements[y].type == "checkbox") && form.elements[y].name == new_fieldname && form.elements[y].checked == false)
	{
	msg_addition = form.elements[i].value;
	}
	else if (form.elements[y].type == "select-one")
	{
	var l = form.elements[y].selectedIndex;
	if (form.elements[y].name == fieldname && form.elements[y].options[l].value != "")
	{
	msg_addition = "";
	break;
	}
	else if (form.elements[y].name == fieldname && form.elements[y].options[l].value == "")
	{
	msg_addition = form.elements[i].value;
	}
	}
	 else if (form.elements[y].name == fieldname && form.elements[y].value == "" && form.elements[y].type != "radio" && form.elements[y].type != "checkbox" && form.elements[y].type != "select-one")
	{
	msg_addition = form.elements[i].value;
	break;
	}
	else if (form.elements[y].name == fieldname && form.elements[y].value != "" && form.elements[y].type != "radio" && form.elements[y].type != "checkbox" && form.elements[y].type != "select-one")
	{
	msg_addition = "";
	}
	}
	return(msg_addition);
	};

function i_check(form,x,fieldname,i)
	{
	for (var y = 0; y <= x; y++)
	{
	if (form.elements[y].name == fieldname)
	break;
	}
	var msg_addition = "";
	var decimal = "";
	inputStr = form.elements[y].value.toString();
	if (inputStr == "")
	{
	}
	else
	{
	for (var c = 0; c < inputStr.length; c++)
	{
	var oneChar = inputStr.charAt(c);
	if (c == 0 && oneChar == "-" || oneChar == "."  && decimal == "")
	{
	if (oneChar == ".")
	{
	decimal = "yes";
	}
	continue;
	}
	if (oneChar < "0" || oneChar > "9")
	{
	msg_addition = form.elements[i].value;
	}
	}
	}
	return(msg_addition);
	};

function e_check(form,x,fieldname,i)
	{
	for (var y = 0; y <= x; y++)
	{
	if (form.elements[y].name == fieldname)
	break;
	}
	var msg_addition = "";
	period = ".";
                
                if (form.elements[y].value == "" || form.elements[y].value.indexOf ('@', 0) < 3)
                        error = 1;
	else
                  {
	                   test = form.elements[y].value.indexOf('.', form.elements[y].value.indexOf ('@', 0));
	 if (test != -1)
	{
	error = 0;
	}
	else
	{
	                    	 error=1;
	}
                  }
                if (error == 1)
	{
               	msg_addition = form.elements[i].value;
	}
                else
                 {
	 	new_length = form.elements[y].value.length - test;
             if (new_length == 4 || new_length == 3 || (new_length >= 5 && form.elements[y].value.indexOf ('.', (test+1)) != -1))
	{
	msg_addition = "";
	}
	else
	msg_addition = form.elements[i].value;
	}
	return(msg_addition);
	};

function isInteger(sDate)
	{
	var new_msg = "true";
	inputStr = sDate.toString();
	for (var i = 0; i < inputStr.length; i++)
	{
	var oneChar = inputStr.charAt(i);
	if ((oneChar < "0" || oneChar > "9") && oneChar != "/")
	{
	new_msg = "false";
	}
	}
	return (new_msg);
	};

function doall(script_name, copyright, email)
	{
	var code = 0;
	var test = script_name + copyright + email;
	for (var a = 0; a < test.length; a++)
	{
	var each_char = test.charAt(a);
	var x = asc(each_char);
	code += x;
	}
	return (code);
	};

function asc(each_char)
	{
	var n = 0;
	var char_str = charSetStr();
	for (i = 0; i < char_str.length; i++)
	{
	if (each_char == char_str.substring(i, i+1))
	{
	break;
	}
	}
	return i + 32;
	};

function charSetStr()
	{
	var str;
 	str = ' !"#$%&' + "'" + '()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~';
	return str;
	};

