<!--
var monthToWord=new Array(12)
monthToWord[0]="January"
monthToWord[1]="February"
monthToWord[2]="March"
monthToWord[3]="April"
monthToWord[4]="May"
monthToWord[5]="June"
monthToWord[6]="July"
monthToWord[7]="August"
monthToWord[8]="September"
monthToWord[9]="October"
monthToWord[10]="November"
monthToWord[11]="December"

var d=new Date()
var toRender = ""
var month=monthToWord[d.getMonth()]
var monthWord
var firstDay;
var dateArray = new Array()
var EventsCalendar = Class.create()

EventsCalendar.prototype = {
  
  initialize: function(events) {
    this.events = events
    this.updateMonth() //Display current month
    
  },
  
  getDaysInMonth: function(month, year) {
	  var dd = new Date(year, month, 0)
	  return dd.getDate()
  },

  num_abbrev_str: function(num) {
    var len = num.length, last_char = num.charAt(len - 1), abbrev
    if (len == 2 && num.charAt(0) == '1') {
  		abbrev = 'th'
	} else {
		if (last_char == '1') {
				abbrev = 'st'
		} else if (last_char == '2') {
				abbrev = 'nd'
		} else if (last_char == '3') {
				abbrev = 'rd'
		} else {
				abbrev = 'th'
		}
	}
	
	return num + abbrev

	},
  
	showEvent: function(theid,display){
		
		var moreInfo
		
		if (this.events[theid].file){
			moreInfo = '<p><a href="' + this.events[theid].file + '" target="_blank">More Information</a></p>'
		}
		
		if (moreInfo.length>60){
			var content = "<h2>" + this.events[theid].title + "</h2>" + this.events[theid].description + moreInfo
		}else{
			var content = "<h2>" + this.events[theid].title + "</h2>" + this.events[theid].description
		}
			
			$(display).innerHTML = content
	},

  fill_table: function(month,monthLength,year,displayId){
	var eventsRender = '<table>'
    day=1

    firstDay = new Date(year, monthNumber-1,1)
    startDay = firstDay.getDay()+1;

    toRender+=("<center><TABLE width=\"220\"><TR class=\"currentMonth\"><td><a href=\"javascript:;\" onClick=\"x.updateMonth('prev');\"><img src=\"/upload/images/btn_prev.gif\"/></td>")
    toRender+=("<TD COLSPAN=5 ALIGN=center><B>"+month+"   "+year+"</B></td><td align=\"right\"><a href=\"javascript:;\" onClick=\"x.updateMonth('next');\"><img src=\"/upload/images/btn_next.gif\"/></td><tr></table><table>")

    this.dayTitle("Sun")
    this.dayTitle("Mon")
    this.dayTitle("Tue")
    this.dayTitle("Wed")
    this.dayTitle("Thu")
    this.dayTitle("Fri")
    this.dayTitle("Sat")

    toRender+=("</TR><TR>")
    for (var i=1;i<startDay;i++){
          toRender+=("<TD>")
    }

    // fill the first week of days
    for (var i=startDay;i<8;i++){
          toRender+=("<TD ALIGN=center id=\"" + day + "\" class=\"day\">"+day+"</TD>")
          day++
    }

    toRender+=("<TR>")
    // fill the remaining weeks
    while (day <= monthLength) {
       for (var i=1;i<=7 && day<=monthLength;i++){
           toRender+=("<TD ALIGN=center class=\"day\" id=\""+day+"\">"+day+"</TD>")
           day++
       }
       toRender+=("</TR><TR>")
//
  	 // the first day of the next month
//
       startDay=i
    }

    toRender+=("</TR></TABLE><BR>")
    $(displayId).innerHTML = toRender
    toRender = ""
    var self = this;
     this.events.each(function(event) {
		if(event.keys().include('eDate')) {
			
			var toSplit=event.eDate
  			dateArray=toSplit.split("/")
  			eDay = dateArray[0]
  			eMonth = dateArray[1]
  			eYear = dateArray[2]	
	    	
			if (monthNumber==eMonth && year==eYear) {
			
				var date_text = self.num_abbrev_str(eDay)
				var desc = event.description
				desc = desc.replace("'","\\'")
				eventsRender += '<tr><td class="eventDate">' + date_text + '</td><td class="eventName"><a href="javascript:;" onClick="x.showEvent(\'' + event.id + '\',\'eventDescription\')">' + (event.title).truncate(25) + '</a></td></tr>'
				
			}
		}
				
  		if ($(eDay) && monthNumber==eMonth && year==eYear) $(eDay).className = "markEvent"

      });
	
	eventsRender += '</table>'
	
	$('thisMonth').innerHTML = eventsRender
	
	eventsRender=""

  },
  
  
  dayTitle: function(dayName){
       toRender+=("<TD ALIGN=center WIDTH=28>"+dayName+"</TD>")
  },
  
  
  updateMonth: function(direction){

  	if (direction=='next'){ //Get next month
  		if (monthNumber==12){
  			year++
  			monthNumber=1
  		}else{
  			monthNumber++
  		}
  	}else if(direction=='prev'){ //Get Previous Month

  		if (monthNumber==1){
  			year--
  			monthNumber=12
  		}else{
  			monthNumber--
  		}

  	}else{ //Get Current Month
  		monthWord = monthToWord[6]

  	}

  	monthWord = monthToWord[monthNumber-1]
  	daysInMonth = this.getDaysInMonth(monthNumber,year)

 	//alert(monthNumber + " , " + monthWord + " , " + daysInMonth + " , " + year);
  	this.fill_table(monthWord,daysInMonth,year,'display')

  }
	
}
// end hiding -->