var generic = generic || {};

// resource bundling


document.observe("dom:loaded", function() {
    // setup user
    var userParams = {};
    userParams.pageDataKey = 'globalnav.user';
    generic.user.getUser(userParams);

    // setup cart
    var cartParams = {};
    cartParams.pageDataKey = 'globalnav.cart';
    generic.checkout.cart.getCart(cartParams);
    generic.updateGlobalQty();

	var email_link = $('email-link');
	if ( email_link ) email_link.applyDefinition(FloatingPanelLink);

	var help_link = $('help-link');
	if ( help_link ) help_link.applyDefinition(FloatingPanelLink);
});

document.observe("cart:countsUpdated", function(){
    console.log( "cart:countsUpdated event caught" );
    // update global qty display
    generic.updateGlobalQty();
});

// assumes user:loaded event exists
document.observe("user:updated", function(){
    console.log( "user:updated event caught" );
    // update any user-dependent display
});

generic.updateGlobalQty = function(){
    var total = generic.checkout.cart.totalItems;
    var rbBrandHash = generic.rb('brand');
    var subtotal = total + ' ' + ((total == 1) ? rbBrandHash.get('Nav_Item') : rbBrandHash.get('Nav_Items'));
    $$('.cart-qty').each(function(elem){
		elem.innerHTML = subtotal;
    });
}

