
var diasSemana1=new Array("L","M","X","J","V","S","D");
var diasSemana2=new Array("0","Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado");
var numDiasMeses=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var mesesAnio=new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
var eTipo=0;
var eDini=1;
var eMini=2;
var eAini=3;
var eDfin=4;
var eMfin=5;
var eAfin=6;
var eTit=7;
var eURL=8;
var eDesc=9;
var eIcon=10;
var mesActual=2;
var anioActual=2010;
var diaMesAct=12;
var diasSemAct=diasSemana2[6];
var fechaActual=new Date(anioActual,mesActual,diaMesAct);
function HoyEs () {
var tmpMes = mesActual+1;
document.write("Hoy es " + diasSemAct + ",<br />" + diaMesAct + "-" + tmpMes + "-" + anioActual);
}
function Calen(mes,anio,SemanaInicial,SemanaFinal,PonDias,PonDaMa,CeldaEspacio)
{
var fecha=new Date(anio,mes,01);
var Inicia=fecha.getDay()-1;
if(Inicia<0)Inicia+=7;
var diasXmes=numDiasMeses[mes];
if(mes==1){
if(anio%4==0)diasXmes=29;
}
var NumSemanas=parseInt((Inicia+diasXmes)/7);
if((Inicia+diasXmes)%7!=0)NumSemanas++;
var SiMesAnio=false;
var estiloMa=0;
if(PonDaMa){
SiMesAnio=(mes==mesActual&&anio==anioActual)?true:false;
estiloMa=(SiMesAnio)?1:0;
}
CabMes(mes,anio,estiloMa,CeldaEspacio);
if(PonDias){
CabDias(CeldaEspacio);
}
document.write("<table class='calen' cellspacing='"+CeldaEspacio+"'>");
var diaOmitido=0+(SemanaInicial*Inicia);
var diaEscrito=1+((7*SemanaInicial)-((SemanaInicial)?1:0)*Inicia);
var esHoy;
for(var i=NumSemanas-SemanaInicial;i>SemanaFinal;i--){
document.write("<tr>");
for(var j=7;j>0;j--){
esHoy=false;
if(diaOmitido<Inicia||diaEscrito>diasXmes){
document.write("<td class='diaNo'>");
diaOmitido++;
}
else{
if(mes<mesActual&&anio<=anioActual){document.write("<td class='diaSiOld'>");}
else{
if(SiMesAnio&&diaEscrito<diaMesAct){document.write("<td class='diaSiOld'>");}
else{
if(SiMesAnio&&(diaEscrito==diaMesAct)){document.write("<td class='evDA'>");esHoy=true;}
else document.write("<td class='diaSi'>");
}
}
document.write(BuscaEvento(anio,mes,diaEscrito,esHoy));
diaEscrito++;
}
document.write("</td>")
}
document.write("</tr>");
}
document.write("</table>");
}
function BuscaEvento(anio,mes,dia,hoy)
{
var fechaParam=new Date(anio,mes,dia);
var DiaSem=fechaParam.getDay();
var hayEvento=false;
var titulo=(hoy)?"HOY":"";
var tipo;
var Finde=false;
var retval="";
for(var NumEvent=0;NumEvent<eventos.length;NumEvent++)
{
var fechaIni=new Date(eventos[NumEvent][eAini],eventos[NumEvent][eMini]-1,eventos[NumEvent][eDini]);
var fechaFin=new Date(eventos[NumEvent][eAfin],eventos[NumEvent][eMfin]-1,eventos[NumEvent][eDfin]);
if((fechaParam>=fechaIni)&&(fechaParam<=fechaFin))
{
hayEvento=true;
tipo=eventos[NumEvent][eTipo];
if(titulo)titulo+="&#10;";
titulo+=eventos[NumEvent][eTit];
}
}
if(DiaSem==6){retval+="<div class='sab";Finde=true;}
else if(DiaSem==0){retval+="<div class='dom";Finde=true;}
if(hayEvento){
var tituloTemp=titulo;
var titulo=tituloTemp.replace(/'/gi,"&#39");
if(Finde)retval+=" ev"+tipo;
else retval+="<div class='ev"+tipo;
retval+="' title='"+titulo+"'>"+dia+"</div>";
}
else if(Finde){
if(hoy)retval+="'><div class='evDAsolo' title='"+titulo+"'>"+dia+"</div></div>";
else retval+="'>"+dia+"</div>";
}
else if(hoy)retval="<div class='evDAsolo' title='"+titulo+"'>"+dia+"</div>";
else retval=dia;
return retval;
}
function CabMes(mes,anio,estiloMa,CeldaEspacio)
{
document.write("<table class='calen' cellspacing='"+CeldaEspacio+"'>");
document.write("<tr>");
document.write("<td colspan='7' class='cabMes"+estiloMa+"'>");
document.write(mesesAnio[mes]+" "+anio);
document.write("</td>");
document.write("</tr>");
document.write("</table>");
}
function CabDias(CeldaEspacio)
{
document.write("<table class='calenDias' cellspacing='"+CeldaEspacio+"'>");
document.write("<tr>");
for(var i=0;i<7;i++){
document.write("<td class='diaSi'>");
if(i==5)document.write("<div class='sab'");
else if(i==6)document.write("<div class='dom'");
else document.write("<div class='LaV'");
document.write(">" + diasSemana1[i] + "</div>");
document.write("</td>");
}
document.write("</tr>");
document.write("</table>");
}
function Proximo()
{
if(eventos.length>0){
for(var NumEvent=0;NumEvent<eventos.length;NumEvent++)
{
var fechaIni=new Date(eventos[NumEvent][eAini],eventos[NumEvent][eMini]-1,eventos[NumEvent][eDini]);
var fechaFin=new Date(eventos[NumEvent][eAfin],eventos[NumEvent][eMfin]-1,eventos[NumEvent][eDfin]);
if(fechaFin>=fechaActual){
document.write("<p class='ProxBloque'>");
document.write("<span class='ProxDia"+eventos[NumEvent][eTipo]+"'>");
if(eventos[NumEvent][eDini]<10)document.write("&nbsp;"+eventos[NumEvent][eDini]+"&nbsp;");
else document.write(eventos[NumEvent][eDini]);
document.write("</span><span class='ProxMes'> ");
document.write(mesesAnio[eventos[NumEvent][eMini]-1]);
document.write("</span><br />");
if(fechaFin>fechaIni){
document.write("<span>");
document.write(" hasta el "+eventos[NumEvent][eDfin]+" de "+mesesAnio[eventos[NumEvent][eMfin]-1]);
document.write("</span>");
}
document.write("<span class='ProxTit'> ");
document.write(eventos[NumEvent][eTit]);
document.write("</span>");
if(eventos[NumEvent][eDesc]!=""){
document.write("<span class='ProxDesc'> ");
document.write(eventos[NumEvent][eDesc]);
document.write(" </span>");
}
if(eventos[NumEvent][eURL]!=""){
document.write("<a title='+info' href='");
document.write(eventos[NumEvent][eURL]);
document.write("'>&#91;&#187;&#93;</a>");
}
document.write("</p>");
}
}
}
}
