//ES NECESARIO DEFINID EL IDIOMA DEL VALIDAR QUE SE VA A EJECUTAR ESTO SE DEFINE CON LA VARIABLE SIGUIENTE
//validar_lang="ES" //español 0, este es el default....
//validar_lang="EN" //english 1
//validar_lang="FR" //francais 2
//validar_lang="DE" //deutch 3
//validar_lang="PO" //portugues 4

validar_lang_id = 0;

try
{
	switch(validar_lang)
	{
		case "ES":
				validar_lang_id = 0;
			break;
		case "EN":
				validar_lang_id = 1;
			break;
		case "FR":
				validar_lang_id = 2;
			break;
		case "DE":
				validar_lang_id = 3;
			break;
		case "PO":
				validar_lang_id = 4;
			break;
		default: validar_lang_id = 0; break;
	}
}
catch(ex) { validar_lang_id = 0; }
var validad_language = new Array();
validad_language[0]=new Array("Este campo es requerido", "This field is required", "Este campo es requerido-FR", "Este campo es requerido-DE", "Este campo es requerido-PO");
validad_language[1]=new Array("El nombre debe tener al menos dos letras", "The name must have at less 2 letters", "", "", "");
validad_language[2]=new Array("Un apellido debe constar máximo de 2 palabras", "The last name must have more than 2 words", "", "", "");
validad_language[3]=new Array("Los apellidos deben ser mínimo 1 y máximo 6", "The last name must have at less 1 word and more than 6 words", "", "", "");
validad_language[4]=new Array("El e-mail debe tener el formato correcto", "The e-mail must have a correct format", "", "", "");
validad_language[5]=new Array("El nombre completo debe tener al menos 2 letras", "The complete name must be have at less 2 letters.", "", "", "");
validad_language[6]=new Array("Debe introducir un número", "Enter a number", "", "", "");
validad_language[7]=new Array("", "", "", "", "");
validad_language[8]=new Array("", "", "", "", "");
validad_language[9]=new Array("", "", "", "", "");
validad_language[10]=new Array("", "", "", "", "");
validad_language[11]=new Array("", "", "", "", "");


function validar(args){			
	for(var i=0;i<args.length/2;i++)
	{
		obj=args[i*2];
		val=args[i*2].val();
		validate = args[(i*2)+1];
		titlehint=obj.attr("title");

		$(obj).removeClass("validar");
		//alert(val);
		var re = re= new RegExp();
			switch(validate)
			{
				case "requerido":
						if((val.length < 2) || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
						//
				break;
				
				case "nombre":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,20}(\s[A-Z|\xD1|a-z|\xF1]{2,20}){0,2}(\s){0,4}$/;
						if(re.test(val)==false) { $().message(validad_language[1][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "onombre":
					if((val=="") || (val == titlehint)) {} else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,20}(\s[A-Z|\xD1|a-z|\xF1]{2,20}){0,2}(\s){0,4}$/;
						if(re.test(val)==false) { $().message(validad_language[1][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				
				case "apellido":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{1,25}(\s[A-Z|\xD1|a-z|\xF1]{1,25}){0,1}(\s){0,2}$/;
						if(re.test(val)==false) { $().message(validad_language[2][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "oapellido":
					if((val=="") || (val == titlehint)) {} else {
						re=/^[A-Z|\xD1|a-z|\xF1]{1,25}(\s[A-Z|\xD1|a-z|\xF1]{1,25}){0,1}(\s){0,2}$/;
						if(re.test(val)==false) { $().message(validad_language[2][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "apellidos":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{1,25}(\s[A-Z|\xD1|a-z|\xF1]{1,25}){0,1}(\s){0,4}$/;
						if(re.test(val)==false) { $().message(validad_language[3][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "oapellidos":
					if((val=="") || (val == titlehint)) {} else {
						re=/^[A-Z|\xD1|a-z|\xF1]{1,25}(\s[A-Z|\xD1|a-z|\xF1]{1,25}){0,1}(\s){0,4}$/;
						if(re.test(val)==false) { $().message(validad_language[3][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				
				case "email":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/;
						if(re.test(val)==false) { $().message(validad_language[4][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "oemail":
					if((val=="") || (val == titlehint)) {} else {
						re=/[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/;
						if(re.test(val)==false) { $().message(validad_language[4][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				
				case "nombre-completo":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,20}(\s[A-Z|\xD1|a-z|\xF1]{2,20}){0,5}(\s){0,4}$/;
						if(re.test(val)==false) { $().message(validad_language[5][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "onombre-completo":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,20}(\s[A-Z|\xD1|a-z|\xF1]{2,20}){0,5}(\s){0,4}$/;
						if(re.test(val)==false) { $().message(validad_language[5][validar_lang_id]); setFocus(obj); return false; }
					}
				break;	
				
				case "entero":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[0-9]{1,5}$/;
						if(re.test(val)==false) { $().message(validad_language[6][validar_lang_id]); setFocus(obj); return false; }
					}
				break;
				case "oentero":
					if((val=="") || (val == titlehint)) {} else {
						re=/^[0-9]{1,5}$/;
						if(re.test(val)==false) { $().message(validad_language[6][validar_lang_id]); setFocus(obj); return false; }
					}
				break;

				/*
				case "ci":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[0-9]{5,7}\s[A-Za-z]{2,3}$/;
						if(re.test(val)==false) { $().message("El Carnet de Identidad debe seguir el siguiente formato 0000000 AA."); setFocus(obj); return false; }
					}
				break;
				case "oci":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^[0-9]{5,7}\s[A-Za-z]{2,3}$/;
						if(re.test(val)==false) { $().message("El Carnet de Identidad debe seguir el siguiente formato 0000000 AA."); setFocus(obj); return false; }
					}
				break;
				case "alfa":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,20}(\s[A-Z|\xD1|a-z|\xF1]{2,20}){0,5}(\s){0,4}$/;
						if(re.test(val)==false) { $().message("This is a alfa field."); setFocus(obj); return false; }
					}
				break;
				case "oalfa":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,20}(\s[A-Z|\xD1|a-z|\xF1]{2,20}){0,5}(\s){0,4}$/;
						if(re.test(val)==false) { $().message("This is a alfa field."); setFocus(obj); return false; }
					}		
				case "telefono":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[0-9]{1,15}(\s[0-9]{1,15}){0,3}$/;
						if(re.test(val)==false) { $().message("Your phone must be only numbers and spaces."); setFocus(obj); return false; }
					}
				break;
				case "otelefono":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^[0-9]{1,15}(\s[0-9]{1,15}){0,3}$/;
						if(re.test(val)==false) { $().message("Your phone must be only numbers and spaces."); setFocus(obj); return false; }
					}
				break;
				case "busqueda-alpha":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[A-Z|\xD1|a-z|\xF1]{2,25}$/;
						if(re.test(val)==false) { $().message("La información a buscar debe tener al menos 2 caracteres y deben ser solo letras."); setFocus(obj); return false; }
					}
				break;
				case "decimal":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^[0-9]{1,6}(\x2E|\x2C){0,1}[0-9]{0,2}$/;
						if(re.test(val)==false) { $().message("Este campo requiere un decimal con una precisión máxima de 2 dígitos."); setFocus(obj); return false; }
					}
				break;
				case "odecimal":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^[0-9]{1,6}(\x2E|\x2C){0,1}[0-9]{0,2}$/;
						if(re.test(val)==false) { $().message("Este campo requiere un decimal con una precisión máxima de 2 dígitos."); setFocus(obj); return false; }
					}
				break;							
				case "fecha":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^(\d{4})(\x2d)(0[1-9]|1[012])(\x2d)([012][1-9]|3[01]|10|20)$/;
						if(re.test(val)==false) { $().message("La fecha debe seguir el siguiente formato aaaa-mm-dd"); setFocus(obj); return false; }
					}
				break;
				case "ofecha":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^(\d{4})(\x2d)(0[1-9]|1[012])(\x2d)([012][1-9]|3[01]|10|20)$/;
						if(re.test(val)==false) { $().message("La fecha debe seguir el siguiente formato aaaa-mm-dd"); setFocus(obj); return false; }
					}
				break;							
				case "usuario":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^\b.{1,15}\b$/;
						if(re.test(val)==false) { $().message("El nombre de usuario debe tener mínimo 3 dígitos."); setFocus(obj); return false; }
					}
				break;
				case "ousuario":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^\b.{1,15}\b$/;
						if(re.test(val)==false) { $().message("El nombre de usuario debe tener mínimo 3 dígitos."); setFocus(obj); return false; }
					}
				break;
				case "opassword":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^\b.{1,15}\b$/;
						if(re.test(val)==false) { $().message("La contraseña de usuario debe tener mínimo 3 dígitos."); setFocus(obj); return false; }
					}
				break;
				case "password":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^\b.{1,15}\b$/;
						if(re.test(val)==false) { $().message("La contraseña de usuario debe tener mínimo 3 dígitos."); setFocus(obj); return false; }
					}
				break;
				case "si-no":
					if((val=="") || (val == titlehint)) { $().message(validad_language[0][validar_lang_id]); setFocus(obj); return false; }
					else {
						re=/^\b(SI|NO|si|no)\b$/;
						if(re.test(val)==false) { $().message("Este campo debe contener una respuesta del tipo SI o NO."); setFocus(obj); return false; }
					}
				break;
				case "osi-no":
					if((val=="") || (val == titlehint)) {}
					else {
						re=/^\b(SI|NO|si|no)\b$/;
						if(re.test(val)==false) { $().message("Este campo debe contener una respuesta del tipo SI o NO."); setFocus(obj); return false; }
					}
				break;
				*/
			}
	}
	return true;
}

function setFocus(obj){
	$(obj).addClass("validar");
	$(obj).seekAttention({paddingTop: 5, paddingBottom: 5, paddingLeft: 5, paddingRight: 5});
	obj.focus();
}