var getCalendario = null;
var xmlCalendario = null;
var CualMes=0;

function CrearCalendario_mini(QueMes, QueAnio){
	var CualAnio;
	CualMes = QueMes;
	CualAnio = QueAnio;	
	setCal_mini(CualMes, QueAnio);
	
}

function bisiesto(Anio) {
	if (Anio % 4 == 0)
	return true
	return false
}

function diasPorMes(mes, Anio) {
var meses = new Array(12);
meses[1] = 31; // Enero
meses[2] = (((Anio % 4 == 0) && (Anio % 100 != 0)) || (Anio % 400 == 0)) ? 29 : 28;
meses[3] = 31; // Marzo
meses[4] = 30; // Abril
meses[5] = 31; // Mayo
meses[6] = 30; // Junio
meses[7] = 31; // Julio
meses[8] = 31; // Agosto
meses[9] = 30; // Septiembre
meses[10] = 31; // Octubre
meses[11] = 30; // Noviembre
meses[12] = 31; // Diciembre
return meses[mes];
}

function getNombreDelMes(mes) {
var meses = new Array(12);
meses[1] = "Gener";
meses[2] = "Febrer";
meses[3] = "Març";
meses[4] = "Abril";
meses[5] = "Maig";
meses[6] = "Juny";
meses[7] = "Juliol";
meses[8] = "Agost";
meses[9] = "Setembre";
meses[10] = "Octubre";
meses[11] = "Novembre";
meses[12] = "Desembre";
return meses[mes];
}

function setCal_mini(QueMes, QueAnio) {
	var now = new Date();
	
	if ( QueAnio == "" )	{
		var anio = now.getYear();
	}	else	{
		var anio = QueAnio;
	}
	
	if (anio < 1000) {	anio+=1900	}
	var mes = now.getMonth() + QueMes
	//alert (mes);	
	//if (now.getMonth() + QueMes > 11) {	mes-=12; anio++;	}
	//if (now.getMonth() + QueMes < 0) {	mes+=12; anio--;	}
	
	if ( QueMes > 0 && QueMes < 13 )	{
		mes = QueMes - 1;
	}
		
	var fecha = now.getDate();
	var primerDia = new Date(anio, mes, 1);
	var primerDia2 = primerDia.getDay();
	primerDia = null;
	var dias = diasPorMes(mes+1, anio);
	queryActiv_mini (mes+1, anio, primerDia2+1, dias, fecha);
	//drawCal(primerDia2 + 1, dias, fecha, mes+1, anio);
}

function isInArray(value, arrElem) {	
	for (i=0; i < arrElem.length; i++) {
		if (arrElem[i] == value) {
			return true;
		}
	}
	return false;
}

function drawCal_mini(firstDay, lastDate, date, Mes, Anio, activitats) {	
	var now = new Date();
	var codigo = "";
	var elmes = Mes;
	var antmes = Mes - 1;
	var sigmes = Mes + 1;
	var elanio = Anio;
	var siganio = Anio;
	var antanio = Anio;
	//activitats = "2009-10-21|2009-10-25";
	// BEGIN: guardem dies del mes a mostrar	
	var datesElem = new Array();	
	//activitats = activitats.toString();
	if ( activitats.toString().indexOf('|') == -1 ) {		
		datesElem[0] = activitats.toString();
	} else {		
		datesElem = activitats.toString().split('|');
	}
	
	var diesElem = new Array(); // guardem els dies amb activitats*/	
	
	for (i=0; i < datesElem.length; i++) {
		datesElemDiv = datesElem[i].split('-');
		diesElem[i] = datesElemDiv[2];
	}
	// END: guardem dies del mes a mostrar
	
	//alert (firstDay);
	if ( antmes == 0 )	{
		antmes = 12;
		antanio -= 1;
	}
	if ( sigmes == 13 )	{
		sigmes = 1;
		siganio += 1;
	}
	
	codigo += '<table class="calendarTableTop" cellpadding="0" cellspacing="0">';
	//codigo += '<tr><td colspan="9" class="caltancar">&nbsp;<img class="imgform" src="img/smallclose.jpg" onClick="showCAL(2);" alt="tancar" title="Oculta calendari"></td></tr>';
	codigo += '<tr>';
	codigo += '<td class="calendarLeftButton"><span onClick="CrearCalendario_mini(' + elmes + ', ' + (elanio - 1) + ');">  <img src="images/images_calendar/last_year.png" alt="ant any" title="any anterior"></span></td>';
	codigo += '<td class="calendarLeftButton"><span onClick="CrearCalendario_mini(' + antmes + ', ' + antanio + ');"><img src="images/images_calendar/last_month.png" alt="ant mes" title="mes anterior"></span></td>';
	codigo += '<td class="calendarMonth" colspan="5">' + getNombreDelMes(Mes) + ' ' + Anio; + '</td>'
	codigo += '<td class="calendarRightButton"><span onClick="CrearCalendario_mini(' + sigmes + ', ' +  siganio + ');"><img src="images/images_calendar/next_month.png" alt="seg mes" title="mes següent"></span></td>';
	codigo += '<td class="calendarRightButton"><span onClick="CrearCalendario_mini(' + elmes + ', ' +  (elanio + 1) + ');"><img src="images/images_calendar/next_year.png" alt="seg any" title="any següent"></span></td>';
	codigo += '</tr>';
	codigo += '</table>';
	
	var diasSemana = new Array(7)
	
	diasSemana[1] = "<acronym title=\"Dilluns\">Dl</acronym>"
	diasSemana[2] = "<acronym title=\"Dimarts\">Dm</acronym>"
	diasSemana[3] = "<acronym title=\"Dimecres\">Dx</acronym>"
	diasSemana[4] = "<acronym title=\"Dijous\">Dj</acronym>"
	diasSemana[5] = "<acronym title=\"Divendres\">Dv</acronym>"
	diasSemana[6] = "<acronym title=\"Dissabte\">Ds</acronym>"
	diasSemana[7] = "<acronym title=\"Diumenge\">Dm</acronym>"
	
	codigo += '<table class="calendarTableDays" cellpadding="0" cellspacing="0">';
	codigo += '<tr>'
	for (var dayNum = 1; dayNum < 8; ++dayNum) {
		codigo += '<td class="caldiasetmana">' + diasSemana[dayNum] + '</td>' 
	}
	codigo += '</tr>'
	
	var cDia = 1;
	var curCell = 1;
	
	if ( firstDay == 1 )	{	firstDay = 8;	}
	for (var row = 1; row <= Math.ceil((lastDate + firstDay - 1) / 7); ++row) {
		codigo += '<tr>';
		for (var col = 1; col <= 7; ++col) {
			if (cDia > lastDate)
				break;
			if (curCell < firstDay - 1 ) {
				codigo += '<td class="calendarCellNoLine"></td>';
				curCell++;
			} else {
				//var dataesp = String(cDia) + "/" + String(Mes) + "/" + String(Anio);
				//alert(dataesp);
				var textoCelda = cDia;
				//var datasql = String(Anio) + "-" + String(Mes) + "-" + String(cDia);
				
				if ( isInArray(cDia, diesElem) ) {
					var datasql = String(Anio) + "-" + String(Mes) + "-" + String(cDia);
					var textoTd = '<td title="Cliqueu per més info" class="calendarCellLineEvent" onClick="window.open(' + String.fromCharCode(39)  + 'activitats.php?d=' + datasql + String.fromCharCode(39) + ', ' + String.fromCharCode(39) + '_self' + String.fromCharCode(39) + ');">';
				} else {
				
					var textoTd = '<td class="calendarCellLine">';
					
					if (cDia == date && Mes == now.getMonth()+1 && Anio == now.getFullYear()) {
						textoTd = '<td class="calendarCellToday">';
					}
				}

				codigo += textoTd + textoCelda + '</td>';
				cDia++;
			}
		}
		codigo += '</tr>';
	}
	var dataavui = date + "/" + (now.getMonth()+1) + "/" + now.getFullYear();
	codigo += '<tr><td colspan="9" class="calendarTodayTxt" onClick="CrearCalendario_mini(0,' +  now.getYear() + ');" title="Data avui"><strong>Avui:</strong> ' + dataavui + '</td></tr>';
	codigo += '</table>';
	
	codigo = '<div id="preloader_mini"></div>' + codigo;
	document.getElementById("calendari_mini").innerHTML=codigo;
	
}
