

// JScript File

var _ComboDatePicker_daysOfWeek = [
    'domingo',
    'segunda-feira',
    'terça-feira',
    'quarta-feira',
    'quinta-feira',
    'sexta-feira',
    'sábado'
];


function _ComboDatePicker_SetDate(comboDatePickerId, dateObject) 
{
    var ddlDia = document.getElementById(comboDatePickerId + "_ddlDia");
    var ddlMes = document.getElementById(comboDatePickerId + "_ddlMes");
    var ddlAno = document.getElementById(comboDatePickerId + "_ddlAno");
    var lblDiaSemana = document.getElementById(comboDatePickerId + "_lblDiaSemana");
    
    ddlDia.value = dateObject.getDate();
    ddlMes.value = dateObject.getMonth() + 1;
    ddlAno.value = dateObject.getFullYear();
    
    _ComboDatePicker_AnoChanged(comboDatePickerId);
}

function _ComboDatePicker_GetDate(comboDatePickerId) 
{
    var ddlDia = document.getElementById(comboDatePickerId + "_ddlDia");
    var ddlMes = document.getElementById(comboDatePickerId + "_ddlMes");
    var ddlAno = document.getElementById(comboDatePickerId + "_ddlAno");
    var lblDiaSemana = document.getElementById(comboDatePickerId + "_lblDiaSemana");
    
    var date = new Date();
    date.setFullYear(ddlAno.value, ddlMes.value - 1, ddlDia.value);
    
    return date;
}

function _ComboDatePicker_DiaChanged(comboDatePickerId)
{
    var ddlDia = document.getElementById(comboDatePickerId + "_ddlDia");
    var ddlMes = document.getElementById(comboDatePickerId + "_ddlMes");
    var ddlAno = document.getElementById(comboDatePickerId + "_ddlAno");
    var lblDiaSemana = document.getElementById(comboDatePickerId + "_lblDiaSemana");
    var dayOfWeek = _ComboDatePicker_daysOfWeek[_ComboDatePicker_GetDate(comboDatePickerId).getDay()];
    lblDiaSemana.innerHTML = dayOfWeek;
}

function _ComboDatePicker_MesChanged(comboDatePickerId)
{
    var ddlDia = document.getElementById(comboDatePickerId + "_ddlDia");
    var ddlMes = document.getElementById(comboDatePickerId + "_ddlMes");
    var ddlAno = document.getElementById(comboDatePickerId + "_ddlAno");
    var lblDiaSemana = document.getElementById(comboDatePickerId + "_lblDiaSemana");
    var diasNoMes = _ComboDatePicker_daysInMonth(ddlMes.value -1 , ddlAno.value);
    
    if(ddlDia.value > diasNoMes) {
        ddlDia.value = diasNoMes;
    }
    
    
    while (ddlDia.length > diasNoMes) {
        ddlDia.remove(ddlDia.length -1);
    }
    while (ddlDia.length < diasNoMes) {
        var elOptNew = document.createElement('option');
        elOptNew.text = ddlDia.length + 1;
        elOptNew.value = ddlDia.length + 1;
        try {
            ddlDia.add(elOptNew, null); // standards compliant; doesn't work in IE
        }
        catch(ex) {
            ddlDia.add(elOptNew); // IE only
        }        
    }
    
    _ComboDatePicker_DiaChanged(comboDatePickerId);
    
}

function _ComboDatePicker_AnoChanged(comboDatePickerId)
{
    _ComboDatePicker_MesChanged(comboDatePickerId);
}

function _ComboDatePicker_daysInMonth(iMonth, iYear)
{
    var firstDaysNextMonth = new Date(iYear, iMonth, 32);
    var daysInMonth = 32 - firstDaysNextMonth.getDate();
	return daysInMonth;
}


