function is_leap_year(year)
{
	if(year%400==0)
		return true;
	if(year%4==0) {
		if(year%100==0)
			return false;
		return true;
	}
	return false;
}

function last_day_of_month(year, month)
{
	if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12)
		return 31;
	if(month==2) {
		if(is_leap_year(year))
			return 29;
		return 28;
	}
	return 30;
}

function set_max_day(id)
{
	//	alert("called set_max_day(" + id + ")");
	dayObj   = document.getElementById(id + "-day");
	monthObj = document.getElementById(id + "-month");
	yearObj  = document.getElementById(id + "-year");
	year = parseInt(yearObj.value);
	month = parseInt(monthObj.value);
	day = parseInt(dayObj.value);
	//	alert("day = " + day + "; month = " + month + "; year = " + year);
	ldom = last_day_of_month(year, month);
	//	alert("Last day of month = " + ldom);
	if(day > ldom)
		day = ldom;
	dayObj.options.length = 0;
	for(i = 1; i <= ldom; ++i) {
		var newOpt = document.createElement("OPTION");
		newOpt.text = i;
		newOpt.value = i;
		dayObj.options.add(newOpt, i - 1);
	}
	dayObj.options[day-1].selected = true;
}
