var test_dates = new Array(
'27, 6, Mock Test, 1',
'11, 7, Mock Test, 2',
'25, 7, Mock Test, 3',
'8, 8, Mock Test, 4',
'22, 8, Mock Test, 5',
'29, 8, Mock Test, 6',
'5, 9, Mock Test, 7',
'19, 9, Mock Test, 8',
'3, 10, Mock Test, 9',
'17, 10, Mock Test, 10',
'24, 10, Mock Test, 11',
'31, 10, Mock Test, 12',
'7, 11, Mock Test, 13',
'14, 11, Mock Test, 14',
'21, 11, Guess Paper, CAT-09'
);

var months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
function generateTestCal(div, _class, widgets_per_row){
	var x = '<table border=0 cellspacing=0 cellpadding=0 ' + (_class!=null?'class="'+_class+'"':'') + ' width="99%">', i,j;
	for(i=3; i<generateTestCal.arguments.length; i+=widgets_per_row){
		x += '<tr>';
		for(j=0; j<widgets_per_row && i+j<generateTestCal.arguments.length; j++){
			x += '<td width="150px">' + generateTestSchedule(generateTestCal.arguments[i+j],2009,_class) + '</td>';
		}
		x += '</tr>';
	}
	x += '</table>';
	document.getElementById(div).innerHTML = x;
}
function generateTestSchedule(month, year, _class){
	var d = new Date(); d.setDate(1); d.setMonth(parseInt(month)-1); d.setFullYear(year);
	var x = '<table width="100%" height="150px" border=1 cellpadding=0 cellspacing=0 style="background-color:#ffffff; font-size:10px" '+(_class!=null?'class="'+_class+'"':'')+' >';
	x += '<tr height="14px"><td colspan=7 style="background:#e8e0d5; font-weight:bold; text-align:center">'+months[parseInt(month)-1]+'</td></tr>';
	x += '<tr height="14px" style="background-color:#f0f0f0; font-weight:bold"><td align="center">S</td><td align="center">M</td><td align="center">T</td><td align="center">W</td><td align="center">T</td><td align="center">F</td><td align="center">S</td></tr>';
	var num_days = 32 - new Date(year, parseInt(month)-1, 32).getDate();
	var start_day = d.getDay();
	var count=0; var row_count=0;
	for(i=-start_day+1; i<=num_days; i++){
		if(count%7==0){
			if(count!=0)
				x += '</tr>';
			x += '<tr height="14px">';
			row_count ++;
		}
		if(i>0 && i<=num_days){
			flag = false;
			for(j=0; j<test_dates.length; j++){
				var str = test_dates[j];
				var _d = str.substring(0, str.indexOf(',')); str = str.substring(str.indexOf(',')+1);
				var _m = str.substring(0, str.indexOf(',')); str = str.substring(str.indexOf(',')+1);
				var _t = str.substring(0, str.indexOf(',')); str = str.substring(str.indexOf(',')+1);
				if(_d==i && _m==month){
					x += '<td style="background-color:#'+(_t.indexOf('Practice')!=-1?'ffaaaa':'aaffaa')+'; cursor:pointer" onClick="Tip(\''+_t+' - '+str+' starts ..\', BALLOON,true, FOLLOWMOUSE,false, DELAY,0, OFFSETX,-40, CLICKCLOSE,true, ABOVE,true, OFFSETY,-5)" align="center">'+i+'</td>';
					flag = true;
					break;
				}
			}
			if(!flag)
				x += '<td align="center">'+i+'</td>';
		}else{
			x += '<td style="background:#f0f0f0"></td>';
		}
		count ++;
	}
	var y = new Date(year, parseInt(month)-1, num_days).getDay();
	if(y!=6)
	while(y++<6)
		x += '<td style="background:#f0f0f0"></td>';
	while(row_count++<6)
		x += '<tr><td colspan=7 style="background:#f0f0f0">&nbsp;</td></tr>';
	x += '</tr></table>';
	return x;
}