
/*** NAV CONFIG ***/   
site.globalnav.config = {
    items : [
        {
            id: "products",
            content: {
                url: "/includes/panel_nav/catalog.tmpl",
                param: "CATEGORY_ID"
            },
            template: {
                detail: {
                    // detail cell image params
                    hdDir: "/images/pnav/product/headers/",
                    thumbDir: "/images/products/56x56/"
                }
            },
             
           // supercategories
           items : [
            {
                name : "What's New",
                id : "whatsnew",
                cmcat : "CAT794",
                header : "/images/gnav/gnav_whatsnew_157x18.gif",
                content: { url: "/cms/whats_new/panel_nav.tmpl" },
                template: { 
                    detail: { baseClass: "panelnav_cell_category" }
                }
            },
            {
                name : "Eyes",
                id : "CAT148",
                cmcat : "CAT148",
                header : "/images/gnav/gnav_eyes_157x18.gif"
            },
            {
                name : "Lips",
                id : "CAT163",
                cmcat :  "CAT163",
                header : "/images/gnav/gnav_lips_157x18.gif"
            },
            {
                name : "Face",
                id : "CAT155",
                cmcat : "CAT155",
                header : "/images/gnav/gnav_face_157x18.gif"
            }, 
            {
                name : "Prep+Primer",
                id : "CAT172",
                cmcat : "CAT172",
                header : "/images/gnav/gnav_primer_157x18.gif"
            },
            {
                name : "Studio",
                id : "CAT1921",
                cmcat :"CAT1921",
                header : "/images/gnav/gnav_studio_157x18.gif"
            },
             {
                name : "Mineralize",
                id : "CAT869",
                cmcat :"CAT869",
                header : "/images/gnav/gnav_mineralize_157x18.gif"
            },
            {
                name : "Multi-use",
                id : "CAT793",
                cmcat : "CAT793",
                header : "/images/gnav/gnav_multiuse_157x18.gif"
            },
            {
                name : "Skincare",
                id : "CAT176",
                cmcat : "CAT176",
                header : "/images/gnav/gnav_skincare_157x18.gif"
            },
            {
                name : "Brushes",
                id : "CAT144",
                cmcat : "CAT144",
                header : "/images/gnav/gnav_brushes_157x18.gif"
            },
            {
                name : "Kit Essentials",
                id : "CAT133",
                cmcat : "CAT133",
                header : "/images/gnav/gnav_kit_essentials_157x18.gif"
            },
            {
                name : "Accessories",
                id : "CAT139",
                cmcat: "CAT139",
                header : "/images/gnav/gnav_accessories_157x18.gif"
            }
            /*
            {
                name : "Custom Palette",
                id : "CAT791",
                cmcat : "CAT791",
                header : "/images/gnav/gnav_custompalette_157x18.gif"
            },
            
            {
                name : "Goodbyes",
                id : "discontinued",
                cmcat : "CAT20833",
                header : "/images/gnav/gnav_discontinuedproducts_157x18.gif",
                content: { 
                    url: "/discontinued/panel_nav.tmpl",
                    param: "dquery",
                    // featured goodbyes data: should come from panel nav include
                    featured : {
                        "name" : "Featured Goodbyes", 
                        "id" : "featured_goodbyes",
                        "header" : "/discontinued/images/headers/pnav_featured_goodbyes_250x18.gif",
                        "uri" : "/product/featured_goodbyes.tmpl"
                    }
                },
                template: {
                    detail: {
                        type: "jsTemplates.globalnav.SimpleDetail",
                        baseClass: "panelnav_cell_category"
                    }
                },
                search: {
                    formFieldId: "disc_search_input",
                    formSubmitId: "disc_search_submit"
                    //errorPopup: "pop_search_invalid"
                }
            } */
            /*
 No gift cards at launch for MAC UK2.  If added later, the category will need to be changed.
            {
                name : "Gift Card",
                id : "CAT792",
                cmcat : "CAT792",
                header : "/images/gnav/gnav_giftcard_157x18.gif",
                content: { url: "/giftcards/panel_nav.tmpl" }
            } 
	*/
        ]
    },
    {
        id: "makeup_artistry",
        items : [
            {
                name: "The Artists",
                id: "artists",
                cmcat : "CAT1048",
                header : "/images/gnav/gnav_theartists_157x18.gif",
                content: { 
                    url: "/cms/makeup_artistry/artists/panel_nav.tmpl",
                    handleAs: "html",
                    cms: true // global nav writes out cms panel navs for default state
                }         
            },
            {
                name: "Looks",
                id: "looks",
                cmcat: "CAT81",
                header : "/images/gnav/gnav_looks_157x18.gif",
                content: { 
                    url: "/cms/makeup_artistry/looks/panel_nav.tmpl",
                    widget: "ProductSubNav" // use ProductSubNav class instead of default PanelSubNav
                }
            },
            {
                name: "Artistry in Action",
                id: "artistry_in_action",
                cmcat : "260",
                header : "/images/gnav/gnav_artistry_in_action_157x18.gif",
                content: { url: "/cms/makeup_artistry/artistry_action/panel_nav.tmpl" }           
            },
            {
                name: "Faves",
                id: "faves",
                header : "/images/gnav/gnav_faves_157x18.gif",
                content: { 
                    url: "/cms/makeup_artistry/faves/panel_nav.tmpl",
                    widget: "SectionDescSubNav"
                },
                template: {
                    detail: { baseClass: "panelnav_cell_category" }
                }
            },
            {
                name: "MAC Pro",
                id: "macpro",
                cmcat: "280",
                header : "/images/gnav/gnav_macpro_157x18.gif",
                content: { 
                    url: "/cms/makeup_artistry/mac_pro/panel_nav.tmpl",
                    handleAs: "html"
                }           
            }
        ]
    },
     {
        id: "giving_back",
        cmcat: "290",
        content: { url: "/cms/giving_back/panel_nav.tmpl" },
        template: { 
            detail: {
                type: "jsTemplates.globalnav.SimpleDetail",
                baseClass: "panelnav_cell_category"
            }
        }
    },
    {
        id: "my_mac",
        cmcat: "1000",
        handleAs: "html",
        hasLoaded: true, // panel nav & subnav already placed into page
        sections:  ["messages", "reorder", "favorites","address_book", "registration", "billing_info", "order_history"] 
    },
    {
        id: "customer_service",
        cmcat: "1400",
        content: {
            url: "/cms/customer_service/panel_nav.tmpl",
            handleAs: "html",
            cms: true
        }
    } , 
   /* {
        id: "country_chooser",
        cmcat: "1400",
        handleAs: "html",
        hasLoaded: true
    },  */
    {
        id: "search",
        cmcat: "1700",
        content: { 
            url: "/search/includes/panel_nav.tmpl",
            param: "query"
        },
        // for product search in includes/global_nav.tmpl
        search: {
            formFieldId: "search",
            formSubmitId: "search_button",
            errorPopup: "pop_search_invalid"
        }
    }
  ],

    
    // key for handling non-default content types as passed in data as item.type (via loader config or via included tmpl JSON)
    // EX: collections Detail modules use default baseClass "panelnav_cell_category" as well as "panelnav_cell_header_only"
    altTypes : {
        "header_only" : { 
            detail: { baseClass: "panelnav_cell_header_only" }
        },
        "simple_detail" : {
            detail: { template: "SimpleDetail" }
        }
    }
    
};
  
//initialize globalnav 
site.globalnav.init = function() { 
       if (site.globalnav.abort || !$("globalnav")) return;
       //console.log("site.globalnav.init "+page_data.panel_nav["default"].id);
       
       var section = page_data.panel_nav["default"].id;
       
       // get default page state 
       // structure: defaultState{ id: "", item: { id: "", item: {...} } }
        var defaultState = {};
        if (page_data && page_data.panel_nav) {
        	 defaultState = page_data.panel_nav["default"];
        }
    
        if (section=="products") {
            $("panel_open").addClassName("panel_open_products_panel");	   
        }
        
        // in global_nav.tmpl
       globalNavSetId = "globalnav_container"; 
        
       globalSet =  new site.globalnav.GlobalSet({id:"globalnav_container"});  
       
       var wc = globalSet._objChildren;
       //$("globalnav_container").widget = {children:[]}; 
       
       wc["gnav_products"] = new site.globalnav.Accordion({
                        id: "gnav_products", 
                        parentId: "globalnav_container", 
                        domParent: "globalnav",
                        pnavsetChild: "pnavset_products",
                        displayName: "Shop Products",
                        hdPath: "/images/gnav/gnav_products_157x18.gif",
                        hasLoaded: true   
                    });  
   
            
       wc["gnav_makeup_artistry"] = new site.globalnav.Accordion({
                        id: "gnav_makeup_artistry", 
                        parentId: "globalnav_container", 
                        domParent: "globalnav",
                        pnavsetChild: "pnavset_makeup_artistry",
                        displayName: "Makeup Artistry",
                        hdPath: "/images/gnav/gnav_artistry_157x18.gif",
                        hasLoaded: true   
        });   
        
       var gbClass = (section == "giving_back") ? site.globalnav.Header : site.globalnav.PanelNav; 
       wc["giving_back"] = new gbClass ({
                        id: "pnav_giving_back", 
		    parentId: "globalnav_container", 
                        domParent: "globalnav",
                        itemId: "giving_back", 
                        displayName: "Giving Back",
                        hdPath: "/images/gnav/gnav_givingback_157x18.gif",
                        hasLoaded: true  
        });   

       
        	var myMacClass = (section=="account"||section=="checkout") ? site.globalnav.Header : site.globalnav.PanelNav;
          wc["my_mac"] = new myMacClass ({
                        id: "pnav_my_mac", 
                        parentId: "globalnav_container", 
                        domParent: "globalnav",
                        itemId: "my_mac", 
                        displayName: "My Mac",
                        hdPath: "/images/gnav/gnav_mymac_157x18.gif",
                        hasLoaded: true,
                        isdefault:true
          }); 	
          
         if ($("psubnav_my_mac")) {
          var psubnav_my_mac = new site.globalnav.PanelSubNav ({
                        id: "psubnav_my_mac", 
                        parentId: "pnav_my_mac", 
                        hasLoaded: true,
                        cache: false,
                        reinsertNode: true
          });  
          } 
          
         if ($("psubitem_myaccount")) {  
            var psubitem_myaccount = new brand.globalnav.Accordion({
                        id: "psubitem_myaccount", 
                        parentId: "psubnav_my_mac", 
                        displayName: "My Account",
                        pnavsetChild: "psubitem_myaccount_sub",
                        hdPath: "/images/account/headers/pnav_my_account_250x18.gif",
                        hasLoaded: true 
          }); 
        }
       
        if ($("pnav_customer_service")) { 
          wc["pnav_customer_service"] = new site.globalnav.PanelNav ({
                        id: "pnav_customer_service", 
                        parentId: "globalnav_container", 
                        domParent: "globalnav",
                        itemId: "customer_service", 
                        displayName: "Customer Service",
                        hdPath: "/images/gnav/gnav_customer_service.gif",
                        hasLoaded: true,
                        isdefault:true
          });        
       }  
               
         // init entire nav
        globalSet.gnav = new site.globalnav.GlobalNav({
                config: site.globalnav.config, // all nav items
                defaultState: defaultState, // default/open state data
                globalNavSetId: globalNavSetId
        });      

 }
    
