var actualMonth="";
var actualYear="";
var numPages=1;

 function getLastDayMonth(Month, Year){
    return new Date((new Date(Year, Month,1))-1).getDate();
  }

function setLocale(calendar){
    
    // Date labels for Spanish locale
    calendar.cfg.setProperty("MONTHS_SHORT",   ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"]);
    calendar.cfg.setProperty("MONTHS_LONG",    ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"]);
    calendar.cfg.setProperty("WEEKDAYS_1CHAR", ["D", "L", "M", "M", "J", "V", "S"]);
    calendar.cfg.setProperty("WEEKDAYS_SHORT", ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"]);
    calendar.cfg.setProperty("WEEKDAYS_MEDIUM",["Dom", "Lun", "Mar", "Mie", "Jue", "Vie", "Sab"]);
    calendar.cfg.setProperty("WEEKDAYS_LONG",  ["Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado"]);

return calendar;
}

var myCustomRenderer = function(workingDate, cell) {
            cell.innerHTML = workingDate.getDate();
            YAHOO.util.Dom.addClass(cell, "sunday");
            return YAHOO.widget.Calendar.STOP_RENDER;
	}

YAHOO.namespace("example.calendar");
YAHOO.example.calendar.init = function() {
    
    function addZero(numero){
        if(parseInt(numero)<10)
            return "0"+numero;
        return numero;
    }
    
    function handleSelect(type,args,obj) {
            var dates = args[0]; 
            var date = dates[0];
            var year = date[0], month = date[1], day = date[2];
             document.location="/es/flamenco/eventos/"+year + "/" + addZero(month) + "/" + addZero(day)+"/evento.html";
    }
    


    // For this example page, stop the Form from being submitted, and update the cal instead

    YAHOO.example.calendar.cal1 = new YAHOO.widget.CalendarGroup("cal1","cal1Container",
        {PAGES:numPages, pagedate:actualMonth+"/"+actualYear,
         hide_blank_weeks:false,
         start_weekday:1
		} 
    )
YAHOO.example.calendar.cal1.cfg.setProperty("MONTHS_SHORT",   ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"]);
YAHOO.example.calendar.cal1.cfg.setProperty("MONTHS_LONG",    ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"]);
YAHOO.example.calendar.cal1.cfg.setProperty("WEEKDAYS_1CHAR", ["D", "L", "M", "M", "J", "V", "S"]);
YAHOO.example.calendar.cal1.cfg.setProperty("WEEKDAYS_SHORT", ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"]);
YAHOO.example.calendar.cal1.cfg.setProperty("WEEKDAYS_MEDIUM",["Dom", "Lun", "Mar", "Mie", "Jue", "Vie", "Sab"]);
YAHOO.example.calendar.cal1.cfg.setProperty("WEEKDAYS_LONG",  ["Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado"]);

                var stringNoSelect="";
				actualMonth=""+actualMonth;
				if(actualMonth.substring(0,1)==0){
					actualMonth=actualMonth.substring(1,2);
				}

                var iNumber=parseInt(actualMonth);

                // Render the days without events
                for(i=iNumber;i<iNumber+6;i++){
					var okMonth=i;
					var okYear=actualYear;
					
					// Check last month of the year
					if(i>12){
						okMonth=i-12;
						okYear+=1;
					}
                    if(eventos[okMonth]!=null && eventos[okMonth][0]!=null){
                        if(stringNoSelect!="")
                            stringNoSelect=stringNoSelect+" , ";
                        stringNoSelect=stringNoSelect+eventos[okMonth][0];
                    }else{
                        if(stringNoSelect!="")
                            stringNoSelect=stringNoSelect+" , ";
                        stringNoSelect=stringNoSelect+okMonth+"/1/"+okYear+" - "+okMonth+"/"+getLastDayMonth(okMonth, okYear)+"/"+okYear;
                    }
                }
                YAHOO.example.calendar.cal1.addRenderer(stringNoSelect, myCustomRenderer);

                // Render the days with events
                var stringSelect="";
                for(i=iNumber;i<iNumber+3;i++){
                    
                    if(eventos[i]!=null && eventos[i][1]!=null){
                         if(stringSelect!="")
                            stringSelect=stringSelect+" , ";
                        stringSelect=stringSelect+eventos[i][1];
                    }
                }

                YAHOO.example.calendar.cal1.addRenderer(stringSelect, YAHOO.example.calendar.cal1.renderCellStyleHighlight1 );
                
		YAHOO.example.calendar.cal1.selectEvent.subscribe(handleSelect, YAHOO.example.calendar.cal1, true);
		YAHOO.example.calendar.cal1.render();
                 YAHOO.example.calendar.cal1.changePageEvent.subscribe(handleSelect, YAHOO.example.calendar.cal1, true);
 
		YAHOO.util.Event.addListener("update", "click", updateCal);
		YAHOO.util.Event.addListener("dates", "submit", handleSubmit);

}

function handleSelect(type,args,obj) {
            var dates = args[0]; 
            var date = dates[0];
            var year = date[0], month = date[1], day = date[2];

            var txtDate1 = document.getElementById("date1");
            txtDate1.value = month + "/" + day + "/" + year;
             document.location=month + "/" + day + "/" + year+".html";
    }

function initCalendar(_month, _year, _numPages){
    actualMonth=_month;
    actualYear=_year;
    numPages=_numPages;
    YAHOO.util.Event.onDOMReady(YAHOO.example.calendar.init);
}