/* * Build the main menu drop downs */ (function ($) { Drupal.behaviors.osf_main_menu = { attach: function (context, settings) { $('#region-menu nav.navigation ul > li').each(function(i, li) { var ul = $('ul', li); if (ul.length > 0 && !$(this).hasClass('hamburger') && !$(this).hasClass('more')) { $('> a', li).addClass('has-children'); } }); $('#boxes-box-global_languge_toggle a', context).first().click(function(e){ $('#boxes-box-global_languge_toggle li').not(":first").slideToggle('fast'); e.preventDefault(); }); $('#boxes-box-global_language_title_en a', context).first().click(function(e){ $('#boxes-box-global_language_title_en li').not(":first").slideToggle('fast'); e.preventDefault(); }); $('#toggle-zone-menu', context).click(function(e){ $('#zone-signup-menu').slideUp("fast"); $('#zone-search-menu').slideUp("fast"); $('#zone-menu').slideToggle("slow"); e.preventDefault(); }); $('#toggle-search-menu', context).click(function(e){ $('#zone-menu').slideUp("fast"); $('#zone-signup-menu').slideUp("fast"); $('#zone-search-menu').slideToggle("slow"); e.preventDefault(); }); $('#toggle-signup-menu', context).click(function(e){ $('#zone-menu').slideUp("fast"); $('#zone-search-menu').slideUp("fast"); $('#zone-signup-menu').slideToggle("slow"); e.preventDefault(); }); $('html', context).click(function(event){ // CLOSE LANG NAV if click outside it if ( $(event.target).parents('#boxes-box-global_languge_toggle').length < 1 ) { $('#boxes-box-global_languge_toggle li').not(":first").slideUp('fast'); } if ( $(event.target).parents('#boxes-box-global_language_title_en').length < 1 ) { $('#boxes-box-global_language_title_en li').not(":first").slideUp('fast'); } if($(event.target).parent().hasClass('hamburger') || $(event.target).parent().hasClass('more')) { $('#navburger-subnav').slideToggle("fast"); event.preventDefault(); } if ($(event.target).parents('#zone-menu-wrapper, #zone-branding-wrapper').length < 1 && $('#zone-menu #block-osf-search-global-site-search').length > 0) { // They clicked outside the main menu AND the site-search block is // inside the header (it's the 'mobile menu' drop-down); close it. $('#zone-menu').slideUp("fast"); $('#zone-signup-menu').slideUp("fast"); $('#zone-search-menu').slideUp("fast"); } if ( $(event.target).parents('.expanded .menu').length < 1 ) { // They clicked outside an expanded submenu header, so we can collapse // submenu items. $('#region-menu nav.navigation ul ul').not('#region-menu nav.navigation ul .hamburger ul, #region-menu nav.navigation ul .more ul').slideUp("fast"); } var thisUL = $(event.target).siblings('ul.menu'); if($(event.target).hasClass('has-children')) { if($(event.target).hasClass('open')) { thisUL.slideUp("fast"); $('#region-menu nav.navigation ul li a.has-children').removeClass('open'); } else { thisUL.slideDown("fast"); $('#region-menu nav.navigation ul li a.has-children').removeClass('open'); $(event.target).addClass('open'); } event.preventDefault(); } else { $('#region-menu nav.navigation ul li a.has-children').removeClass('open'); } }); } }; }(jQuery));