/**
 * @author Diego
 */
/***** Validaciones*****************/
//alert('validaciones');
function ltrim(s){return s.replace(/^\s+/, "");}

function rtrim(s){return s.replace(/\s+$/, "");}

function trim(s){return rtrim(ltrim(s));}

function validateEmptyField(id){
	var obj	=document.getElementById(id).value;
	if(trim(obj).length==0 || trim(obj).value==''){
		return false;
	}return true;
	
}


function validateEmail(id){
	var obj	=document.getElementById(id).value;
		var objRegExp  = /(^[a-z]([a-z_\.]*)@([a-z_\.]*)([.][a-z]{3})$)|(^[a-z]([a-z_\.]*)@([a-z_\.]*)(\.[a-z]{3})(\.[a-z]{2})*$)/i;
		return objRegExp.test(obj);
}

function validateConfirmPassword(idpass1,idpass2){
	var obj	=document.getElementById(idpass1);
	var obj2	=document.getElementById(idpass2);
	if(obj.value!= obj2.value)
	{
		obj.value='';
		obj2.value='';
		return false;
	}return true;
}

function validateFieldLength(id,min,max){
	var obj	=document.getElementById(id);
	if(obj.value.length<min ||obj.value.length>max)
	{
		return false;
	}return true;
}

function validateAlfanumericoCastellano(str){
	var s = document.getElementById(str).value;
	
	for (i = 0; i < s.length; i++) {
	
		// Alphanumeric must be between "0"-"9", "A"-"Z", or "a"-"z"
		if (!(((s.charAt(i) >= "0") && (s.charAt(i) <= "9")) ||
		((s.charAt(i) >= "a") && (s.charAt(i) <= "n")) ||
		((s.charAt(i) >= "o") && (s.charAt(i) <= "z")) ||
		((s.charAt(i) >= "A") && (s.charAt(i) <= "N")) ||
		((s.charAt(i) >= "O") && (s.charAt(i) <= "Z")) ||
		(s.charCodeAt(i) == "241") ||
		(s.charCodeAt(i) == "32"))) {
			alert('no valido!');
			return false;
			
			break;
		}
		
	}
}

function validateSelect(idSelect){
	var obj	=document.getElementById(idSelect);
	if(obj.value=='null' || obj.value==undefined || obj.value==null){
		return false;
	}return true;
}

/******************************************************************************************/
/*
 * 					Validacion de formularios 
 */

function validateNewBp(){
	var mensaje	="";
	if(!validateSelect('bp')){ mensaje +="- Debe seleccionar una seccion disponible para crear\n";}
	if(!validateEmptyField('nombreBp')){ mensaje +="- Complete el campo Nombre de Seccion\n";}
	if(!validateFieldLength('nombreBp',0,20)){mensaje +="- El nombre de la seccion no puede tener mas de 20 caracteres\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	return true;
}

function validateUpdateBp(){
	var mensaje="";
	if(!validateSelect('bp')){ mensaje +="- Debe seleccionar una seccion para modificar\n";}
	if(!validateEmptyField('nombreBp')){ mensaje +="- Complete el campo Nombre de Seccion\n";}
	if(!validateFieldLength('nombreBp',0,20)){mensaje +="- El nombre de la seccion no puede tener mas de 20 caracteres\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	return true;
}

function validateDelBp(){
	var mensaje="";
	if(!validateSelect('bp')){ mensaje +="- Debe seleccionar una seccion para eliminar\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	if (!confirm('Al eliminar una seccion elimina todas sus subsecciones y el contenido de estas.\nRealmente desea eliminar la seccion?')) {
		return false;
	}return true;
	
}

function validateNewBs(){
	var mensaje="";
	if(!validateSelect('bp')){ mensaje +="- Debe asignarle una seccion a la Sub seccion\n";}
	if(!validateSelect('bs')){ mensaje +="- Debe seleccionar una ubicacion para la nueva Sub Seccion\n";}
	if(!validateSelect('modelo')){ mensaje +="- Debe seleccionar un modelo para la nueva Sub Seccion\n";}
	if(!validateEmptyField('nombreBs')){ mensaje +="- Complete el campo Nombre de Seccion\n";}
	if(!validateFieldLength('nombreBs',0,12)){mensaje +="- El nombre de la seccion no puede tener mas de 25 caracteres\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	return true;
}

function validateUpdateBs(){
	var mensaje="";
	if(!validateSelect('bp')){ mensaje +="- Debe seleccionar la seccion  a la que pertenece la Sub seccion\nque desea modificar\n";}
	if(!validateSelect('bs')){ mensaje +="- Debe seleccionar una Sub Seccion a modificar\n";}
	if(!validateEmptyField('nombreBs')){ mensaje +="- Complete el campo Nombre de Seccion\n";}
	if(!validateFieldLength('nombreBs',0,12)){mensaje +="- El nombre de la seccion no puede tener mas de 25 caracteres\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	return true;
}

function validateDelBs(){
	var mensaje="";
	if(!validateSelect('bp')){ mensaje +="- Debe seleccionar la seccion  a la que pertenece la Sub seccion\nque desea modificar\n";}
	if(!validateSelect('bs')){ mensaje +="- Debe seleccionar una Sub Seccion para eliminar\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	if(!confirm('Al borrar la Sub Seccion eliminara todo su contenido.\nRealmente desea eliminar la Sub Seccion? ')){
		return false;
	}return true;
}

function validateNewUserCarrito(){
	var mensaje ="";
	if(!validateEmptyField('userName')){ mensaje +=" -Complete el campo Login\n"; }
	if(!validateEmptyField('pass1')){ mensaje +="- Complete el campo password\n";}
	if(!validateConfirmPassword('pass1', 'pass2')){ mensaje +="- Los passwords deben coincidir\n"; }
	if(!validateEmail('email')){ mensaje +="- Chequee el campo email\n"; }
	if(!validateEmptyField('descuento')){ mensaje +="- Complete el campo descuento\n"; }
	if(isNaN(document.getElementById('descuento').value)){ mensaje+= "- Chequee el campo descuento, debe ser un numero\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	
	return true;
}

function validateUpdateUserCarrito(){
	var mensaje ="";
	if(!validateEmptyField('userName')){ mensaje +=" -Complete el campo Login\n"; }
	if (validateEmptyField('pass1')) {
		if (!validateConfirmPassword('pass1', 'pass2')) {
			mensaje += "- Los passwords deben coincidir\n";
		}
	}
	if(!validateEmail('email')){ mensaje +="- Chequee el campo email\n"; }
	if(!validateEmptyField('descuento')){ mensaje +="- Complete el campo descuento\n"; }
	if(isNaN(document.getElementById('descuento').value)){ mensaje+= "- Chequee el campo descuento, debe ser un numero\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	
	return true;
}

function validateMailForm(){
	
	var mensaje ="";
	if(!validateEmail('4')){ mensaje +="- Chequee el campo email\n"; }
	if(!validateEmptyField('mailTextarea')){ mensaje +="- Escriba una sugerencia o consulta\n"; }
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	return true;
	
}

function validateUpdatePassForm(){
	var mensaje="";
	if(!validateEmptyField('passOld')){ mensaje +=" -Complete el campo Password Anterior\n";}
	if(!validateEmptyField('pass1')){ mensaje +=" -Complete el campo Nueva Password\n";}
	if(!validateConfirmPassword('pass1', 'pass2')){ mensaje += " -Los passwords no coinciden\n";}
	if(mensaje!=""){
		alert ('Chequee los siguientes errores: \n'+mensaje);
		return false;
	}
	return true;
}

