var AJAX = '/ajax/ajax.php';
var mes_actual;
var any_actual;
var lloc;

function buildCal( mes, any )
{
	m = mes;
	y = any;
	
	lloc = $('#ipt-lloc').val();

	$.getJSON( AJAX, { mes: m, any: y, lloc: lloc, accio: 'cerca' },
	function( resposta )
	{
		var dies_actes = new Array();
	
		for( var i = 1; i <= 31; i++ )
		{
			dies_actes[i] = false;
		}
	
		if( resposta.dies )
		{
			for(var i = 0; i < resposta.total; i++)
			{
				dies_actes[resposta.dies[i]] = true;
			}
		}
		
		mes_actual = m;
		any_actual = y;
	
		var mn=['GENER','FEBRER','MARÇ','ABRIL','MAIG','JUNY','JULIOL','AGOST','SETEMBRE','OCTUBRE','NOVEMBRE','DESEMBRE'];
		var dies=['dl','dt','dc','dj','dv','ds','dg'];
		var dim=[31,0,31,30,31,30,31,31,30,31,30,31]; /* dies dels mesos */
		var dim_ant=[31,31,0,31,30,31,30,31,31,30,31,30]; /* dies dels mesos anteriors */
		var dim_seg=[0,31,30,31,30,31,31,30,31,30,31,31]; /* dies dels mesos posteriors */
	
		var oD = new Date(y, m-1, 1);
		oD.od = oD.getDay(); /* dia de la setmana 0 - dg, 6 - ds */
	
		var data_avui = new Date();
		var avui = (y == data_avui.getFullYear() && m == data_avui.getMonth() + 1) ? data_avui.getDate() : 0;
		var setmana_avui = parseInt( (avui-1) / 7 ) + 1; /* la setmana del dia d'avui, més una setmana del mes anterior */
		setmana_actual = setmana_avui;
		
		// dies que té el febrer
		dim[1] = (((oD.getFullYear()%100!=0)&&(oD.getFullYear()%4==0))||(oD.getFullYear()%400==0))?29:28;
		dim_ant[2] = dim[1];
		dim_seg[0] = dim[1];


		var html = '<table><tr><td width="20" align="center">';
		
		if( resposta.mes_ant )
			html += '	<a onclick="mes_anterior();"><img src="/img/navegacio/fletxa_n_e.gif" alt="fletxa" /></a>';
		
		
		html += '</td><td style="text-align: center">';
		html += '	<a href="/agenda/'+ y +'/'+ m +'">'+mn[m-1]+' '+y+'</a>';
		html += '</td><td>';
		
		if( resposta.mes_ant )
			html += '	<a onclick="mes_seguent();"><img src="/img/navegacio/fletxa_n_d.gif" alt="fletxa" /></a>';
		
		html += '</td></tr></table>';
		
		html += '<table class="calendari" cols="7" cellpadding="3" cellspacing="0">';
		html += '<tr class="cal_cap_dia">';
		
		for( s = 0; s < 7; s++ )
			html += '<td class="">'+dies[s]+'</td>';
		
		html += '</tr><tr>';
		
		var dia = 1;
		var setmana = 0;
		var classes = '';
		
		/* posa els dies del mes anterior */
		for( i = ( dim_ant[m-1] - 7 - oD.od + 2 ); i <= dim_ant[m-1]; i++ )
		{
			html += '<td></td>';
			if( dia%7 == 0 )
			{
				html += '</tr><tr>';
				setmana++;
			}
			dia++;
		}

	
		html += '<table class="calendari" cols="7" cellpadding="3" cellspacing="0">';
		
		var dia = 1;
		var setmana = 0;
		var classes = '';
		
		/* posa els dies del mes anterior */
		for( i = ( dim_ant[m-1] - 7 - oD.od + 2 ); i <= dim_ant[m-1]; i++ )
		{
			html += '<td></td>';
			if( dia%7 == 0 )
			{
				html += '</tr><tr>';
				setmana++;
			}
			dia++;
		}
		for( i = 1; i <= dim[m-1]; i++ )
		{
			classes = '';
			var x = i;
			
			if( dia%7 == 0 ) classes += 'cal_festa';
			
			if( setmana == setmana_actual )
			{
				if( classes != '' ) classes += ' ';
				if( dia%7 == 0 ) classes += 'cal_festa';
			}
	
			if( x == avui )
			{
				if( classes != '' ) classes += ' ';
				classes += 'cal_avui';
			}
	
			if( dies_actes[x] == true )
			{
				classes += ' activat';
				html += '<td class="'+ classes +'"><a href="/cercar.php?lloc='+ lloc +'&dia='+ x +'&mes='+ m +'&any='+ y +'" style="color: #000">' + x + '</a></td>';
			}
			else
				html += '<td class="'+ classes +'" unselectable="on">' + x + '</td>';
	
			if( dia%7 == 0 )
			{
				html += '</tr><tr>';
				setmana++;
			}
			dia++;
		}
		var ultim_dia = oD.od + dim[m-1]%7;
		
		
		for( i = 1; i < 14 - ultim_dia + 2; i++ )
		{
			html += '<td></td>';
			if( dia%7 == 0 )
			{
				html += '</tr><tr>';
				setmana++;
			}
			dia++;
		}
		
		html += '</tr></table>';
		
		$('#calendari').html( html );
	});
}

function selecciona_mes()
{

}
function mes_anterior()
{
	if( mes_actual == 1 )
	{
		mes_actual = 12;
		any_actual--;
	}
	else mes_actual--;
	
	lloc = $('#ipt-lloc').val();
	
	buildCal( mes_actual, any_actual, lloc );
	
}
function mes_seguent()
{
	if( mes_actual == 12 )
	{
		mes_actual = 1;
		any_actual++;
	}
	else mes_actual++;
	
	lloc = $('#ipt-lloc').val();
	
	buildCal( mes_actual, any_actual, lloc );
}

