//***********************************************************************************************
//* 		FUNCIÓN QUE COMPRUEBA SI EL NÚMERO DE TELEFÓNO TIENE 9 DÍGITOS.
//***********************************************************************************************

function EsNumeroTelefono(numero)
  {
    var re1 = /\d{9}/ ;

    if (re1.test(numero))
      {return true;}
    alert("El número de teléfono debe ser de 9 dígitos.");
    return false;
  }

//***********************************************************************************************
//* 		FUNCIÓN QUE COMPRUEBA SI EL NÚMERO DE FAX TIENE 9 DÍGITOS.
//***********************************************************************************************

function EsNumeroFax(fax)
  {
    var re1 = /\d{9}/ ;

    if (re1.test(fax))
      {return true;}
    alert("El número de fax debe ser de 9 dígitos.");
    return false;
  }

//***********************************************************************************************
//* 				FUNCIÓN QUE COMPRUEBA SI EL EMAIL ES CORRECTO.
//***********************************************************************************************

function EsEmail (cadena)
  {
    var esEmail = /^[^@]+@[^\.]+(\.[^\.]+)+$/;
    var valido = esEmail.test(cadena);
    if (valido)
      return true
    else
      {
      	return false;
      }
  }

//***********************************************************************************************
//* 			FUNCIÓN QUE COMPRUEBA SI EL DATO ES NUMÉRICO.
//***********************************************************************************************

function EsNumerico (dato)
  {
    var i;
    var longitud;
    var caracter;
    longitud = dato.length
    valido = "0123456789.,";
    if (longitud == 0)
      {return false;}
    for (i=0; i < longitud; i++)
      {
        caracter = dato.substring(i,i+1)
        if (valido.indexOf(caracter) == -1)
          {return false;}
      }
    return true;
  }

//***********************************************************************************************
//* 			FUNCIÓN QUE COMPRUEBA SI UNA FECHA ES CORRECTA.
//***********************************************************************************************

function ComprobarFecha (cadena)
// LA "cadena" VA A TENER EL FORMATO dd-mm-aaaa
  {
    var fecha_actual = new Date();

    var dia_actual = fecha_actual.getDate();
    var mes_actual = fecha_actual.getMonth() + 1;
    var anyo_actual = fecha_actual.getFullYear();

    var dia = cadena.substring(0,2);
    var mes = cadena.substring(3,5);
    var anyo = cadena.substring(6,10);

    if ((dia == 'dd') || (mes == 'mm') || (anyo == 'aaaa'))
      {return false;}

    // QUITAMOS DE DIA Y MES EL 0 SI ES UN DIA/MES MENOR QUE 9.
    var cero = dia.substring(0,1);
    if (cero == '0')
      {var dia = dia.substring(1,2)};
    var cero = mes.substring(0,1);
    if (cero == '0')
      {var mes = mes.substring(1,2)};


    var anyo_dif = parseInt(anyo) - parseInt(anyo_actual);
    if (anyo_dif < 0 )
      {return false;}

    var mes_dif = parseInt(mes) - parseInt(mes_actual);
    if ((mes_dif < 0 ) && (anyo_dif <= 0))
      {return false;}

    var dia_dif = parseInt(dia) - parseInt(dia_actual);
    if ((dia_dif < 0) && (mes_dif <= 0 ) && (anyo_dif <= 0))
      {return false;}

    return true;
  }

//***********************************************************************************************
//* 		FUNCIÓN QUE COMPRUEBA SI DOS FECHAS SON CORRECTAS EN LA PARTE DE HOTEL.
//***********************************************************************************************

function ComprobarDosFechasHotel (cadena1, cadena2)
// LA "cadena1" y "cadena2" VAN A TENER EL FORMATO dd-mm-aaaa
  {

    var dia1 = cadena1.substring(0,2);
    var mes1 = cadena1.substring(3,5);
    var anyo1 = cadena1.substring(6,10);

    var dia2 = cadena2.substring(0,2);
    var mes2 = cadena2.substring(3,5);
    var anyo2 = cadena2.substring(6,10);

    if ((dia2 == 'dd') || (mes2 == 'mm') || (anyo2 == 'aaaa'))
      {return false;}

    // QUITAMOS DE DIA Y MES EL 0 SI ES UN DIA/MES MENOR QUE 9.
    var cero = dia1.substring(0,1);
    if (cero == '0')
      {var dia1 = dia1.substring(1,2)};
    var cero = dia2.substring(0,1);
    if (cero == '0')
      {var dia2 = dia2.substring(1,2)};
    var cero = mes1.substring(0,1);
    if (cero == '0')
      {var mes1 = mes1.substring(1,2)};
    var cero = mes2.substring(0,1);
    if (cero == '0')
      {var mes2 = mes2.substring(1,2)};


    var anyo_dif = parseInt(anyo2) - parseInt(anyo1);
    if (anyo_dif < 0 )
      {return false;}

    var mes_dif = parseInt(mes2) - parseInt(mes1);
    if ((mes_dif < 0 ) && (anyo_dif <= 0))
      {return false;}

    var dia_dif = parseInt(dia2) - parseInt(dia1);
    if ((dia_dif <= 0) && (mes_dif <= 0 ) && (anyo_dif <= 0))
      {return false;}

    return true;
  }

//***********************************************************************************************
//* 			FUNCIÓN QUE COMPRUEBA SI DOS FECHAS SON CORRECTAS.
//***********************************************************************************************

function ComprobarDosFechas (cadena1, cadena2)
// LA "cadena1" y "cadena2" VAN A TENER EL FORMATO dd-mm-aaaa
  {
    var dia1 = cadena1.substring(0,2);
    var mes1 = cadena1.substring(3,5);
    var anyo1 = cadena1.substring(6,10);

    var dia2 = cadena2.substring(0,2);
    var mes2 = cadena2.substring(3,5);
    var anyo2 = cadena2.substring(6,10);

    if ((dia2 == 'dd') || (mes2 == 'mm') || (anyo2 == 'aaaa'))
      {return false;}

    // QUITAMOS DE DIA Y MES EL 0 SI ES UN DIA/MES MENOR QUE 9.
    var cero = dia1.substring(0,1);
    if (cero == '0')
      {var dia1 = dia1.substring(1,2)};
    var cero = dia2.substring(0,1);
    if (cero == '0')
      {var dia2 = dia2.substring(1,2)};
    var cero = mes1.substring(0,1);
    if (cero == '0')
      {var mes1 = mes1.substring(1,2)};
    var cero = mes2.substring(0,1);
    if (cero == '0')
      {var mes2 = mes2.substring(1,2)};


    var anyo_dif = parseInt(anyo2) - parseInt(anyo1);
    if (anyo_dif < 0 )
      {return false;}

    var mes_dif = parseInt(mes2) - parseInt(mes1);
    if ((mes_dif < 0 ) && (anyo_dif <= 0))
      {return false;}

    var dia_dif = parseInt(dia2) - parseInt(dia1);
    if ((dia_dif < 0) && (mes_dif <= 0 ) && (anyo_dif <= 0))
      {return false;}

    return true;
  }

//***********************************************************************************************
//* 			FUNCIÓN QUE COMPRUEBA SI EL AÑO ES BISIESTO.
//***********************************************************************************************

function EsBisiesto(anyo)
  {
    if(((anyo % 4 == 0) && (anyo % 100 != 0)) || (anyo % 400 == 0))
      return true;
    else
      return false;
  }

//***********************************************************************************************
//* 		FUNCIÓN QUE NOS DEVUELVE EL NÚMERO DE DIAS QUE NOS QUEDA.
//***********************************************************************************************

function CalcularDias(dias, meses, anyos)
  {
    days = new Date();
    gdate = days.getDate();
    gmonth = days.getMonth();
    gyear = days.getYear();

    if (document.layers) {
	gyear = gyear + 1900;
    }

    age = gyear - anyos;
    meses = parseInt(meses);

    if((meses == (gmonth + 1)) && (dias <= parseInt(gdate)))
      {age = age;}
    else
      {
	if(meses <= (gmonth))
	  {age = age;}
	else
	  {age = age - 1;}
      }
    if(age == 0)
      {age = age;}
    if(meses <= (gmonth + 1))
      {age = age - 1;}
    if((meses == (gmonth + 1)) && (dias > parseInt(gdate)))
      {age = age + 1;}
    var m;
    var n;
    if (meses == 12) {n = 31 - dias;}
    if (meses == 11) {n = 61 - dias;}
    if (meses == 10) {n = 92 - dias;}
    if (meses == 9) {n = 122 - dias;}
    if (meses == 8) {n = 153 - dias;}
    if (meses == 7) {n = 184 - dias;}
    if (meses == 6) {n = 214 - dias;}
    if (meses == 5) {n = 245 - dias;}
    if (meses == 4) {n = 275 - dias;}
    if (meses == 3) {n = 306 - dias;}
    if (meses == 2) {n = 334 - dias; if(EsBisiesto(anyos)) n = n + 1;}
    if (meses == 1) {n = 365 - dias; if (EsBisiesto(anyos)) n = n + 1;}
    if (gmonth == 0) m = 0;
    if (gmonth == 1) m = 31;
    if (gmonth == 2) {m = 59;   if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 3) {m = 90;   if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 4) {m = 120;  if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 5) {m = 151;  if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 6) {m = 181;  if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 7) {m = 212;  if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 8) {m = 243;  if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 9) {m = 273;  if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 10) {m = 304; if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 11) {m = 334; if (EsBisiesto(gyear)) m = m + 1;}
    if (gmonth == 12) {m = 365; if (EsBisiesto(gyear)) m = m + 1;}
    totdays = (parseInt(age) * 365);
    totdays += age / 4;
    totdays = parseInt(totdays) + gdate + m + n;
    var total_dias = Math.abs(totdays);
    return(total_dias);
  }

//***********************************************************************************************
//* 	FUNCIÓN QUE NOS SACA EN UN SELECT EL TIPO DE ENVIO,DEPENDIENDO DEL Nº DE DIAS.
//***********************************************************************************************

function Select_Mensajeria (dia, mes, anyo)
  {
    var mensajeria = CalcularDias(dia, mes, anyo);

    if (mensajeria > 7)
      {
        window.document.write("<option value = 1> Por correo certificado</option>");
        window.document.write("<option value = 2> Por mensajería</option>");
      }
    else
      {window.document.write("<option value = 2> Por mensajería</option>");}
  }

// *^****************************************************************
// FUNCIÓN QUE CONVIERTE A EUROS EL CAMPO DE TEXTO QUE LA INVOCA
// ******************************************************************

 function precioEuros (p, e) {
    var precio = document.formulario.precio.value;

    var campoPesetas = p;
    var campoEuros = e;

    if ((precio.indexOf(",") != -1) || (precio.indexOf(".") != -1)) {
	alert("El precio en pesetas solo puede contener números");
	campoEuros.value = "";
    	campoPesetas.value = "";
    } else {
    	var aux = precio / 166.386;
    	if (aux) {
    		var aux1 = Math.round(aux);
    		var aux2 = Math.round(((aux - aux1) * 100));
    		aux3 = aux1 + (aux2/100);
    		precio = aux3.toString();
    		var pos = precio.indexOf(".");
    		if (pos != -1) {
    		   vPrecio = precio.split(".");
		   precio = vPrecio[0] + "," + vPrecio[1];
    		} else {
    		   precio = aux3;
    		}
    		campoEuros.value = precio;
    	} else {
    		alert("El precio en pesetas solo puede contener números");
    		campoEuros.value = "";
    		campoPesetas.value = "";
    	}
    }
 }


// *****************************************************************
// FUNCIÓN QUE CONVIERTE A PESETAS EL CAMPO DE TEXTO QUE LA INVOCA
// *****************************************************************

 function precioPesetas (p, e) {
    var precio = document.formulario.precioeuros.value;
    var campoPesetas = p;
    var campoEuros = e;

    var pos = precio.indexOf(",");
    if (pos != -1) {
    	vPrecio = precio.split(",");
    	if (vPrecio.length == 2) {
    	   precio = vPrecio[0] + "." + vPrecio[1];
    	   var aux = precio * 166.386;
    	   if (aux) {
    	      campoPesetas.value = Math.round(aux);
    	   } else {
              alert("Error al introducir el precio en Euros");
              campoPesetas.value = "";
              campoEuros.value = "";
    	   }
    	} else {
           alert("Error al introducir el precio en Euros");
           campoPesetas.value = "";
           campoEuros.value = "";
    	}
    } else {
    	var aux = precio * 166.386;
    	if (aux) {
	  campoPesetas.value = Math.round(aux);
	} else {
           alert("Error al introducir el precio en Euros");
           campoPesetas.value = "";
           campoEuros.value = "";
	}
    }
 }

//***********************************************************************************************
//* 	FUNCIÓN QUE NOS SACA EN UN SELECT EL TIPO DE ENVIO,DEPENDIENDO DEL Nº DE DIAS.
//***********************************************************************************************

function Select_MensajeriaFecha (fecha)
  {

  	alert(fecha);
    /*var mensajeria = CalcularDias(dia, mes, anyo);

    if (mensajeria > 7)
      {
        window.document.write("<option value = 1> Por correo certificado</option>");
        window.document.write("<option value = 2> Por mensajería</option>");
      }
    else
      {window.document.write("<option value = 2> Por mensajería</option>");}
    */
  }
