function changeDay(o) {
	var n = o.name.split('_');
	updateDays(n[0], o.form);
}

function changeMonth(o) {
	var n = o.name.split('_');
	updateDays(n[0], o.form);
}

function changeYear(o) {
	var n = o.name.split('_');
	updateDays(n[0], o.form);
}

function updateDays(name, f) {
	var days = new Array();
	days[1] = 31;
	days[2] = 28;
	days[3] = 31;
	days[4] = 30;
	days[5] = 31;
	days[6] = 30;
	days[7] = 31;
	days[8] = 31;
	days[9] = 30;
	days[10] = 31;
	days[11] = 30;
	days[12] = 31;
	var d = f.elements[name+'_d'].value;
	var m = f.elements[name+'_m'].value;
	var y = f.elements[name+'_y'].value;
	if(y!='' && m!='') {
		if(y/4==Math.round(y/4) && (y/100!=Math.round(y/100) || y/400==Math.round(y/400)))
			days[2] = 29;
		var s = f.elements[name+'_d'].options;
		if(days[m]!=s.length-1) {
			for(var i=0;i<s.length;)
				s[i] = null;
			s[s.length] = new Option('Day', '', 0, 0);
			for(var i=0;i<days[m];i++)
				s[s.length] = new Option(i+1, i+1, d==i+1?1:0, d==i+1?1:0);
			if(d>days[m])
				s[s.length-1].selected = true;
		}
	}
}