/**
* Verifica si un año es bisiesto
* 
* @param year año a verificar
*
* @return 1 es visiesto 0 no lo es.
*/
function checkYear(year) 
{ 
	return (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) ? 1 : 0;
}	


/**
* Dibuja un mes desterminado
*
* @param mes mes que se desea mostrar
* @param anyo año que se desea mostrar
*/
function dibujarMes(mes, anyo)
{
	var NombreMes	= new Array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre');
	var DiasMeses 	= new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	var NumeroSemanas = 0; //El numero de semanas que van  a ser dibujadas

	var Fecha = new Date(anyo,mes,'1');

	if ( checkYear(Fecha.getFullYear()) )
	{
		DiasMeses[1] = 29;
	}
		
	OrdenDia = Fecha.getDay();
	if(OrdenDia == 0)
	{
		OrdenDia = 7;
	}
	--OrdenDia;
	
	//Escribimos el nombre del mes
	document.getElementById("NombreMes").innerHTML = NombreMes[mes]+" "+anyo;
	
	
	//Ponemos el primer dia 
	var Cadena = '';
	var DiaSemana = 0;
	for (Cont=0 ; Cont<OrdenDia ; ++Cont)
	{
		Cadena = Cadena + '<div class="bloque_dia" >&nbsp;&nbsp;</div>';
		if (DiaSemana==6)
		{
			if (Cont!=DiasMeses[mes] )//Hay salto de linea siempre y cuando el domingo no se ultimo día de mes
			{
				Cadena = Cadena + '<div  style="clear:left;"></div>';
				DiaSemana = 0;
				++NumeroSemanas;						
			}
		}
		else
		{
			++DiaSemana;
		}			
	}
	
	for (Cont=1 ; Cont<=DiasMeses[mes] ; ++Cont)
	{
		NumeroDia = Cont;
		Cadena = Cadena + '<div class="bloque_dia"  id="'+NumeroDia+'">'+NumeroDia+'</div>';
		if (DiaSemana==6)
		{
			if (Cont!=DiasMeses[mes] )//Hay salto de linea siempre y cuando el domingo no se ultimo día de mes
			{
				Cadena = Cadena + '<div style="clear:left;height: 0em;"></div>';
				DiaSemana = 0;
				++NumeroSemanas ;						
			}
		}
		else
		{
			++DiaSemana;
		}			
	}
	
	if(NumeroSemanas == 5) //Si el mes tiene menos de 6 semanas dibujamos una linea mas
	{
		Cadena = Cadena + '<div  style="clear:left;"></div>&nbsp;';
	}
	if(NumeroSemanas == 4) //Si el mes tiene menos de 6 semanas dibujamos una linea mas
	{
		Cadena = Cadena + '<div  style="clear:left;"></div>&nbsp;';
		Cadena = Cadena + '<div  style="clear:left;"></div>&nbsp;';
	}
	document.getElementById("CalDis").innerHTML = Cadena;
	
	//Si el mes es el mismo que actual no tiene que dejar seguir navegando hacia atrás
	var FechaHoy = new Date();
	try
	{
		if (mes == FechaHoy.getMonth() && anyo == FechaHoy.getFullYear())
		{
			document.getElementById('fecha_calendario_retrasar').style.visibility = "hidden";
		}
		else
		{
			document.getElementById('fecha_calendario_retrasar').style.visibility = "visible";
		}	
	}
	catch(e)
	{
	}
}
