

function LTrim (Cadena)
{
	while (Cadena.length > 0 && Cadena.substring (0, 1) == " ")
		Cadena = Cadena.substring (1);
	return (Cadena);
}


function RTrim (Cadena)
{
	var i = Cadena.length;
	
	while (i > 0 && Cadena.substring (i - 1, i) == " ")
	{	Cadena = Cadena.substring (0, i - 1);
		i--;
	}
	return (Cadena);
}
	

function Trim (Cadena)
{
	if (typeof Cadena == 'undefined') return (''); else	return (LTrim (RTrim (Cadena)));
}

function CuentaSubCadenas (Cadena, SubCadena)
{
	var i = 0;
	var j = 0;
	var Result = 0;

	i = Cadena.length;
	j = SubCadena.length;
	if (j > 0)
	{	i -= j;
		while (i > 0)
		{	if (Cadena.substring (i, i + j) == SubCadena)
			{	Result++;
				i -= j;
			} else i--;
		}
	}
	return (Result);
}


function EmailCorrecto (Email)
{
	Email = Trim (Email);

	return ((Email.length > 5) &&
                (CuentaSubCadenas (Email, "@") == 1) &&
                (CuentaSubCadenas (Email, ".") > 0));
}

function CadenaAEntero (Cadena)
{	
	var Aux;

	Aux = parseInt (Cadena);
	if (isNaN (Aux)) { Aux = 0; }
	return (Aux);
}


function RadioButtonIndex (RadioButton)
{
	var i = 0;
	var Result = -1;
	
	while (i < RadioButton.length && Result == -1)
	{	if (RadioButton [i].checked) { Result = i; }
		i++;
	}
	return (Result);
}


function RadioButtonValue (RadioButton)
{
	var Result = "";
	var i = RadioButtonIndex (RadioButton);

	if (i >= 0) Result = RadioButton [i].value;
	return (Result);
}



function EnviarCliente ()
{
	$Result = false;
	
	if (ValidarDatosCliente ())
	{
		if (! document.Usuarios.chkOcio.checked &&
	      ! document.Usuarios.chkMotor.checked &&
	      ! document.Usuarios.chkInternet.checked &&
	      ! document.Usuarios.chkInformatica.checked &&
	      ! document.Usuarios.chkNegocios.checked &&
	      ! document.Usuarios.chkSalud.checked &&
	      ! document.Usuarios.chkOfertas.checked &&
	      ! document.Usuarios.chkHijos.checked) alert ("Tiene que indicar alguna área de interes.");
		else if (Trim (document.Usuarios.Captcha.value) == '') alert ("Tiene que indicar un código de seguridad.");
		else if (! document.Usuarios.chkPolitica.checked) alert ('Tiene que aceptar nuestra política de privacidad.');
		else $Result = true;
	}
	return ($Result);
}


function ValidarDatosCliente ()
{
	Result = false;
	
	if (Trim (document.Usuarios.Usuario.value) == '') alert ("Tiene que indicar un identificador.");
	else if (Trim (document.Usuarios.Clave.value) == '') alert ("Tiene que indicar una contraseña.");
	else if (Trim (document.Usuarios.Nombre.value) == '') alert ("Tiene que indicar un nombre.");
	else if (Trim (document.Usuarios.Domicilio.value) == '') alert ("Tiene que indicar una direccion.");
	else if (Trim (document.Usuarios.CodigoPostal.value) == '') alert ("Tiene que indicar un código postal.");
	else if (Trim (document.Usuarios.Ciudad.value) == '') alert ("Tiene que indicar una ciudad.");
	else if (Trim (document.Usuarios.Provincia.value) == '') alert ("Tiene que indicar una provincia / estado.");
	else if (Trim (document.Usuarios.Pais.value) == '') alert ("Tiene que indicar un país.");
	else if (Trim (document.Usuarios.Email.value) == '') alert ("Tiene que indicar un e-mail.");
	else if (! EmailCorrecto (document.Usuarios.Email.value)) alert ("El email no es correcto.");
	else if (Trim (document.Usuarios.Telefono.value) == '') alert ("Tiene que indicar un teléfono.");
	else if (CadenaAEntero (document.Usuarios.Profesion.value) <= 0) alert ("Tiene que indicar una profesión.");
	else if ((document.Usuarios.DiaNacimiento.value <= 0) || (document.Usuarios.MesNacimiento.value <= 0) || (document.Usuarios.AnyoNacimiento.value <= 0))
		 alert ("La fecha de nacimiento no es válida.");
	else if (Trim (RadioButtonValue (document.Usuarios.Sexo)) == '') alert ("Tiene que indicar un sexo.");
	else Result = true;
		
	return (Result);
}
