// JavaScript Document
var isNS4 = (document.layers) ? true : false;
var isIE4 = (document.all && !document.getElementById) ? true : false;
var isIE5 = (document.all && document.getElementById) ? true : false;
var isNS6 = (!document.all && document.getElementById) ? true : false;

function checkGUID(elGUID) {
  var re = /^\{[0-9,A-F]{8}\-[0-9,A-F]{4}\-[0-9,A-F]{4}\-[0-9,A-F]{4}\-[0-9,A-F]{12}\}$/;
  return ((!re.test(elGUID)) ? "{00000000-0000-0000-0000-000000000000}" : elGUID) ; 
}


function CaracteresRaros(cad, iOpt)
  {
  var scad=cad;
  var carRaros
  var i;
  var devVal=false;
	//generamos el "array" de caracteres raros, con los caracteres que no queremos que se guarden en el sistema
	//iOpt == 0 Uso para registro de usuarios
	//iOpt == 1 Uso de logeo en el sistema
	if (iOpt == 0)
		{carRaros = "\\\�\�\<\>\!\|\�\#\$\%\&\/\(\)\=\?\'\�\�\�\}\:\;\,\`\^\+\*\{\�\�\"\ ";}
	else if (iOpt == 1)
		{carRaros ="\'";}

  
  for (i = 0; i < scad.length; i++)
    {  // recorremos la cadena para ver si tiene caracteres raros
    var car = scad.charAt(i);
    if (carRaros.indexOf(car) > -1)
	  {
    devVal=true;
	  i=scad.length;
	  }
    else
      devVal=false;
    }
  return(devVal);
  }
function CaracteresRarosFicheros(cad)
  {
  var scad=cad;
  var carRaros
  var i;
  var devVal=false;
	//generamos el "array" de caracteres raros, con los caracteres que no queremos que se guarden en el sistema para los nombres de ficheros
	{carRaros = "\\\�\�\<\>\!\|\�\#\$\%\&\/\(\)\=\?\'\�\�\�\}\:\;\,\`\^\+\*\{\�\�\"\.\�\�\�\�\�\�\�\�\�\�\�\�\ ";}
  for (i = 0; i < scad.length; i++)
    {  // recorremos la cadena para ver si tiene caracteres raros
    var car = scad.charAt(i);
    if (carRaros.indexOf(car) > -1)
	  {
    devVal=true;
	  i=scad.length;
	  }
    else
      devVal=false;
    }
  return(devVal);
  }


function comprobar_fecha(d,m,a){
	var correcto = true
	var dia = parseInt(d)
	var mes = parseInt(m)
	var ano = parseInt(a)
	var mesescon30dias = "-4-6-9-11-"
	
	correcto = (d=="" || m=="" || a=="" || a.length<4) ? false: correcto;
	correcto = (dia>31 || dia<0) ? false:correcto;
	correcto = (mes>12 || mes<0) ? false:correcto;
	correcto = (dia==31 && mesescon30dias.indexOf("-"+mes+"-")>=0) ? false:correcto;
	correcto = ((mes==2) && (dia>29)) ? false:correcto;
	correcto = ((mes==2) && (dia==29) && !(ano % 4==0) && (ano % 400>0)&& (ano % 100)>0) ? false:correcto;
	if ((ano<1900) || (ano>3000))
	{
	   correcto=false;
	}
	return correcto;		
	
}
  
function EsEmail(campo)
  {
	var sPart1,sServer,iUltimopunto,iBlanco,bOk,iCont;	
	bOk=false;
	//buscamos algun blanco
	sBlanco=campo.value.split(" ");	
	if(sBlanco.length==1)
	{		
		sPart1=campo.value.split("@");		
		if(sPart1.length==2)
		{
			sPart2=sPart1[1].split(".");
			iUltimopunto=(sPart2.length);	
			if (iUltimopunto>=2)
			{
				iUltimopunto=iUltimopunto-1
				if((sPart2[iUltimopunto].length>1) & (sPart2[iUltimopunto].length<4))
				{
					//hasta aqui todo esta ok
					bOk=true;														
					for(iCont=0;iCont<iUltimopunto+1;iCont++)					{					
						
						//comprobamos si hay algo entre los puntos
						if(sPart2[iCont].length<=0)
						{
							bOk=false;							
						}
					}					
				}
			}			
		}
	}
	return(bOk);
  }

	function EsVacio(campo){
		elemento = eval("document.datos."+campo)
		if(elemento.value==""){
			retorno = true
		}else{
			retorno = false
		}
			return(retorno);
	}
	

	
	
	function esNumero(cadena){
		var cont
		var resultado
		var c 
		var numeros

		numeros="0123456789"
		c = cadena + ""
		resultado = true
		for(cont=0;cont<cadena.length;cont++){
			if(numeros.indexOf(c.charAt(cont))<0){
				resultado = false
				break
			}
		}
		return resultado
	}	


function comprobarNIF(NIF){
  var Numero = parseInt(NIF.substring(0,NIF.length-1));
  var Letras = "TRWAGMYFPDXBNJZSQVHLCKET";
  var parteEntera = parseInt(Numero/23)*23;
  var Letra = NIF.charAt(NIF.length-1);
  var LetraCorrecta = Letras.charAt(Numero - parteEntera);
  if (LetraCorrecta == Letra.toUpperCase()){
     return true;
  }else{
		return false;	
  }
}    



	function comprobarCIF(){
		var letra,letraFinal,letras;
		var numeros,numero;
		var correcto;
		var contador;
		letra      = document.datos.nif.value.substring(0,1);
		numero     = document.datos.nif.value.substring(1,document.datos.nif.value.length);
		letraFinal = document.datos.nif.value.substring(8,9);
		correcto   = (numero.length==8)? true:false;		
		letras="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
		numeros="0123456789";
		if (letras.indexOf(letraFinal)>=0) {
                  numero     = numero.substring(0,numero.length-1);
		}
		correcto = ((letras.indexOf(letra)>=0) && correcto);
		for(contador=0;contador<numero.length;contador++)
			if (numeros.indexOf(numero.charAt(contador))<0){
				correcto = false;
				break;
			}
		return correcto;		
	}
	
	
	
	
	function boolean_trim(cadena)
{
	for(i=0; i<cadena.length; )
	{
		if(cadena.charAt(i)==" ")
			cadena=cadena.substring(i+1, cadena.length);
		else
			break;
	}

	for(i=cadena.length-1; i>=0; i=cadena.length-1)
	{
		if(cadena.charAt(i)==" ")
			cadena=cadena.substring(0,i);
		else
			break;
	}
	
	forma.caja2.value=cadena;
}
	
	
	
function Trim(TRIM_VALUE)
  {
  if(TRIM_VALUE.length < 1)
    {return"";}
  TRIM_VALUE = RTrim(TRIM_VALUE);
  TRIM_VALUE = LTrim(TRIM_VALUE);
  if(TRIM_VALUE=="")
    {return "";}
  else
    {return TRIM_VALUE;}
  } //End Function


function RTrim(VALUE)
  {
  var w_space = String.fromCharCode(32);
  var v_length = VALUE.length;
  var strTemp = "";
  if(v_length < 0)
    {return"";}
  var iTemp = v_length -1;

  while(iTemp > -1)
    {
    if(VALUE.charAt(iTemp) != w_space)
      {
      strTemp = VALUE.substring(0,iTemp +1);
      break;
      }
    iTemp = iTemp-1;
    } //End While
  return strTemp;

  } //End Function


function LTrim(VALUE)
  {
  var w_space = String.fromCharCode(32);
  var v_length = VALUE.length;
  var strTemp = "";
	if(v_length < 1)
		{return"";}
  var iTemp = 0;

  while(iTemp < v_length)
    {
    if(VALUE.charAt(iTemp) != w_space)
      {
      strTemp = VALUE.substring(iTemp,v_length);
      break;
      }
    iTemp = iTemp + 1;
    } //End While
  return strTemp;
  } //End Function


