
var mn 	= ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
var sm 	= ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];

var dim = [31,0,31,30,31,30,31,31,30,31,30,31];

var blank_start_1 = 0;
var blank_start_2 = 0;
var blank_end_1	= 0;
var blank_end_2	= 0;

var display_box		= 'div_display_box';
var hf_box			= 'txt_start_date';
var div_calendar	= 'div_calendar';

function uf_submit_calendar()
{
	uf_search_field(document.frm_search);
}

function uf_show_calendar()
{
	document.getElementById(div_calendar).style.visibility = '';	
	
}

function uf_close_calendar()
{
	document.getElementById(div_calendar).style.visibility = 'hidden';	
}

function uf_build_cal(mon, yr)
{
	var calendar = buildCal(mon, yr);
	document.getElementById(div_calendar).innerHTML = calendar;
	document.getElementById(hf_box).value = '';
}

function uf_highlight(cal, td, mon, day_adj, yr )
{
	var m_limits = [31,0,31,30,31,30,31,31,30,31,30,31];
	m_limits[1] = (((yr%100!=0)&&(yr%4==0))||(yr%400==0))?29:28;
	
	highlight_next = 0;
	highlight_done = 0;
	
	compare_highlight = blank_end_1;
	if (cal==2) compare_highlight = blank_end_2;
	for(i=1;i<=42;i++)
	{ 
		cal_id = 'cal_1_' + i;
		if (cal==2) cal_id = 'cal_2_' + i;
		if (i >= td && i <= (td+13))	
		{
			if ( i<=(42-compare_highlight) && highlight_done==0)
			{
				document.getElementById(cal_id).className = higlight_cell;
				highlight_done = 1;
			}	
			else
			{
				document.getElementById(cal_id).className = active_cell;
				highlight_next++;	
			}	
		}
		else
		{
			if ( yr >curyear) td_class = active_cell;
			else if (yr==curyear && mon > curmonth) td_class= active_cell;
			else if (yr==curyear && mon == curmonth && (i-day_adj) >= curday) td_class = active_cell;
			else td_class = inactive_cell;
			document.getElementById(cal_id).className = td_class;
		}	
	
	}
	
	d_start = (td-day_adj) + ' ' + mn[mon-1] + ' ' + yr;
	temp_date = new Date(yr,mon-1,(td-day_adj)+13);
	
	d_end	= temp_date.getDate() + ' ' + mn[temp_date.getMonth()] + ' ' + temp_date.getFullYear();
	//document.getElementById(display_box).innerHTML = '<p>' + two_wk_blurb + ' <b>' + d_start + ' - ' + d_end + '</b></p><div align="center"><input type="button" name="bt_change" value="Change Start Date" onclick="uf_submit_calendar();"></div>';
	document.getElementById(hf_box).value = mon + '/' + (td-day_adj) + '/' + yr;
}

function buildCal(m, y)
{
	active_cell 	= 's_calendar01';
	inactive_cell 	= 's_calendarOff';
	higlight_cell	= 's_calOn';
	main_cell		= 's_calendar01';
	
	brdr = 1;
	
	blank_start_1 	= 0;
	blank_start_2 	= 0;
	blank_end_1		= 0;
	blank_end_2		= 0;
	
	if (m==0)
	{
		m = 12;
		y = y-1;	
	}
	
	//first calendar
	var oD 	= new Date(y, m-1, 1); //DD replaced line to fix date bug when current day is 31st
	oD.od 	= oD.getDay()+1; //DD replaced line to fix date bug when current day is 31st
	
	var todaydate = new Date(); //DD added
	var scanfortoday = (y==todaydate.getFullYear() && m==todaydate.getMonth()+1)? todaydate.getDate() : 0 //DD added
	
	dim[1] = (((oD.getFullYear()%100!=0)&&(oD.getFullYear()%4==0))||(oD.getFullYear()%400==0))?29:28;
	
	var t = '<table border=1 bordercolor="#003366" cellpadding=0 cellspacing=0 bgcolor="#FFFFFF"><tr><td>';
	t += '<table width="240" border="0" align="center" cellpadding="2" cellspacing="1" class='+main_cell+'>';
	t += '<tr><td colspan=3 align="right"><a href="javascript:void(0);" onclick="uf_close_calendar();"><font style="font-size:11px">close window</font></a>&nbsp;<a href="javascript:void(0);" onclick="uf_close_calendar();"><img src="'+pathToImages+'close.gif" alt="close calendar" border="0" align="absmiddle" /></a></td></tr>';
	prev_m = m - 1;
	prev_y = y;
	next_m = m + 1;
	next_y = y;
	
	if (m==1) 
	{
		prev_m = 12;
		prev_y = y-1;
	}
	if (m==12)
	{
		next_m = 1;
		next_y = y+1;
	}
	
	prev_link = '';
	if ( y > curyear ) prev_link = '<a href="#" onclick="uf_build_cal('+(prev_m)+' ,'+prev_y+')"><img src="'+pathToImages+'btn_cal_back.gif" alt="previous month" width="19" height="19" border="0" /></a>';
	if (y == curyear&& m > curmonth ) prev_link = '<a href="#" onclick="uf_build_cal('+(prev_m)+' ,'+prev_y+')"><img src="'+pathToImages+'btn_cal_back.gif" alt="previous month" width="19" height="19" border="0" /></a>';
	
	next_link = '';
	if ( y < parseInt(end_calendar.getFullYear(),10)) 
	{
		next_link = '<a href="#" onclick="uf_build_cal('+(next_m)+' ,'+next_y+')"><img src="'+pathToImages+'btn_cal_next.gif" alt="next month" width="19" height="19" border="0" /></a>';
	}	
	else if (y == parseInt(end_calendar.getFullYear(),10) && m < parseInt(end_calendar.getMonth(),10))
	{
		next_link = '<a href="#" onclick="uf_build_cal('+(next_m)+' ,'+next_y+')"><img src="'+pathToImages+'btn_cal_next.gif" alt="next month" width="19" height="19" border="0" /></a>';
	}	
	
	t += '<tr><td valign="top">';
	t += '<div><table width="180" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#003366"><tr align="center">';
	t += '<td width="245" height="18" colspan="7" align="center" bgcolor="#ECF1F4">';
	t += '<table width="100%" border="0" cellspacing="1" cellpadding="0">';
	t += '<tr><td width="20">'+prev_link+'</td>';
	t += '<td align="center"><strong>'+mn[m-1]+' '+y+'</strong></td>';
	t += '<td width="20">'+next_link+'</td>';
	t += '</tr></table>';
	t += '</td></tr><tr align="center">';
	
	for(s=0;s<7;s++)
		t += '<td width="35" height="20" align="center" bgcolor="#E4EEF5" class="'+active_cell+'">'+"SMTWTFS".substr(s,1)+'</td>';
	t += '</tr><tr align="center">';
	
	ini_blank 	= 0;
	
	for(i=1;i<=42;i++)
	{
		var x = ((i-oD.od>=0)&&(i-oD.od<dim[m-1]))? i-oD.od+1 : '&nbsp;';
		if (x=='&nbsp;' && ini_blank==0) blank_start_1++;
		if (parseInt(x,10) >= 1) ini_blank = 1;
		if (x=='&nbsp;' && ini_blank==1) blank_end_1++;
		
		var day_x = ((i-oD.od>=0)&&(i-oD.od<dim[m-1]))? i-oD.od+1 : 0;
		
		td_event = 'onclick="uf_submit_calendar();"';
		td_event += ' onmouseover="this.style.cursor=\'hand\';this.style.cursor=\'pointer\';uf_highlight(1,'+i+','+m+','+blank_start_1+','+y+')"';
		
		if (x!='&nbsp;') temp_x = '<a href="#">'+x+'</a>';
		else temp_x = x;
		
		if ( y >curyear) td_class = active_cell;
		else if (y==curyear && m > curmonth) td_class = active_cell;
		else if (y==curyear && m == curmonth && day_x >= curday) td_class = active_cell;
		else 
		{
			td_class = inactive_cell;
			td_event = '';	
			temp_x = x;
		}	
		x = temp_x;
		if (x=='&nbsp;') 
		{
			td_class = inactive_cell;
			td_event = '';		
		}
		t += '<td id="cal_1_'+i+'" '+td_event+' height="20" align="center" bgcolor="#FFFFFF" class="'+td_class+'">'+x+'</td>';
		if(((i)%7==0)&&(i<36))
			t += '</tr><tr align="center">';
	}
	t += '</tr></table></div>';
	t += '</td>';

	t += '<td valign="top" rowspan=2><table width="45" border="0" align="right" cellpadding="0" cellspacing="0">';
	ctr=0;
	for(i=0;i<14;i++)
	{
		//if (ctr%2==0) t += '<tr>';
		 t += '<tr>';
		dis_m = (curmonth+i)-1;
		dis_y = curyear;	
		
		if ((curmonth+i)>12) 
		{
			dis_m = (curmonth+i)-13;
			dis_y = curyear + 1;
		}
		if (dis_m == 12)
		{
			dis_m = 0;
			dis_y += 1;
		}
		
		td_class = 's_calendar02';
		if (dis_m==(m-1) && dis_y==y) td_class = 'monthOn'; //2nd month
		// if (dis_m==(m-2) && dis_y==y) td_class = 'monthOn'; //1st month
		//else if ((m-2)<0 && dis_y==y-1 && dis_m==11) td_class = 'monthOn'; // dec - jan shift
		
		month_link ='<a href="#anc_cal" onclick="uf_build_cal('+(dis_m+1)+' ,'+dis_y+')">'+sm[dis_m]+' '+String(dis_y).substring(2)+'</a>';
		
		//if (i==13) month_link ='<a href="#anc_cal" onclick="uf_build_cal('+(dis_m+1)+' ,'+dis_y+')">'+sm[dis_m]+' '+String(dis_y).substring(2)+'</a>';
		
		t += '<td height="14" width=45 align="left" valign="bottom" class="'+td_class+'">'+month_link+'</td>';	
		//if (ctr%2==1) t += '</tr>';
		//ctr++;
		t += '</tr>';
	}	
	t += '</td></tr></table></td></tr><tr><td colspan=2 align="left"><div id="div_display_box" class="text_4_date"></div></td></tr></table></td></tr></table>';

	return t;
}