

var carpetaPrincipal = "";



var Meses = new Array('Janvier', 'Fevrier', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Aout', 'Septembre', 'Octobre', 'Novembre', 'Decembre');

var Dias = new Array ('Dimanche','Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');

var Dias_Mes = new Array(31,28,31,30,31,30,31,31,30,31,30,31);



Lista_Meses_Anios();

procesar();



function fechaAnumero (dia, mes, anio)

{   

    if(dia < 10) fecDia="0"+dia;

	else	fecDia=dia;            

    if(mes < 10) fecMes="0"+mes;	

	else	fecMes=mes;            

    fecha = anio+fecMes+fecDia;

    valor = parseInt(fecha); 

    return valor;

}



function Lista_Meses_Anios() //Funcion que añade las diferentes opciones a la lista de meses

{

	var i, longitud;

	for (i=0; i<Meses.length; i++)

  	{

  		longitud = window.document.formulario1.Mes.length;

  		window.document.formulario1.Mes[longitud] = new Option(Meses[i], i,"","");

  	}	

	selecMes = new Date().getMonth();

	window.document.formulario1.Mes.selectedIndex=selecMes;	//Se selecciona el mes actual

	

	year = new Date().getFullYear();	

	for (i=year; i<year+4; i++)

  	{

  		longitud = window.document.formulario1.Anio.length;

  		window.document.formulario1.Anio[longitud] = new Option(i, i,"","");

  	}	

	window.document.formulario1.Anio.selectedIndex = 0;

}



function Bisiesto(year) 

{

	if ((year % 4 == 0) && (( year % 100 != 0) || (year % 400 ==0)))

		  return true;

	else

  		  return false;

}



function getDays(month, year)

{

	if (Bisiesto(year)) 

  		Dias_Mes[1]=29;			 // solo para Febrero

	else

  		Dias_Mes[1]=28;

	return Dias_Mes[month];

}



function muestra()

{

	  try 

	  {

		  eval(request.responseText);

		  if (correctoPhp)

		  {	  

			  crearCalendarioHtml(fieldList);

			  mostrarInfoProcesar();					  

		  }

	  }

	  catch (err)

	  {	  

			window.document.getElementById('calendario').innerHTML="<table class='copyright'><tr><td height=\"59\" align='center'style='font-size:12px; color: #CC3333;'>Veuillez nous contacter à<br>CheminDesIncas.com</td></tr><tr><td align='center' style='font-size:14px;'><br>Temporairement vérifier les permis pour les mois suivants et procéder à la réservation:<br><br><a href='http://www.incatrailreservations.com/forms/inca-trail-booking.php'><u style='font-size:16px;'>Click here to Book the Inca Trail Now</u></a></td></tr></table>";

	  }



}



function crearCalendarioHtml(fieldList)

{

	  var Contenido ="<table class='copyright' border=1 cellpadding=1 cellspacing=0><tr>";

	  var fecha;

	  var dias_mes;

	  var j=1;

	  fecha=new Date(parseInt(window.document.formulario1.Anio.value),parseInt(window.document.formulario1.Mes.value),1);

	  dias_mes=getDays(fecha.getMonth(), fecha.getFullYear());

	   

	  for (i=0;i<7;i++)

		 Contenido=Contenido + "<th>" + Dias[i] + "</th>";

	  Contenido=Contenido+ "</tr><tr>";

	  for (i=0; i<fecha.getDay();i++)

		 Contenido=Contenido+ "<td></td>";

	  for (i=fecha.getDay();i<7;j++,i++)

	  {

 	 	 capacidad =  fieldList[j-1];

		 Contenido=Contenido+ tableAsLink(capacidad,j-1);		

	  }

	

	  while (j<=dias_mes)

	  {

		 Contenido=Contenido+"</tr><tr>"

		 for (i=0; i<7 & j<=dias_mes; j++,i++)

		 {

			 capacidad =  fieldList[j-1];			 

			 Contenido=Contenido+ tableAsLink(capacidad,j-1);			

		 }

	  }

	  Contenido=Contenido+"</tr></table>";

	  window.document.getElementById('calendario').innerHTML=Contenido;

}



function submitFormulario(anio, mes, dia, type)

{	

	mesStr = "";

	dayStr = "";	

	if (mes < 10) 	mesStr = "0"+mes;

	else		mesStr = mes;

	if (dia < 10) 	dayStr = "0"+dia;			

	else		dayStr = dia;

	document.getElementById("fecha").value = anio+"-"+mesStr+"-"+dayStr;

	

	

	typeStr = "NoDiscount";

	if (type == 2)

		typeStr = "Discount";

	document.getElementById("tipoGrupo").value = typeStr;

	

	

	document.formulario1.submit();

}



function tableAsLink(dispo, day)

{

	cadena = "<td align='center' width=90 height=60 "; 

	discount = "";

	day = day+1;

	if (dispo != 3)	

	{

		mesNro = parseInt(document.getElementById("Mes").value) + 1;	

		cadena = cadena+" style=\"cursor:pointer;\" onmouseover= \"this.style.backgroundColor = '#CEF9C1'\" onmouseout=\"this.style.backgroundColor = '#FFFFFF'\" onclick=\"submitFormulario(document.getElementById('Anio').value,"+mesNro+","+day+","+dispo+")\"><span style='font-weight: bold;'>"+day+"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>";

		if (dispo == 2)

		{

			discount = "Available with discount";					

			picture = 'star.jpg';

		}

		if (dispo == 1)

		{

			discount = "Disponible";		

			picture = 'check.jpg';

		}

		capacidadStr = "<br><img src='"+getURL()+ carpetaPrincipal+"/salcantay/salidas_paquetes/calendario_salidas/images/"+picture+"' alt='Inscrire'><br><span style='font-size: 12px'>"+discount+"</span><br><span style='font-weight: bold;'>S'inscrire<span/>";		

	}

	else

	{

		cadena = cadena+" onmouseover= \"this.style.backgroundColor = '#EED5B7'\" onmouseout=\"this.style.backgroundColor = '#FFFFFF'\" ><span style='font-weight: bold;'>"+day+"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>";

	 	capacidadStr = "<br><img src='"+getURL()+ carpetaPrincipal+"/salcantay/salidas_paquetes/calendario_salidas/images/bad.jpg' alt='epuise'><br><br><span style='color: #CC3333;'>Pas disponible<span/>";		

	}

	cadena = cadena+capacidadStr+"</td>";	

	return cadena;	

}



function procesar()

{   

	bloquear();

	mesNro = parseInt(document.getElementById("Mes").value)+1;

	urlLink = "&Mes="+mesNro+"&Anio="+document.getElementById("Anio").value; 

    urlLink = getURL() + carpetaPrincipal +'/salcantay/salidas_paquetes/calendario_salidas/php/result_array_ajax_salidas.php?' + urlLink; 

    Ajax (urlLink,muestra);

}



function getURL()

{

 	 urlMain = window.location.href;

 	 pos = urlMain.indexOf(carpetaPrincipal);    

  	 return urlMain.substr(0,pos); 

}



function innerTexto(idElement, stringInner)

{

	if(document.all)

		document.getElementById(idElement).innerText = stringInner;

	else	

		document.getElementById(idElement).textContent = stringInner;			

}



function bloquear()

{

	document.getElementById("Mes").disabled = true;

	document.getElementById("Anio").disabled = true;

	document.getElementById("calendario").innerHTML = 

	"<table class='copyright'><tr><td align='center'  style='font-size:12px; font-weight:bold'>Chargement...<br>CheminDesIncas.com<br>est en cours de recherche</td></tr></table>"

	innerTexto('fechaHoraActual','');

	innerTexto('tituloMes','');

}



function restaurar()

{

	document.getElementById("Mes").disabled = false;

	document.getElementById("Anio").disabled = false;

}



function mostrarInfoProcesar()

{   

	restaurar();

	ahora = new Date();  

	hour   = ahora.getHours();

    minute = ahora.getMinutes();

    second = ahora.getSeconds();

	if (hour   < 10)  hour   = "0" + hour;   

    if (minute < 10)  minute = "0" + minute; 

    if (second < 10)  second = "0" + second; 

    timeString = hour + ' : ' + minute + ' : ' + second;

	m = document.getElementById("Mes");		

	document.getElementById("fechaHoraActual").innerHTML = 'Mise &agrave; jour  &rarr;&nbsp;&nbsp;&nbsp;&nbsp;'+m[ahora.getMonth()].text+" "+ahora.getDate()+", "+ahora.getFullYear()+" at "+timeString;

	document.getElementById('tituloMes').innerHTML = splitVerticalText(m[m.selectedIndex].text+"  "+document.getElementById("Anio").value);

} 



function splitVerticalText(string)

{

	cadenaVertical = "";

	for( x = 0; x < string.length; x++)	

		cadenaVertical = cadenaVertical+string.charAt(x).toUpperCase()+"<br>"; 

	return cadenaVertical;

}



var request;     



function Ajax(url, funcion)

{

    if (window.XMLHttpRequest)    // Mozilla, IE7, Safari, etc

        request = new XMLHttpRequest();    

    

    if (window.ActiveXObject)     // IE5, IE6

        request = new ActiveXObject ("Microsoft.XMLHTTP");

    

    request.onreadystatechange = 

              function ()

              {

                  if(request.readyState == 4) // Conexion OK

                  {

                       if(request.status == 200)   // Hay respuesta del servidor      

                       {

                            funcion.call();

                       }

                   }

              };

    request.open("POST",url,true);          

    request.send(null);

    return this;

}


