function getValue(_elemento){
	var obj = getElement(_elemento);
	if(obj.tagName=='select'){
		var n = obj.selectedIndex;
		var val = obj[n].value;
		return val;
	}
	else{
		switch(obj.type){
		case 'checkbox':
			return obj.checked
			break;
		default:
			return obj.value;
			break;
		}
	}
}
function isEmail(str) {
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
		return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		return false
	}

	if (str.indexOf(at,(lat+1))!=-1){
		return false
	}

	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		return false
	}

	if (str.indexOf(dot,(lat+2))==-1){
		return false
	}

	if (str.indexOf(" ")!=-1){
		return false
	}
	return true
}

function isAlphanumeric(alphane){
	if (alphane.length == 0) return false;
	var numaric = alphane;
	var bool = true;
	for(var j=0; j<numaric.length; j++){
		var alphaa = numaric.charAt(j);
		var hh = alphaa.charCodeAt(0);
		if(!((hh > 47 && hh<59) || (hh > 64 && hh<91) || (hh > 96 && hh<123))){
			bool = bool && false;
		}
	}
	return bool;
}

function isNotEmpty(name){
	return name.length>0;
}

function validateCheckBox(name){
	return getValue(name);
}

function validateText(name){
	texto = getValue(name);
	return isNotEmpty(texto);
}

function validateUsuario(name){
	user = getValue(name);
	aux = isAlphanumeric(user);
	return aux;
}

function validateEmail(name){
	email = getValue(name);
	aux = isEmail(email);
	return aux;
}

function validateContactUsForm(){
	var bool = true;
	var cartel = "Ud. tiene errores. Por favor corrija los siguientes campos: \n";
	if (!validateText("nombre")){
		bool = false;
		cartel += "Campo Nombre Incompleto\n";
	}
	if (!validateText("empresa")){
		bool = false;
		cartel += "Campo Empresa Incompleto\n";
	}
	if (!validateEmail("email")){
		bool = false;
		cartel += "Formato de Email\n";
	}
	if (!validateText("comentarios")){
		bool = false;
		cartel += "Campo Comentarios Incompleto\n";
	}
	if (!validateCheckBox("acepto")){
		bool = false;
		cartel += "Marcar 'Leo y acepto las condiciones de uso'\n";
	}
 	if (bool){
		submitForm('f_contacto');
   	}
	else{
		alert(cartel);
	}
}

function validateOlvidoPassword(){
 	var bool = true;
	var cartel = "Ud. tiene errores. Por favor corrija los siguientes campos: \n";
	if (!validateUsuario("usuario")){
		bool = false;
		cartel += "Campo Nombre Incompleto\n";

	}
	if (!validateEmail("email")){
		bool = false;
		cartel += "Formato de Email\n";
	}

 	if (bool){
		submitForm('f_password');
   	}
	else{
		alert(cartel);
	}
}

function sameValue(v1, v2){
	valor1 = getValue(v1);
	valor2 = getValue(v2);
	return valor1 == valor2;
}

function validateChangePassword(){
 	var bool = true;
	var cartel = "Ud. tiene errores. Por favor corrija los siguientes campos: \n";
	if (!validateText("oldClave")){
		bool = false;
		cartel += "Campo contraseņa actual\n";
	}

	if (!sameValue("clave1", "clave2")){
		bool = false;
		cartel += "Valores de nueva contraseņa, no son iguales\n";
	}
	else{
		if (!validateText("clave1")){
			bool = false;
			cartel += "Campo contraseņa nueva\n";
		}

		if (!validateText("clave2")){
			bool = false;
			cartel += "Campo repita contraseņa nueva\n";
		}
	}

 	if (bool){
		submitForm('f_changePassword');
   	}
	else{
		alert(cartel);
	}
}

function validateSolInfo(){
 	var bool = true;
	var cartel = "Ud. tiene errores. Por favor corrija los siguientes campos: \n";
	if (!validateText("descripcion")){
		bool = false;
		cartel += "Campo Descripcion Incompleto\n";
	}
 	if (bool){
		submitForm('f_sol_info');
   	}
	else{
		alert(cartel);
	}
}

function validateEntradaGestion(f){
 	var bool = true;
	var cartel = "Ud. tiene errores. Por favor corrija los siguientes campos: \n";
	if (!validateText("titulo")){
		bool = false;
		cartel += "Campo Titulo Incompleto\n";
	}
	if (!validateText("descripcion")){
		bool = false;
		cartel += "Campo Descripcion Incompleto\n";
	}
 	if (bool){
		submitForm(f);
   	}
	else{
		alert(cartel);
	}
}

function validateSolOtros(f){
	var cartel = "Ud. tiene errores. Por favor corrija los siguientes campos: \n";
	var bool = true;
	if(!validateText("tipo")){
		bool = false;
		cartel += "Campo Tipo Incompleto\n";
	}
	if(!validateText("referencia")){
		bool = false;
		cartel += "Campo Referencia Incompleto\n";
	}
	if(!validateText("cajas")){
		bool = false;
		cartel += "Campo Cajas Incompleto\n";
	}
	if(!validateText("direccion_envio")){
		bool = false;
		cartel += "Campo Direccion de Envio Incompleto\n";
	}
	if(!validateText("contacto")){
		bool = false;
		cartel += "Campo Contacto Incompleto\n";
	}
	if(!validateText("telefono")){
		bool = false;
		cartel += "Campo Telefono Incompleto\n";
	}
 	if (bool){
		submitForm(f);
   	}
	else{
		alert(cartel);
	}
}

function validateSearchFaq(f){
	if(validateText("buscar")){
		submitForm(f);
	}
}

function validateSearchGestion(f){
	submitForm(f);
}

function submitForm(f){
	var formName = getElement(f);
	formName.submit();
}
