
window.onload = function(){
    function addEventListener(elem, evname, func)
    {
        if(!elem){return;}
        if(elem.addEventListener){ //for DOM
            elem.addEventListener(evname, func, false);
        }
        else if(elem.attachEvent){ //for IE
            elem.attachEvent("on" + evname, func);
        }
    };

    function prepareToDisableDeliveryInfoOnChecked()
    {
        var checkbox = document.getElementsByName("delive_to_customer_address").item(0);
        var targetNames = [
            "delivery_name",
            "delivery_name_pronounce",
            "delivery_address_postcode1", "delivery_address_postcode2", "delivery_address_complete_by_postcode",
            "delivery_address_prefecture",
            "delivery_address_city",
            "delivery_address_number",
            "delivery_address_house",
            "delivery_phone1", "delivery_phone2", "delivery_phone3"];
        function updateTargetsDisabled()
        {
            for(var ni = 0; ni < targetNames.length; ++ni){
                var targetElems = document.getElementsByName(targetNames[ni]);
                for(var li = 0; li < targetElems.length; ++li){
                    targetElems.item(li).disabled = checkbox.checked;
                }
            }
        }
        addEventListener(checkbox, "change", updateTargetsDisabled);
        addEventListener(checkbox, "click", updateTargetsDisabled);
    };

    prepareToDisableDeliveryInfoOnChecked();
    PostCodeComplete.insertButtonAfterNamedElement(
        "customer_address_postcode2",
        "customer_address_postcode1",
        "customer_address_postcode2",
        "customer_address_prefecture",
        "customer_address_city",
        "customer_address_number");
    var buttonCompleteDeliveryAddress =
    PostCodeComplete.insertButtonAfterNamedElement(
        "delivery_address_postcode2",
        "delivery_address_postcode1",
        "delivery_address_postcode2",
        "delivery_address_prefecture",
        "delivery_address_city",
        "delivery_address_number");
    if(buttonCompleteDeliveryAddress){
        buttonCompleteDeliveryAddress.name = "delivery_address_complete_by_postcode";
    }
}

