var getCalendarioP = null;
var xmlCalendarioP = null;
var CualMesP=0;
var CualAnio=110; //2010

function CrearCalendarioP(QueMes){
	
	if (window.XMLHttpRequest){
		getCalendarioP=new XMLHttpRequest()
	}else if (window.ActiveXObject){
		getCalendarioP=new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (getCalendarioP){
		var url="calendariogrande.xml";
		getCalendarioP.onreadystatechange=CambioDeEstadoP;
		getCalendarioP.open("GET",url,true);
		getCalendarioP.send(null);
		CualMesP=QueMes;
	}else{
		alert ("Tu explorador no soporta XMLHttpRequest");
	}
}

/**** Merce: aņadida para seleccionar el mes y el aņo sin depender del actual ***/

function CrearCalendarioP(QueMes,QueAnio){
	if (window.XMLHttpRequest){
		getCalendarioP=new XMLHttpRequest()
	}else if (window.ActiveXObject){
		getCalendarioP=new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (getCalendarioP){
		var url="calendariogrande.xml";
		getCalendarioP.onreadystatechange=CambioDeEstadoP;
		getCalendarioP.open("GET",url,true);
		getCalendarioP.send(null);
		CualMesP=QueMes;
		CualAnio=QueAnio;
	}else{
		alert ("Tu explorador no soporta XMLHttpRequest");
	}
}

/** fin aņadido **/

function CambioDeEstadoP(){
	if (getCalendarioP.readyState == 4){
		xmlCalendarioP = getCalendarioP.responseXML;
		xmlCalendarioP = xmlCalendarioP.getElementsByTagName('cita');
		//setCal(CualMes);
		setCalP(CualMesP,CualAnio); // modificado Merce
	} 
} 

function bisiestoP(Anio) {
	if (Anio % 4 == 0)
	return true
	return false
}

function diasPorMesP(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 getNombreDelMesP(mes) {
var meses = new Array(12)
meses[1] = "Enero"
meses[2] = "Febrero"
meses[3] = "Marzo"
meses[4] = "Abril"
meses[5] = "Mayo"
meses[6] = "Junio"
meses[7] = "Julio"
meses[8] = "Agosto"
meses[9] = "Septiembre"
meses[10] = "Octubre"
meses[11] = "Noviembre"
meses[12] = "Diciembre"
return meses[mes]
}

function setCalP(QueMes) {
	var now = new Date()
	var anio = now.getYear()
	if (anio < 1000) {anio+=1900}
	var mes = now.getMonth()+QueMes
	if (now.getMonth()+QueMes > 11) {mes-=12;anio++}
	if (now.getMonth()+QueMes < 0) {mes+=12;anio--}
	var fecha = now.getDate()
	var primerDia = new Date(anio, mes, 1)
	var primerDia2 = primerDia.getDay()
	if (primerDia2 == 0) primerDia2 = 7    //pq falla los meses que comienzan en domingo
	primerDia = null
	var dias = diasPorMesP(mes+1, anio)
	drawCalP(primerDia2, dias, fecha, mes+1, anio)
}

/** aņadido **/
function setCalP(QueMes,QueAnio) {
	var now = new Date()
	var anio = QueAnio
	if (anio < 1000) {anio+=1900}
	var mes = QueMes
	if (QueMes > 11) {mes-=12;anio++}
	if (QueMes < 0) {mes+=12;anio--}
	var fecha = now.getDate()
	var primerDia = new Date(anio, mes, 1)
	var primerDia2 = primerDia.getDay()
	if (primerDia2 == 0) primerDia2 = 7    //pq falla los meses que comienzan en domingo
	primerDia = null
	var dias = diasPorMesP(mes+1, anio)
	drawCalP(primerDia2, dias, fecha, mes+1, anio)
}

/* fin aņadido **/

function drawCalP(firstDay, lastDate, date, Mes, Anio) {
var now = new Date()
var codigo = ""
codigo += '<table class="tabla">'
codigo += '<tr><td class="encabezado" colspan="7"><table width="100%"><tr><td class="encabezado"><a href="#" onclick="CrearCalendarioP(--MesSeleccionadoP, AnioSeleccionadoP)">&lt;</a></td><td width="70%" class="encabezado">'
codigo += getNombreDelMesP(Mes) + ' ' + Anio 
codigo += '</td><td class="encabezado"><a href="#" onclick="CrearCalendarioP(++MesSeleccionadoP, AnioSeleccionadoP)">&gt;</a></td></tr></table></td></tr>'

var diasSemanaP = new Array(7)
diasSemanaP[0] = "<acronym title=\"Lunes\">L</acronym>"
diasSemanaP[1] = "<acronym title=\"Martes\">M</acronym>"
diasSemanaP[2] = "<acronym title=\"Miercoles\">M</acronym>"
diasSemanaP[3] = "<acronym title=\"Jueves\">J</acronym>"
diasSemanaP[4] = "<acronym title=\"Viernes\">V</acronym>"
diasSemanaP[5] = "<acronym title=\"Sabado\">S</acronym>"
diasSemanaP[6] = "<acronym title=\"Domingo\">D</acronym>"

codigo += '<tr>'
for (var dayNum = 0; dayNum < 7; ++dayNum) {
codigo += '<td class="celdaDiaSemana">' + diasSemanaP[dayNum] + '</td>' 
}
codigo += '</tr>'

var cDia = 1
var curCell = 1

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) {
codigo += '<td></td>';
curCell++
} else {
var textoCelda = cDia;

var textoTd = '<td class="celda">'

for (i=0;i<xmlCalendarioP.length;i++){
	
	var fecha = xmlCalendarioP[i].getAttribute('fecha');
	var fecha2 = cDia+"-"+Mes+"-"+Anio;
	//alert(fecha+" = "+fecha2);
	if (fecha == fecha2){
		//alert(fecha+" = "+fecha2);
		var titulo = xmlCalendarioP[i].getAttribute('titulo');
		//var descripcion = xmlCalendarioP[i].getAttribute('descripcion');
		var url = xmlCalendarioP[i].getAttribute('url');
		textoCelda = '<a href="http://www.ciccp.es/imgweb/caminos_clm/default.asp?indice2='+url+'&dem=21" class="diacita" title="'+titulo+'">' + cDia + '</a>';
		textoTd = '<td class="celdacita">'
	}
}

var now = new Date();
if (cDia == date && Mes == now.getMonth()+1) {
textoTd = '<td class="hoy">'
}

codigo += textoTd + textoCelda + '</td>'
cDia++
}
}
codigo += '</tr>'
}

codigo += '</table>'
document.getElementById("boxcalendarioP").innerHTML=codigo;
}
