// Gereric form error validation and checking

function validateEmailAddress(email) {
	var msg = "";
	if ( email == "" || email == null || isblank(email) ){
		msg = msg + "Please enter an email address.";
    } else {
		var posOfAt = email.indexOf("@");
		if (posOfAt <= 0) {
			msg = "Please enter a valid email address.";
		} else {
			var domain = email.substring(posOfAt + 1, email.length);
			var posOfPeriod = domain.indexOf(".");
			if (posOfPeriod <= 0) {
				msg = "Please enter a valid email address.";
			} else {
				// test for spaces in the email address
				space_char_position = email.search( " " );
				if ( space_char_position != -1 ){
					msg = "An email address cannot contain spaces.";
				}
			}
		}
    } 
    return msg;
}


function isblank( s ) {
	var str_len = s.length;
    for (var i = 0; i < str_len; i++) {
		var c = s.charAt(i);
		if ((c != ' ') && (c != '\n') && (c != '\t')) return false;
    }
	return true;
}

function checkValidChars( s, v_array ){
	var str_len = s.length;
	var array_len = v_array.length;
    for (var i = 0; i < str_len; i++) {
		var c = s.charAt(i);
		var valid = false;
		for (var j = 0; j < array_len; j++) {
			var vc = v_array[j];
			if ( c == vc ) {
				valid = true;
				break;
			}
		}
		if ( valid != true ) return c;
    }
	return "";
}

function hasValue(obj,obj_type){
	if (obj_type == "TEXT"){
		return( !isblank(obj.value) );
	}else if (obj_type == "SELECT"){
		obj_len = obj.length
		for (i=0; i<obj_len; i++){
			if (obj.options[i].selected){
				if ( obj.options[i].value == "" ){
					return false;
				}else{
					return true;
				}
			}
		}
		return false;
	}else if (obj_type == "RADIO" || obj_type == "CHECKBOX"){
		obj_len = obj.length
		for (i=0; i<obj_len; i++){
			if (obj[i].checked){
				return true;
			}
		}
		return false;
	}
	return false;
}


function form_err(err_msg){
	alert(err_msg);
	return false;
}