YAHOO.namespace('EventCalendar');YAHOO.EventCalendar.SiteCalendar=function(){};YAHOO.EventCalendar.SiteCalendar.prototype={subscribeEvents:function()
{var thisClass=this;var addRolloverEvents=function(foo)
{var currentCell,cellKey=0,popupDivId=thisClass.popupDivId,Dom=YAHOO.util.Dom,calendar=thisClass.calendar;var mouseoverEvent=function(e,oCellElem)
{var day=thisClass.getEventDayForDate(calendar.getDateByCellId(oCellElem.id));if(day){var html='';html+=day.events.length+' Event';html+=(day.events.length!=1)?'s':'';html+='<br />Click for details';Dom.get(popupDivId).innerHTML=html;Dom.setStyle(popupDivId,'display','block');var x=Dom.getX(oCellElem);var y=Dom.getY(oCellElem);x+=Math.round(Dom.get(oCellElem).clientWidth/2);x-=Math.round(Dom.get(popupDivId).clientWidth/2);y-=Dom.get(popupDivId).clientHeight;y-=0;Dom.setStyle(popupDivId,'left',x+'px');Dom.setStyle(popupDivId,'top',y+'px');}};var mouseoutEvent=function(e,cellElem)
{Dom.setStyle(popupDivId,'display','none');};for(cellKey in this.calendar.cells){if(this.calendar.cells.hasOwnProperty(cellKey)){currentCell=this.calendar.cells[cellKey];if(YAHOO.util.Dom.hasClass(currentCell,'highlight1')){YAHOO.util.Event.addListener(currentCell,"mouseover",mouseoverEvent,currentCell);YAHOO.util.Event.addListener(currentCell,"mouseout",mouseoutEvent,currentCell);}}}};YAHOO.Lib.Dom.insertDivAtTopOfBody(this.popupDivId);this.calendar.renderEvent.subscribe(addRolloverEvents,this.calendar,this);},render:function()
{var dayKey=0;var thisClass=this;var contentRenderer=function(workingDate,cell)
{var calendar=thisClass.calendar;var day=thisClass.getEventDayForDate(workingDate);var html;var eventDetailUrl=thisClass.eventDetailUrl+'#Events-';var dayDate=thisClass.getDateObjFromStr(day.dateString);var dayDateStr=thisClass.getDateStrFromObj(dayDate);eventDetailUrl+=dayDateStr.replace(/\//g,'-');if(day){html='';html+='<a href="'+eventDetailUrl+'" class="selector1">'+calendar.buildDayLabel(workingDate)+'</a>';cell.innerHTML=html;YAHOO.util.Dom.addClass(cell,"highlight1");YAHOO.util.Dom.addClass(cell,"selectable");}
return YAHOO.widget.Calendar.STOP_RENDER;};for(dayKey in this.eventDays){if(this.eventDays.hasOwnProperty(dayKey)){this.calendar.addRenderer(this.eventDays[dayKey].dateString,contentRenderer);}}
this.calendar.render();}};YAHOO.lang.augment(YAHOO.EventCalendar.SiteCalendar,YAHOO.EventCalendar.BaseCalendar);
