﻿function addOption (selectbox, text, value)
{
    var optn = document.createElement("OPTION");
    optn.text = text;
    optn.value = value;
    selectbox.options.add(optn);
}

function daysInMonth(iMonth, iYear)
{
	return 32 - new Date(iYear, iMonth, 32).getDate();
}

function LeftPad(n) 
{ 
    n = n.toString(); 
    if (n.length == 1) 
    { 
        return '0' + n;
    } 
    return n.toString(); 
} 
    
function dateChanged(yearCtl, monthCtl, dayCtl, fullDateCtl)
{
    yearCtl = document.getElementById(yearCtl);
    monthCtl = document.getElementById(monthCtl);
    dayCtl = document.getElementById(dayCtl);
    fullDateCtl = document.getElementById(fullDateCtl);
    
    var lastSelectedDay = dayCtl.value;
    dayCtl.options.length = 0;
    var numDays = daysInMonth(monthCtl.value - 1, yearCtl.value);
    for (var i = 1; i <= numDays; i++)
        addOption(dayCtl, i.toString(), i);
    dayCtl.value = lastSelectedDay;
    
    if (dayCtl.value == '') dayCtl.value = 1;
    
    fullDateCtl.value = yearCtl.value.toString() + LeftPad(monthCtl.value) + LeftPad(dayCtl.value);
}