﻿// Function get called when ever Multi license price option is changed
function MLPriceOptionChange(objControl) {
    var selectedValue = objControl.options[objControl.selectedIndex].value;
    if (selectedValue == "myaccountredirect") {
        location.href = "http://home.mcafee.com/root/MyAccount.aspx";
        return;
    }
}

// Function is used to submit the form and price data to cart
function DoCartAction(CartPostType, selectedItemValue) {
    var objform = document.forms[0];
    var objItemObject = document.getElementById("selectedItem");

    if ((CartPostType == "MetaPlanCode") || (CartPostType == "StaticPriceId"))  
    {
        objItemObject.value = selectedItemValue;
        //alert(LegacyCartUrl);
        objform.action = LegacyCartUrl;
        objform.method = "post";
        objform.submit();
        return true;
    }
    else if (CartPostType == "CartUrl") {
    
        window.location.href = selectedItemValue;
        return false;
    }
    else if (CartPostType == "ExternalUrl") {
        window.open(selectedItemValue, "newWindow");
        return false;
    }
}

// Function gets called whenever simple option submit button click or drop down submit button click (ML disabled) 
function SimpleButtonSubmit(srcElementId) {

    var objSrcObject = document.getElementById(srcElementId);
    var CartPostValue = "";
    var CartPostType = "";
    
    if (objSrcObject.tagName == "SELECT") {
        var iSelectedIndex = objSrcObject.selectedIndex;
        if (iSelectedIndex == -1)
            iSelectedIndex = 0;

        var selectedMLOptionItem = objSrcObject.options[iSelectedIndex];

        CartPostValue = selectedMLOptionItem.value;

        var oAttrCartPostType = selectedMLOptionItem.attributes.getNamedItem("CartPostType");
        if (oAttrCartPostType)
            CartPostType = oAttrCartPostType.value;    
    }
    else if (objSrcObject.tagName == "INPUT") 
    {
        CartPostValue = objSrcObject.value;
        var oAttrCartPostType = objSrcObject.attributes.getNamedItem("CartPostType");
        if (oAttrCartPostType)
            CartPostType = oAttrCartPostType.value;
    }
    
    if (CartPostValue == "")
        return false;

    if (CartPostType == "")
        return false;
        
    //alert(CartPostType + " - " + CartPostValue);
    return DoCartAction(CartPostType, CartPostValue);
}




function OnRadioMLPlanChange(ViewGroupId, Control) 
{
    var ViewGroupObj = document.getElementById(ViewGroupId);
    if (ViewGroupObj) 
    {
        var ArrayOfInputControlList = ViewGroupObj.getElementsByTagName("input");
        //Radio button Control List
        var ArrayOfRadioButoonControlList = new Array();
        var ArrayOfComboBoxControlList = ViewGroupObj.getElementsByTagName("select");
        var i = 0;
        var intRadioCounter = 0;
        for (i = 0; i < ArrayOfInputControlList.length; i++) 
        {
            var obj = ArrayOfInputControlList[i];
            //Object Exist?
            if (obj) 
            {
                //Object Is RadioButtonList?
                if (obj.type == "radio") {
                    obj.checked = false; 
                    ArrayOfRadioButoonControlList[intRadioCounter] = obj;
                    intRadioCounter++;
                }
            }
        }
        Control.checked = true;
        //Loop through the Radio buttons
        for (i = 0; i < ArrayOfRadioButoonControlList.length; i++) 
        {
            if (ArrayOfRadioButoonControlList[i].checked == true)
                ArrayOfComboBoxControlList[i].disabled = false;
            else
                ArrayOfComboBoxControlList[i].disabled = true;
        }                        
        return false;
    }
}

function OnRadioPlanChange(ViewGroupId, Control) 
{
    var ViewGroupObj = document.getElementById(ViewGroupId);
    if (ViewGroupObj) 
    {
        var ArrayOfInputControlList = ViewGroupObj.getElementsByTagName("input");
        var i = 0;
        for (i = 0; i < ArrayOfInputControlList.length; i++) 
        {
            var obj = ArrayOfInputControlList[i];
            //Object Exist?
            if (obj) 
            {
                //Object Is RadioButtonList?
                if (obj.type == "radio") 
                {
                    obj.checked = false;
                }
            }
        }
        Control.checked = true;
    }
}

function OnRadioPricePlanSubmit(ViewGroupId) 
{
    var ViewGroupObj = document.getElementById(ViewGroupId);
    
    if (ViewGroupObj) 
    {
        var ArrayOfInputControlList = ViewGroupObj.getElementsByTagName("input");
        
        //Create new Radio button Control List
        var ArrayOfRadioButoonControlList = new Array();
        var ArrayOfInputHiddenControlList = new Array();
        var i = 0;
        var intRadioCounter = 0;
        var intHidden =0
        // ... Iterate and create an array of Radio controls
        for (i = 0; i < ArrayOfInputControlList.length; i++) 
        {
            var obj = ArrayOfInputControlList[i];
            //Object Exist?
            if (obj) 
            {
                //Object Is RadioButtonList?
                if (obj.type == "radio") 
                {
                    ArrayOfRadioButoonControlList[intRadioCounter] = obj;
                    intRadioCounter++;
                }
                else if (obj.type == "hidden") 
                {
                    ArrayOfInputHiddenControlList[intHidden] = obj;
                    intHidden++;
                }
            }
        }
        
        //Loop through the Radio buttons
        var CartPostValue;
        var CartPostType;
        for (i = 0; i < ArrayOfRadioButoonControlList.length; i++) 
        {
            if (ArrayOfRadioButoonControlList[i].checked == true) 
            {
                var objHiddenElement = ArrayOfInputHiddenControlList[i];
                var oAttrCartPostType = objHiddenElement.attributes.getNamedItem("CartPostType");
                if (oAttrCartPostType)
                    CartPostType = oAttrCartPostType.value;

                var oAttrCartPostValue = objHiddenElement.attributes.getNamedItem("CartPostValue");
                if (oAttrCartPostValue)
                    CartPostValue = oAttrCartPostValue.value;
                
                break;
            }
        }
        return DoCartAction(CartPostType, CartPostValue);
        
        
    }
}

function OnRadioMLPricePlanSubmit (ViewGroupId) {
    var ViewGroupObj = document.getElementById(ViewGroupId);

    if (ViewGroupObj) 
    {
        //Create new Radio button Control List
        var ArrayOfRadioButoonControlList = new Array();
        
        //Retrieve all the ML Drop down list
        var ArrayOfComboBoxControlList = ViewGroupObj.getElementsByTagName("select");
        var ArrayOfInputControlList = ViewGroupObj.getElementsByTagName("input");
        var objCartPostTypeHiddenElement;
        var i = 0;
        var intRadioCounter = 0;
        for (i = 0; i < ArrayOfInputControlList.length; i++) {
            var obj = ArrayOfInputControlList[i];
            //Object Exist?
            if (obj) {
                //Object Is RadioButtonList?
                if (obj.type == "radio") 
                {
                    ArrayOfRadioButoonControlList[intRadioCounter] = obj;
                    intRadioCounter++;
                }
            }
        }
        
        var objMLComboBox;
        //Loop through the Radio buttons
        for (i = 0; i < ArrayOfRadioButoonControlList.length; i++) 
        {
            if (ArrayOfRadioButoonControlList[i].checked == true) 
            {
                objMLComboBox = ArrayOfComboBoxControlList[i];
                var iSelected = objMLComboBox.selectedIndex;
                if (iSelected == -1)
                    iSelected = 0;

                var selectedOption = objMLComboBox.options[iSelected];
                
                CartPostValue = selectedOption.value;
                var oAttrCartPostType = selectedOption.attributes.getNamedItem("CartPostType");
                if (oAttrCartPostType)
                    CartPostType = oAttrCartPostType.value;

                return DoCartAction(CartPostType, CartPostValue);
            }
        }
        return false;
    }
}



