function CheckBoxValidatorDisableButton(chkId, mustBeChecked, btnId)
{
    var button = document.getElementById(btnId);
    var chkbox = document.getElementById(chkId);
    
    if (button && chkbox)
    {
        button.disabled = (chkbox.checked != mustBeChecked);
    }
}

function CheckBoxValidatorEvaluateIsValid(val)
{
    var control = document.getElementById(val.controltovalidate);
    var mustBeChecked = Boolean(val.mustBeChecked == 'true');

    return control.checked == mustBeChecked;
}

function CheckBoxListValidatorEvaluateIsValid(val)
{
    var control = document.getElementById(val.controltovalidate);
    //var minimumNumberOfSelectedCheckBoxes = parseInt(val.minimumNumberOfSelectedCheckBoxes);
    var maximumNumberOfSelectedCheckBoxes = parseInt(val.maximumNumberOfSelectedCheckBoxes);

    var selectedItemCount = 0;
    var liIndex = 0;
    var currentListItem = document.getElementById(control.id + '_' + liIndex.toString());
    while (currentListItem != null)
    {
        if (currentListItem.checked) selectedItemCount++;
        liIndex++;
        currentListItem = document.getElementById(control.id + '_' + liIndex.toString());
    }
    
    //return selectedItemCount >= minimumNumberOfSelectedCheckBoxes;
    
    var result = false;
    
    if (selectedItemCount <= maximumNumberOfSelectedCheckBoxes && selectedItemCount > 0)
            result = true;

    return result;
    
    //return selectedItemCount <= maximumNumberOfSelectedCheckBoxes;
}

function ListBoxValidatorEvaluateIsValid(val)
{
    var control = document.getElementById(val.controltovalidate);
    var maximumNumberOfSelectedListBoxItems = parseInt(val.maximumNumberOfSelectedListBoxItems);

    var selectedItemCount = 0;
    //var liIndex = 0;
    //var currentListItem = document.getElementById(control.id + '_' + liIndex.toString());
    //while (currentListItem != null)
    //{
        //if (currentListItem.selected) selectedItemCount++;
        //liIndex++;
        //currentListItem = document.getElementById(control.id + '_' + liIndex.toString());
    //}
    
    for(var i = 0; i < control.length; i++)
    {
       if(control.options[i].selected) 
       {
            selectedItemCount++;
       }
    }
    
    var result = false;
    
    if (selectedItemCount <= maximumNumberOfSelectedListBoxItems && selectedItemCount > 0)
            result = true;

    return result;
    
    //return selectedItemCount <= maximumNumberOfSelectedListBoxItems;
}


