//Valida fecha dd/MM/yyyy
function validaFecha( strValue ) {
  var objRegExp = /^\d{2}\/\d{2}\/\d{4}$/
  if(!objRegExp.test(strValue))
    return false;
  else {
    var arrayDate = strValue.split('/');
    var arrayLookup = { '01' : 31,'03' : 31, '04' : 30,'05' : 31,'06' : 30,'07' : 31,'08' : 31,'09' : 30,'10' : 31,'11' : 30,'12' : 31}
    var intDay = parseInt(arrayDate[0],10);
    if(arrayLookup[arrayDate[1]] != null) {
      if(intDay <= arrayLookup[arrayDate[1]] && intDay != 0)
        return true;
    }
    var intMonth = parseInt(arrayDate[1],10);
    if (intMonth == 2) { 
       var intYear = parseInt(arrayDate[2],10);
		if( ((intYear % 4 == 0 && intDay <= 29) || (intYear % 4 != 0 && intDay <=28)) && intDay !=0)
          return true;
       }
  }
  return false;
}
function refrescarFechaEntrada(){
   document.getElementById("PASO1_FECHADESDE").value=document.getElementById("diaEntrada").value + "/" + document.getElementById("mesEntrada").value + "/" + document.getElementById("anoEntrada").value;
   //document.getElementById("PASO1_FECHASALIDA").value=addDiasAFecha(document.getElementById("PASO1_FECHADESDE").value,1)
   }
function irAReservar(){
			document.elForm.submit();
		}
		
//=======================================================================
//Función para formatear los números en javascript
//=======================================================================
//Objeto oNumero
function oNumero(numero){
  //Propiedades 
  this.valor = numero || 0
  this.dec = -1;
  this.separadorMiles='.';
  this.separadorDecimales=',';
  //Métodos 
  this.formato = numFormat;
  this.ponValor = ponValor;
  //Definición de los métodos 

  function ponValor(cad){
    if (cad =='-' || cad=='+') return
    if (cad.length ==0) return
    if (cad.indexOf('.') >=0)
        this.valor = parseFloat(cad);
    else 
        this.valor = parseInt(cad);
  } 

  function numFormat(dec, miles){
    var num = this.valor, signo=3, expr;
    var cad = ""+this.valor;
    var ceros = "", pos, pdec, i;
    for (i=0; i < dec; i++)
    ceros += '0';
    pos = cad.indexOf('.')
    if (pos < 0)
      cad = cad+"."+ceros;
    else{
      pdec = cad.length - pos -1;
      if (pdec <= dec){
        for (i=0; i< (dec-pdec); i++)
          cad += '0';
      }else{
        num = num*Math.pow(10, dec);
        num = Math.round(num);
        num = num/Math.pow(10, dec);
        cad = new String(num);
      }
    }
    pos = cad.indexOf('.')
    if (pos < 0) pos = cad.lentgh
    if (cad.substr(0,1)=='-' || cad.substr(0,1) == '+') 
           signo = 4;
    if (miles && (pos > signo))
        do{
          expr = /([+-]?\d)(\d{3}[\.\,]\d*)/
          cad.match(expr)
          cad=cad.replace(expr, RegExp.$1+','+RegExp.$2)
        }while (cad.indexOf(',') > signo)
    
    if (dec<0) cad = cad.replace(/\./,'')	
	cad=reemplazaTodo(cad,",","m");
	cad=reemplazaTodo(cad,".",",");
	cad=reemplazaTodo(cad,"m",".");
    return cad;
  }
}//Fin del objeto oNumero:
//=======================================================================

//==========================================================================================
// Reemplaza un texto dentro de otra cadena. Mejora le funcion replace de JavaScript
//==========================================================================================
function reemplazaTodo(cadena,original,cambio){
	var strFinal,i,caracter;
	strFinal=cadena;
  while(strFinal.indexOf(original)>-1){
     strFinal=strFinal.replace(original,cambio); 
  }
	return strFinal;
}



//Actualiza los precios cuando elegimos los suplementos.
function actualizarPrecios(spanID,pulsado){
	//var valor=check.value.split("-");
	var spanAct=document.getElementById("precioTotal");
	var precioAux, numNoches;
	
	precioTotal=precioTotalInicial;
	
	for(i=0;i<document.forms[0].length;i++){
		//compruebo que sea uno de los check de suplementos
		if(document.forms[0].elements[i].id.indexOf("chkSuplemento")>=0){
			var check=document.forms[0].elements[i];
			var valor=check.value.split("-");
			numNoches=parseInt(valor[2]);
			//compruebo que exista el control
			if(check){
				if(check.checked==true){
					precioTotal+=parseFloat(valor[1]) * numNoches;
				}else if(check.checked==false && check.id==pulsado.id){
					precioTotal+=parseFloat(valor[1]) * numNoches;
					precioTotal-=parseFloat(valor[1]) * numNoches;
				}
			}
		}
	}

	if(precioTotal<precioTotalInicial)
		precioTotal=precioTotalInicial;			

	/*var numero = new oNumero(precioTotal);
	precioAux=numero.formato(2, true);*/

    var numero = parseFloat(precioTotal).toFixed(2);
    precioAux = numero.replace(".", ",");

	if(spanAct){spanAct.innerHTML=precioAux + " &euro;";}
}

function suscribirBoletin() {
    if (document.forms["frmNewsLetter"])
        document.forms["frmNewsLetter"].submit();
}
