1/** 2 * @file 3 * Js file for menus. 4 */ 5/** 6 * @file 7 * Js file for actualité. 8 */ 9(function ($) { 10 $(document).ready(function () { 11 12 //Openu menu on active items Mobile 13 if($.CRSM.isMobile() || $.CRSM.isTablet()) { 14 $('#navbar-holder > li').each(function() { 15 var $this = $(this); 16 $this.find('.dropdown-menu > .megamenu .megamenu-lists > ul > li ').each(function() { 17 var $that = $(this); 18 if(!$that.hasClass('children')) { 19 if($that.find('.lvl-2 a').hasClass('active')) { 20 $this.addClass('open'); 21 } 22 } 23 else { 24 $that.each(function(){ 25 var there = $(this); 26 there.find('.lvl-2-sub-menu > ul > li').each(function() { 27 if(there.find('a').hasClass('active')) { 28 $this.addClass('open'); 29 $that.addClass('open'); 30 } 31 }) 32 }); 33 } 34 }); 35 }); 36 } 37 38 39 //Reordering HTML on mobile 40 41 var trigger = $('.navbar-collapse .region-menu .block__content .navbar-toggle').clone(true, true); 42 $('.navbar-collapse .region-menu .block__content .navbar-toggle').remove(); 43 $('.navbar-default .navbar-header').prepend(trigger); 44 if ($('.navbar-toggle').hasClass('pull-left') ) { 45 $('.navbar-header').addClass('leftIconMobile'); 46 $('#navbar-collapse').attr('data-direction', 'right'); 47 } 48 if ($('.navbar-toggle').hasClass('pull-right')) { 49 $('.navbar-header').addClass('rightIconMobile'); 50 $('#navbar-collapse').attr('data-direction', 'left'); 51 } 52 if (( $('.navbar-toggle').hasClass('pull-right') || $('.navbar-toggle').hasClass('pull-left') ) && $('.navbar-toggle').hasClass('top')) { 53 $('#navbar-collapse').attr('data-direction', 'top'); 54 } 55 56 // Offcanvas support 57 $(".dropdown").unbind("mouseenter"); 58 $(".dropdown").unbind("mouseleave"); 59 $(".dropdown").unbind("focusin"); 60 $(".dropdown").unbind("click.radix.dropdown"); 61 62 $("[data-toggle='offcanvas']").on("click touchstart", function (e) { 63 var offcanvas = $(this).data("target"); 64 $("body, html").toggleClass("overlay"); 65 66 $(offcanvas).toggleClass("offcanvas-open"); 67 $(".navbar-default").toggleClass("open"); 68 $(".navbar-header .navbar-toggle").toggleClass("icon-cross"); 69 return false; 70 }); 71 72 // Hide offcanvas when clicking outside of it 73 $(document).on("click touchstart", function (e) { 74 if ($(e.target).hasClass("navbar")) { 75 $("body").toggleClass("overlay"); 76 $($(e.target).find(".navbar-offcanvas")).toggleClass("offcanvas-open"); 77 return false; 78 } 79 }); 80 81 // ADD SLIDEDOWN ANIMATION TO DROPDOWN // 82 $('.dropdown').on('show.bs.dropdown', function (e) { 83 84 $(this).find('.dropdown-menu').first().stop(true, true).slideDown(); 85 }); 86 87 $('.dropdown').on('hide.bs.dropdown', function (e) { 88 e.preventDefault(); 89 $(this).find('.dropdown-menu').first().stop(true, true).slideUp(); 90 $('.dropdown').removeClass('open'); 91 $('.dropdown').find('.dropdown-toggle').attr('aria-expanded', 'false'); 92 }); 93 // Multi-level submenu support 94 $(".dropdown-menu > li > a , .dropdown-menu > li > span").on("click", function (e) { 95 if ($(this).siblings(".sub-menu").length > 0) { 96 $(this).closest(".dropdown").addClass("open"); 97 $(this).parent("li").addClass("has-submenu").toggleClass("open"); 98 } else { 99 $(this).parent("li").siblings("li").removeClass("open"); 100 } 101 return false;
102 }); 103 104 // level 2 105 $(".dropdown-menu .megamenu-lists .megamenu-list.children .lvl-2 > a, .dropdown-menu .megamenu-lists .megamenu-list.children .lvl-2 > span").on("click", function (e) { 106 e.preventDefault(); 107 var $that = $(this); 108 109 if ($that.closest(".megamenu-list").hasClass("open")) { 110 $that.closest(".megamenu-list").find(".lvl-2-sub-menu").slideUp(500, function () { 111 $(this).closest(".megamenu-list").removeClass("open"); 112 }); 113 } else { 114 $that.closest(".megamenu-list").find(".lvl-2-sub-menu").slideDown(500, function () { 115 $that.closest(".megamenu-list").addClass("open"); 116 }); 117 } 118 e.stopPropagation() 119 }); 120 121 // Fix for megamenus 122 $(document).on("click", ".dropdown-megamenu .dropdown-menu", function (e) { 123 e.stopPropagation(); 124 }); 125 126 // Multi-level submenu support 127 $(".dropdown-megamenu > .dropdown-toggle").on("click", function (e) { 128 if ($(".dropdown.open").length > 0 && !$(this).closest(".dropdown").hasClass("open")) { 129 $(".dropdown.open").removeClass("open"); 130 } 131 }); 132 }); 133 134})(jQuery); 135 136 137 138(function($) { 139 Drupal.behaviors.vactory_menus = { 140 attach: function (context, settings) { 141 142 if(!jQuery('.adminimal-theme').length) { 143 var contentHeight = $('.region-content').height(); 144 if(contentHeight > 600) { 145 var is_sticky = false, 146 stickPosition = 0; 147 if(Drupal.settings.vactory_menus !== "undefined") { 148 is_sticky = Drupal.settings.vactory_menus.is_sticky; 149 stickPosition = Drupal.settings.vactory_menus.fix_position; 150 if(is_sticky) { 151 $('#header').wrap('<div class="wrapperHeader"></div>'); 152 $("#header ").affix({ 153 offset: { 154 top:stickPosition 155 } 156 }); 157 $("#header").on('affixed.bs.affix', function(){}); 158 $("#header").on('affix.bs.affix', function(){}); 159 } 160 } 161 } 162 } 163 164 } 165 }; 166 167})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.