
function date_panel_setup ( top_pos , left_pos , layer_id ) { 

	date_struct = new Object() ;
	date_struct.target_field = 0 ; 
	date_struct.urlprev = "/themes/image_files/datecontrol/prev.gif" ; 
	date_struct.urlnext = "/themes/image_files/datecontrol/next.gif" ; 
	date_struct.urlweek = "/themes/image_files/datecontrol/week.gif" ; 
	var today = new Date() ; 
	date_struct.year1 = today.getFullYear() ; 
	date_struct.month1 = today.getMonth() ; 
    
  //  alert("the month is :"+date_struct.month1);
	date_struct.stamp_today = today.getTime() ; 
	
	var y , m , d ; 
	y = date_struct.year1 ; 
	m = date_struct.month1 ; 
	d = today.getDate() ; 
	var rtv = y + "-" ; 
	if ( m<9 ) rtv += "0" + (m+1) ; 
	else rtv +=(m+1) ; 
	if ( d<10 ) rtv += "-0" + d ; 
	else rtv += "-" + d ;
	date_struct.today = rtv ; 
	// alert("today is :"+date_struct.today); 
	document.write 
	( "<div id='" + layer_id + "' style='position:absolute; top: " + 
	top_pos + 
	"; left: " + left_pos + 
	"; visibility:hidden; z-index:10000000; '>" +
	"<table cellspacing=0 cellpadding=0>" +
	"<tr><td>" ) ; 
	month_panel(1);
	document.write ( "</td><td>" ) ; 
	month_panel(2); 
	document.write ("</td></tr></table></div>" ) ; 

 	date_panel_set() ; 
}

function previous_month() { 
	pop_remain = true ; 
	var tpy = date_struct.year1 ; 
	var tpm = date_struct.month1 - 1; 
	if ( tpm<0 ) {
		tpm = 11 ; 
		tpy-- ;
	}
	date_struct.year1 = tpy ; 
	date_struct.month1 = tpm ; 
	date_panel_set () ; 
}

function next_month() { 
	pop_remain = true ; 
	var tpy = date_struct.year1 ; 
	var tpm = date_struct.month1 + 1  ; 
	if ( tpm>11 ) {
		tpm = 0 ; 
		tpy++ ;
	}
	date_struct.year1 = tpy ; 
	date_struct.month1 = tpm ; 
	date_panel_set ()
}

function date_locs ( offset_days ) { 
	document.write("<table width='100%' cellspacing='1'>") ; 
	for ( var row=0; row<6; row++ ) { 
		document.write ( "<tr>" ) ; 
		for ( var col=0; col<7; col++ ) {
			if ( row==5 && col==4 ) { 
				document.write ( 
				"<td colspan=3 style='text-align:center; font-size:9pt; " + 
				"color:#fff; background-color:#323232'>关闭</td>" ) ; 
				break ; 
			} 
			document.write ( 
			"<td style='width:20;background-color:white; text-align:center; font-size:9pt; font-weight:bold;'" +
			"onclick='set_date(" + offset_days + ");'>" + 
			"<a href=# id='date_loc" + offset_days + "' style='text-decoration:none; '>" + 
			"x</a></td>" 
			) ; 
			offset_days ++ ; 
		}
		document.write ( "</tr>" ) ; 
	}
	document.write("</table>") ; 
}

function date_panel_set () { 

	var day1 = new Date ( date_struct.year1 , date_struct.month1, 1 ) ; 
	var ss = day1.getTime() - 24*3600*1000*(day1.getDay()) ; 
	var yst = date_struct.stamp_today-24*3600000 ;
	for ( var i=0; i<39; i++ ) { 
		var tpe = document.getElementById ( "date_loc" + i ) ; 
		var cdate = new Date ( ss ) ; 
		if ( 
			( ss < yst ) ||
			(cdate.getMonth()!=date_struct.month1)  
		) tpe.style.color = "#D0D0D0" ; 
		else tpe.style.color = "#000000" ; 
		tpe.firstChild.nodeValue = cdate.getDate() ; 
		ss += 24*3600000 ;
	}

	document.getElementById ( "popup_year1" ) 
	.firstChild.nodeValue = date_struct.year1 + " 年" ; 
	document.getElementById ( "popup_month1" ) 
	.firstChild.nodeValue = (date_struct.month1+1) + " 月" ; 

	var ny = date_struct.year1 ; 
	var nm = date_struct.month1 + 1 ; 
	if ( nm >= 12 ) { 
		nm -= 12 ;
		ny ++ ; 
	}
	day1 = new Date ( ny , nm , 1 ) ; 
	var ss = day1.getTime() - 24*3600*1000*(day1.getDay()) ; 
	for ( var i=0; i<39; i++ ) { 
		var tpe = document.getElementById ( "date_loc" + (39+i) ) ; 
		var cdate = new Date ( ss ) ; 
		if ( 
			( ss < yst ) ||
			(cdate.getMonth()!=nm)  
		) tpe.style.color = "#D0D0D0" ; 
		else tpe.style.color = "#000000" ; 
		tpe.firstChild.nodeValue = cdate.getDate() ; 
		ss += 24*3600000 ;
	}
	document.getElementById ( "popup_year2" ) 
	.firstChild.nodeValue = ny + " 年" ; 
	document.getElementById ( "popup_month2" ) 
	.firstChild.nodeValue = (nm+1) + " 月" ; 

}

function month_panel ( sn ) { 
	document.write ( 
	"<table style='background-color:#d7e8f8; width:140;' cellspacing=1 cellpadding=0> " +
	"<tr><td>" ) ;  
	month_row ( sn ) ; 
	document.write ( "</td></tr>" ) ; 
	document.write( "<tr><td><img src='" + 
	date_struct.urlweek + 
	"'></td></tr>" ) ; 
	document.write ( "<tr><td>" ) ;  
	date_locs((sn-1)*39);
	document.write ( "</td></tr></table>" ) ; 
	
}

function month_row ( sn ) { 
	document.write ( 
	"<table width=140 cellspacing=0 cellpadding=0 " + 
	"style='background-color: white; border-style:none ; margin: 0; ' >" +
	"<tr align=center>" ) ; 
	document.write ( 
	"<td style='width:15; vertical-align:middle; '  title='向前翻 1 月' " + 
	"style='cursor: hand'><img src='" + 
	date_struct.urlprev + 
	"' onclick='previous_month();'></td>" ) ;  
	document.write ( 
	"<td style='width:60; vertical-align:middle; cursor: hand; font-size:10pt; ' " +  
	"id=popup_year" + sn + ">" +
	"2016 年</td>" ) ; 
	document.write ( 
	"<td style='width:50; height:10; vertical-align:middle; cursor: hand; font-size:10pt;'" +
	"id=popup_month" + sn + ">" + 
	"15 月</td>" ) ; 
	document.write ( 
	"<td style='width:15; vertical-align:middle; '  title='向后翻 1 月'" +
	"style='cursor: hand'><img src='" + 
	date_struct.urlnext + 
	"' onclick='next_month();'></td>" ) ; 
	document.write ( "</tr></table>" ) ;
}

function set_date ( loc ) { 
	var y , m , d ; 
	if ( loc < 39 ) { 
		y = date_struct.year1 ; 
		m = date_struct.month1 ; 
	} else { 
		y = date_struct.year1 ; 
		m = date_struct.month1 + 1 ; 
		if ( m >= 12 ) { 
			m -= 12 ;
			y ++ ; 
		}
		loc -= 39 ; 
	}
	var day1 = new Date ( y , m , 1 ) ; 
	var ss = day1.getTime() - 24*3600*1000*(day1.getDay()) ; 
	if ( loc < 39 ) ss += loc*24*3600000 ;
	var rdate = new Date(ss) ; 
	if ( rdate < ( date_struct.stamp_today-24*3600000 ) ) {
		alert ( "所选日期已过" ) ;
		return ; 
	}
	y = rdate.getFullYear() ; 
	m = rdate.getMonth() ; 
	d = rdate.getDate() ; 
	var rtv = y + "-" ; 
	if ( m<9 ) rtv += "0" + (m+1) ; 
	else rtv += (m+1) ; 
	if ( d<10 ) rtv += "-0" + d ; 
	else rtv += "-" + d ;
	document.getElementById ( date_struct.target_field ) 
	. value = rtv ; 
	 
}


