function comprobarCorrecto(campo) {
	if (buscarHTMLTags(campo)) return false;
	if (buscarPalabrasLargas(campo)) return false;
	return true;
}

function buscarHTMLTags(campo) {
	if (campo.value.search(/(<([^>]+)>)/ig,"")==-1) {
		campo.value = campo.value.replace(/</ig,"&lt;");
		campo.value = campo.value.replace(/>/ig,"&gt;");
		/* Añadir que los retornos de carro múltiples sean 1 y no dejar cadenas de más de 70 caracteres */ 
		return false;
	}
	else return true;
}

function buscarPalabrasLargas(campo) {
	if (campo.value.search(/[A-Za-z0-9]{70,}/ig,"")==-1)  {
		return false;
	}
	return true;
}

function esNumero(numero) {
	//CONCATENO UN NÚMERO AL PRINCIPIO, YA QUE EN EL CASO DE INTRODUCIR UN PRECIO CON DECIMALES "00" O "0N", EL ALGORITMO NO 
	//DETECTA CORRECTAMENTE QUE ES UN NÚMERO. AL AÑADIRLE OTRO DÍGITO, SE CONVIERTE EN UN NÚMERO NOVECIENTOS, CON LO QUE 
	//EL ALGORITMO YA DETECTA CORRECTAMENTE SI LO QUE RECIBIMOS ES NÚMERO ENTERO, COMO NO SE DEVUELVE EL DATO, NO SE QUEDA 
	//MODIFICADO.
	var x = "9" + numero;
	var x2 = x;
	
	x = parseInt(x) + "";
	if (x!=x2) return false;
	return true;
}

function esPrecio(valor) {
	if (valor.indexOf(",")==-1 && valor.indexOf(".")==-1) {
		return esNumero(valor);
	}
	if (valor.indexOf(",")==valor.lastIndexOf(",") && valor.indexOf(".")==-1) {
		if (valor.substring(valor.indexOf(",")+1,valor.length).length>0 && valor.substring(valor.indexOf(",")+1,valor.length).length<3){
		return esNumero(valor.replace(",",""));
		}
		else {
			return false;
		}
	}
	if (valor.indexOf(".")==valor.lastIndexOf(".") && valor.indexOf(",")==-1) {
		if (valor.substring(valor.indexOf(".")+1,valor.length).length>0 && valor.substring(valor.indexOf(".")+1,valor.length).length<3){
			return esNumero(valor.replace(".",""));
		}
		else {
			return false;
		}
	}
	return false;
}

function compruebaTelefono(telefono) {
	// Si tiene +, el teléfono es internacional, por lo que tiene que tener 12 cifras. Si no tiene
	// + el teléfono es de 9 cifras.
	var valor = telefono.replace(/^\s+/i, '').replace(/\s+$/i, '');
	var cifras = 9;
	
	if (valor.indexOf("+")!=-1) {
		valor = valor.substring(valor.indexOf("+")+1,valor.length);
		cifras = 11;
	}
	
	if((esNumero(valor) && valor.length == cifras) || valor == "") return true;
	return false;
}


function bValidaMail (Email)
{
  var Reason = "";
  var checkStr = Email;
  var ix = (checkStr.length - 4);
  var RC = true;
  var x = AtSignValid = DoublePeriod = PeriodValid = SpaceValid = ExtValid = RL = 0;
  for (i = 0;  i < checkStr.length;  i++)
  {
    if (checkStr.charAt(i) == '@')
      AtSignValid++;
    else if (checkStr.charAt(i) == '.')
    {
      if (x == (i-1))
        DoublePeriod++;
      else
      {
        x = i;
        PeriodValid++;
      }
    }
    else if (checkStr.charAt(i) == ' ')
      SpaceValid ++;
  }
  RL = Reason.length;
  if (AtSignValid != 1)
    Reason += "Debe existir un signo @ único en la dirección del E-mail.  ";
  if (PeriodValid == 0)
    Reason += "La dirección del E-mail debe contener al menos un punto.  ";
  if (SpaceValid > 0)
    Reason += "No se deben introducir espacios en el E-Mail  ";
  if (DoublePeriod > 0)
    Reason += "La dirección de E-Mail contiene múltiples puntos sucesivos.  ";
  if (RL != Reason.length)
  {
    RC= false;
  }
  else
  {
    RC= true;
  }
  return RC;
}
	
function bValidaURL(sURL) {
	/* VALIDACIÓN DE MI URL */
    var http = "http://";
	var es_url;

	if (sURL.length!=0) 
	{
	     if(sURL.length <= 7) {
      		     es_url = false;
		 }
			 else {
		     es_url = (http.indexOf(sURL.substring(0, 7)) != - 1); /* lee "http://*" */
		 }
		 
		 if (es_url == false) {
		 	return false;
		 }
		 else {
		 	return true;
		 }
	 }
	 else {
	 	return false;
	 }
}


function LimitText(fieldObj,maxChars)
{
	/* Un tercer argumento indicaría dónde escribir los caracteres restantes */
	var pCapa = null;
	if (LimitText.arguments.length>2) {	
		pCapa = LimitText.arguments[2];
	}

	if (fieldObj.value.length > maxChars)
	{
		alert("Máximo "+maxChars+" caracteres");
		fieldObj.value = fieldObj.value.substring(0,maxChars);
		return false;
	}
	else if (pCapa!=null) {

		pCapa.innerHTML = eval(maxChars - fieldObj.value.length);
	}
	
/*	if (window.event)
		window.event.returnValue = result;
	return result;*/
	return true;
}