site.account.init = function() {      
    //console.log("site.account.init");  
    
    //global 
    var accountConfig = site.globalnav.config.items.find(function(item) {
         if (item.id=="my_mac") return true;
    }).sections; 
    this.panel.init(accountConfig);  
       
    if (page_data.panel_nav["default"].id != "account") return; 

    
    // account pages
        
     // signin: forgot password link
     var forgotPassLinkNode = $("forgot-password");
     if (forgotPassLinkNode) { 
                // case could be checkout if signin checkout throws error, but page address is /account/password_request.tmpl
                var isCheckout = !!(generic.env.query("checkout")==="1"); 
                var signinFormContainer = $("returning-user-container");
                brand.account.forgotPassLink.init({
                    linkNode: forgotPassLinkNode,
                    formContainer: signinFormContainer,
                    emailFieldName: "EMAIL_ADDRESS",
                    modeFieldName: "LOSTPWMODE",
                    isCheckout: isCheckout
                });
    } 
        
    // registration: existing customer mode
    var customer = page_data.customer || null;
    if (customer && $("profile-form")) {
            brand.account.toggleProfileContent.init({
                profile: { link: "link-edit-profile", toShow: "profile-form", toHide: "profile-static" },
                address: { link: "link-edit-address", toShow: "registration-address-form", toHide: "registration-address-static" }
            });
     }

        // account pages w/ address form
        var formContainerNode = $$("div.form_container")[0];
        var lookupButtonNode = (formContainerNode ? formContainerNode.select('a.address-lookup-submit')[0] : false);
        if (lookupButtonNode) { 
             // initialize Address Lookup for inline address form
             var lookupForm = site.checkout.initAddressLookupForm({
                lookupButtonNode    : lookupButtonNode,
                postcodeInputNode   : formContainerNode.select('.input_postal_code')[0],
                cityInputNode       : formContainerNode.select('.input_city')[0],
                streetInputNode     : formContainerNode.select('.input_address_1')[0],
                prefectureSelectNode: formContainerNode.select('.prefecture_select')[0],
                resultContainerNode : formContainerNode.select("div.lookup-results-container")[0]        
            });   
        }
        
        // address book remove button
        // TO DO: use pd page location data instead of DOM checking when pd.panel_nav id's are fixed for address book
        var addressList = $("address-list");
        if (addressList) {
            var deleteLinks = addressList.select(".btn-remove");
            if (deleteLinks.length > 0) {
                brand.account.addressDeleteLinks.init({
                    linkNodes: deleteLinks
                });
            }
        } 
 }
 
 
 
 