function ChangeConfigItem()
{
    var configItemElements = document.getElementsByTagName("input");
    var priceElement = document.getElementById("lblSubTotal");
    var unitPriceElement = document.getElementById("lblUnitPrice");
    var quantityElement = document.getElementById("txtQuantity");
    var quantity = Number(quantityElement.value);
    var price = Number(priceElement.attributes["baseprice"].value);

    for (var configItemLoop = 0; configItemLoop < configItemElements.length; configItemLoop++)
    {
        var currentConfigItemElement = configItemElements[configItemLoop];

        if (currentConfigItemElement.attributes["cost"] != null && currentConfigItemElement.checked)
        {
            price += Number(currentConfigItemElement.attributes["cost"].value);
        }   // if        
    }   // for
    
    unitPriceElement.innerHTML = "$" + price.toFixed(2);
    price = price * quantity;
    priceElement.innerHTML = "$" + price.toFixed(2);
}                        

function QuantityChange()
{
    var quantityElement = document.getElementById("txtQuantity");
    var quantity = Number(quantityElement.value);
    
    if (isNaN(quantity) == false)
    {
        var minimumQty = Number(quantityElement.attributes["minQuantity"].value);
        var priceBreak = quantityElement.attributes["priceBreak"].value;
        
        quantity = quantity.toFixed(0);
        
        // Validate the quantity
        if (quantity <= minimumQty)
        {
            quantity = minimumQty;
        }   // if

        quantityElement.value = quantity;

        if (priceBreak == "True")
        {
            __doPostBack("", "");
        }   // if
        
        ChangeConfigItem();
    }   // if
}   

function ValidateSubmission()
{
    var configItemElements = document.getElementsByTagName("input");
    
    for (var configItemLoop = 0; configItemLoop < configItemElements.length; configItemLoop++)
    {
        var currentConfigItemElement = configItemElements[configItemLoop];
        var currentName = currentConfigItemElement.name;
        
        // Determine if this is a valid input
        if (currentConfigItemElement.attributes["cost"] != null)
        {
            var configGroup = document.getElementsByName(currentName);
            var isSelected = false;
            
            for (var configGroupLoop = 0; configGroupLoop < configGroup.length; configGroupLoop++)
            {
                var currentConfigGroupItem = configGroup[configGroupLoop];
                
                if (currentConfigGroupItem.checked)
                {
                    isSelected = true;
                    break;
                }   // if
            }   // for
            
            if (isSelected == false)
            {
                return false;
            }   // if
        }   // if
    }   // for
    
    return true;
}   // ValidatePage()