
function isValidEmail(email, required) {
	if (required == undefined) { // if not specified, assume it's required
		required = true;
	}
	if (email == null) {
		if (required) {
			return false;
		}
		return true;
	}
	if (email.length == 0) {
		if (required) {
			return false;
		}
		return true;
	}
	if (!allValidChars(email)) { // check to make sure all characters are
		// valid
		return false;
	}
	if (email.indexOf("@") < 1) { // must contain @, and it must not be the
		// first character
		return false;
	} else if (email.lastIndexOf(".") <= email.indexOf("@")) { // last dot must
		// be after the
		// @
		return false;
	} else if (email.indexOf("@") == email.length) { // @ must not be the
		// last character
		return false;
	} else if (email.indexOf("..") >= 0) { // two periods in a row is not valid
		return false;
	} else if (email.indexOf(".") == email.length) { // . must not be the
		// last character
		return false;
	}
	return true;
}

function allValidChars(email) {
	var parsed = true;
	var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
	for ( var i = 0; i < email.length; i++) {
		var letter = email.charAt(i).toLowerCase();
		if (validchars.indexOf(letter) != -1)
			continue;
		parsed = false;
		break;
	}
	return parsed;
}

function setClassField(field,className) {
	document.getElementById(field).setAttribute("class", className);
}

function onSubmit() {
    var valid = true;
    var selectedField;
    var forFocus;
    selectedField="message";
	if (document.getElementById(selectedField).value.length<5) {
		setClassField(selectedField,'contact_textarea_invalid');
		valid=false;	
		forFocus=selectedField;
	}
	else {
		setClassField(selectedField,'contact_textarea');
	}
    selectedField="subject";
	if (document.getElementById(selectedField).value.length<5) {
		setClassField(selectedField,'contact_textbox_invalid');
		valid=false;	
		forFocus=selectedField;
	}
	else {
		setClassField(selectedField,'contact_textbox');
	}
	selectedField="email";
	if (document.getElementById(selectedField).value.length<4) {
		setClassField(selectedField,'contact_textbox_invalid');
		valid=false;	
		forFocus=selectedField;
	}
	else if (!isValidEmail(document.getElementById(selectedField).value)) {
		setClassField(selectedField,'contact_textbox_invalid');
		valid=false;	
		forFocus=selectedField;
	}
	else {
		setClassField(selectedField,'contact_textbox');
	}
	selectedField="name";
	if (document.getElementById(selectedField).value.length<3) {
		setClassField(selectedField,'contact_textbox_invalid');
		valid=false;	
		forFocus=selectedField;
	}
	else {
		setClassField(selectedField,'contact_textbox');
	}
	

	
	if(!valid) {
		alert("Los campos marcados con rojo están incorrectos, por favor verifíquelos.");
		document.getElementById(forFocus).select();
		document.getElementById(forFocus).focus();
	}
	
	return valid;
}





