// Event Calendar
// copyright Stephen Chapman, 10th June 2006, 30th October 2006



// permission is granted to use this javascript provided that the below code is not altered
var pageLoaded = 0; 
window.onload = function() {pageLoaded = 1;}

function loaded(i,f) 
{
	if (document.getElementById && document.getElementById(i) != null) f();
	else if (!pageLoaded) setTimeout('loaded(\''+i+'\','+f+')',100);
}
function monthlength(month,year) 
{
	var dd = new Date(year, month, 0);return dd.getDate();
}
var moy = ['January','February','March','April','May','June','July','August','September','October','November','December'];
var today = new Date();
var selDate = today.getFullYear()+getmmdd(today.getMonth()+1,today.getDate());
function dispCal(yy,mm) {
	if (mm < 0 || mm > 12) {
		alert('month must be between 1 and 12'); 
		return false;
	} 
	if (yy != 0 && (yy < 1901 || yy > 2100)) {
		alert('year must be after 1900 and before 2101'); 
		return false;
	} 
	var dow = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']; 
	///////////////////////////////////////setting today always	
	var calendar = new Date();  
	var today = calendar.getDate(); 
	calendar.setDate(1); 
	if (yy > 1900) calendar.setFullYear(yy); 
	if (mm > 0) calendar.setMonth(mm - 1); 
	var yy = year = calendar.getFullYear(); 
	var month = calendar.getMonth(); calendar.setDate(today); 
	var weekday = calendar.getDay(); 
	var daysInMonth = monthlength(month+1,year); 
	var hilite_start = '<td  style="background:' + todaybg + '" align="center"><b>'; 
	var td_start = '<td  align="center" style="' + td_background +'">'; 
	var cal = '<div id="cal" style="width:100%;font-family:arial">'+
			  '<div style="color:#ffffff;font-weight:bold ">'+
			  '<div style="background:' + headbg + ';color:' + headcolor + ';padding-left:15px" align="left"><b>' + moy[month]  + ' ' + year + '<\/b><\/div>'+
			  ''; 
	
	if (document.getElementById) {
		var mmb = month;  
		mm = month + 1; 
		var yya = yyb = yy; 
		if (mmb <1) {mmb += 12; yyb--;} 
		var mma = month + 2; 
		if (mma > 12) {mma -= 12; yya++;} 
		var yb = yy -1; 
		var ya = yy +1; 
		cal += '<div align="center" style=""><table border="0" cellspacing="0" cellpadding="5" width="100%" align="center" ><tr><td style="padding-left:15px"><a href="#" style="'+style_lnk+'" onclick="if (cala = dispCal('+yb+','+mm+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}"><<</a></td><td><a href="#"  style="'+style_lnk+'"   onclick="if (cala = dispCal('+yyb+','+mmb+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}"><</a></td><td align="right"><a href="#"  style="'+style_lnk+'"   onclick="if (cala = dispCal('+yya+','+mma+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}">></a></td><td style="padding-right:15px" align="right"><a href="#"  style="'+style_lnk+'"   onclick="if (cala = dispCal('+ya+','+mm+')) {document.getElementById(\'cal\').innerHTML = cala; return false;}">>></a></td></tr></table></div>';
	} 
	else {cal += '<div> </div>';} 
	cal += '</div>'; 
	cal += '<table style="background-color:#00659e" cellspacing="1" cellpadding="0"  align="center" >';
		
	for(dex=0; dex < 7; dex++) {
		cal += td_start + '<font style="'+style_dow+'">' + dow[dex] + '</font></td>';
	}  
	cal += '<\/tr><tr>'; 
	var day2 = today; 
	for (dex = today; dex > 6; dex -=7) 
		day2 = dex; weekday -= day2 - 1; 
	while (weekday < 0) 
		weekday += 7; 
	for(dex=0; dex < weekday; dex++) 
		cal += td_start + ' <\/td>'; 
		
		
	///////////fixing bug -> setting today date /////////////////
	var today = new Date();
	var selDate = today.getFullYear()+getmmdd(today.getMonth()+1,today.getDate());
	
	////////////////////////////////////////////////////////////
		
		
	for(dex=1; dex <= daysInMonth; dex++) {
		if(weekday == 7) {
			cal += '</tr><tr>'; weekday = 0;
		} 
		if(selDate==year+getmmdd(month+1,dex)) 
			cal += hilite_start +'<span '+clickDate(dex,month,year) + '>'+ dex + '<\/span><\/b><\/td>'; 
		else cal += td_start + '<span '+clickDate(dex,month,year) + '>' + dex + '<\/span><\/td>'; weekday += 1;
	} 
	for(dex=weekday; dex < 7; dex++) cal += td_start + ' <\/td>';
		cal += '<\/tr><\/table><\/div>';
	
	return cal;
}
function start() {
	var x = '';//'<div id="calDate" style="border:1pt solid #cccccc;width:238px"><\/div>'; 
	var y = ''; 
	if (tb == 't') y = x + dispCal(0,0); 
	else y = dispCal(0,0) + x; 
	document.getElementById('calendar').innerHTML = y; 
	ev();
}
loaded('calendar',start);
function clickDate(day, month, year) {
	var ct = nextDate(year + getmmdd(month+1,day));
	if (ct == '') 
		ct = nextDate('0000' + getmmdd(month+1,day));
	if (ct == '') 
		return 'style="color:'+textclr+'"'; 
	else 
		return 'style="cursor:pointer;color:'+linkclr+';font-weight:bold" title="Click to see the Events for this day" onclick="selDate = '+year+ getmmdd(month+1,day)+'; isDate(' + day + ',' + month + ',' + year + ');return false;"';
}

function first_page()
{
	document.getElementById('calendar_events').innerHTML=first_pg;
	//document.getElementById('calendar_events').innerHTML='blablabl blabal bal';
	//return false;
}

function isDate(dayVal,monthVal,yearVal) {
	var ct = nextDate(yearVal + getmmdd(monthVal+1,dayVal));
	var format_date = dayVal+'/'+(monthVal+1)+'/'+yearVal;
	var ini_div   = '<div style="font-size: 14px; text-align: center; padding-top: 15px;padding-bottom:10px;color:#0b3f57;font-weight:bold;text-align:left"> '+(format_date)+
	                '    &nbsp;&nbsp;&nbsp;<a href="javascript:void(0)" style="font-size:11px;color:#0b3f57;text-decoration:none;font-weight:normal" onclick="first_page()">&lt;back</a> '+
					'</div>'+
				    ''+
				    '';
				
	if (ct == '') ct = nextDate('0000' + getmmdd(monthVal+1,dayVal));
	if (ct == '') ct = noMessage;document.getElementById('calendar_events').innerHTML = ini_div + '' +ct+ '</div>'; 
	return false;
}
function nextDate(yymmdd) {
	var x = dA.length;
	for (var i = 0; i < x; i++) {
		if (dA[i].substr(0,8) == yymmdd) return dA[i].substr(8);}return '';
}
function getmmdd(mm,dd) {
	return (mm > 9 ? '' + mm : '0' + mm) + (dd > 9 ? dd : '0' + dd);
}
function ev() {
	var ct = nextDate(selDate);
	var ct = nextDate(selDate);
	if (ct == '') 
		ct = nextDate('0000' + selDate.substr(4));
	if (ct == '') 
		ct = noMessage; 
	//document.getElementById('calendar_events').innerHTML = selDate + ':<br \/> ' +ct;
}
