function syncDaysToMonth(monthValue,daySelect,hasNullItem) {
var days  = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
var selectLast;
var day;
var monthNum;
var numDays;
if (isNaN(monthValue)) {
monthNum=getMonthNum(monthValue.substring(0,3));
numDays=days[monthNum];
if (monthNum==1) {
var yearValue=parseInt(monthValue.substring(monthValue.length-4,monthValue.length),10)
if (!isNaN(yearValue) && yearValue%4==0)
numDays=29;
}
} else {
monthNum=monthValue-1;
numDays=days[monthNum];
if (monthNum==1)
numDays=29;
}
var currNumDays=daySelect.options.length;
if (hasNullItem)
numDays++;
if (numDays==currNumDays) {
return true;
}
if (numDays<currNumDays) {
selectLast=(daySelect.selectedIndex>numDays-1)
daySelect.options.length=numDays;
daySelect.options[numDays-1].selected=selectLast;
} else {
for (var i=currNumDays;i<numDays;i++) {
day=(hasNullItem ? i:i+1)
daySelect.options[i]=new Option(day,day);
}
}
}
function getMonthNum(monthAbbr) {
var monthAbbrs = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
for (var i=0;i<monthAbbrs.length;i++) {
if (monthAbbr.toUpperCase()==monthAbbrs[i].toUpperCase())
return i;
}
} 
