1jQuery(function($) { 2 $wrap = $('.classic-menu'); 3 $menu = $wrap.find('>ul'); 4 5 var menu_height = $menu.outerHeight(true); 6 $wrap.height(menu_height); 7 8 9 var calculateTopPadding = function( callFrom ) { 10 var callFrom = typeof callFrom !== 'undefined' ? callFrom : 'default'; 11 var wrapper = $('.wrapper'); 12 switch ( callFrom ) { 13 case 'pjax': 14 15 if(!IRON.state.responsive) { 16 17 if(IRON.state.menu.classic_menu_over_content == '0' ) { 18 wrapper.eq(1).css('padding-top', $wrap.outerHeight(true) + 'px'); 19 } 20 21 if(IRON.state.menu.classic_menu_position == 'absolute absolute_before') { 22 wrapper.eq(1).css('padding-top', $wrap.outerHeight(true) + 'px'); 23 } 24 25 }else{ 26 wrapper.eq(1).css('padding-top', ''); 27 } 28 29 break; 30 31 default: 32 if(!IRON.state.responsive) { 33 34 if(IRON.state.menu.classic_menu_over_content == '0' ) { 35 $('#wrapper').css('padding-top', $wrap.outerHeight(true) + 'px'); 36 } 37 38 if(IRON.state.menu.classic_menu_position == 'absolute absolute_before') { 39 $('#wrapper').css('padding-top', $wrap.outerHeight(true) + 'px'); 40 } 41 42 }else{ 43 $('#wrapper').css('padding-top', ''); 44 } 45 } 46 47 48 49 } 50 51 // add class ready when classic menu is ready. 52 $(window).load( function() { $('.classic-menu').addClass('ready'); }); 53 // activate responsiveness to classic menu. 54 55 if($('html').hasClass('no-touchevents')) { 56 $(window).on('load', responsiveMenu); 57 $(window).on('resize', responsiveMenu); 58 }else{ 59 $(window).on('resize', responsiveMenu); 60 $(window).on('load', responsiveMenu); 61 } 62 63 // function that activate responsiveness 64 function responsiveMenu() { 65 IRON.state.responsive = false; 66 if( $(window).width() < 1144 ) { 67 IRON.state.responsive = true; 68 $('.classic-menu').addClass('responsive').removeClass('mini'); 69 /*if(logo_mini_url != '') { 70 $('.classic-menu').find('.classic-menu-logo').attr('src', logo_url); 71 }*/ 72 if(IRON.state.logo.use_alternative_logo_on_mobile) { 73 $('.classic-menu').find('.classic-menu-logo').attr('src', IRON.state.logo.logo_page_url); 74 }else{ 75 $('.classic-menu').find('.classic-menu-logo').attr('src', $wrap.data('logo')); 76 } 77 78 79 if( $('.responsive-header').length < 1 ) { 80 $('<div class="responsive-header"><a class="sandwich-icon"></a></div>').prependTo('.classic-menu'); 81 $('.classic-menu.responsive .hotlink').first().addClass('first-hotlink'); 82 $('.classic-menu.responsive .hotlink').eq(-2).addClass('last-hotlink'); 83 var hotlinksCount = $('.classic-menu.responsive .hotlink').length; 84 var hotlinkWidth = (100 - ((parseInt(hotlinksCount) - 3)*10)) /2; 85 if( hotlinksCount > 2 ) $('.classic-menu.responsive .hotlink.first-hotlink').attr('style', 'width: ' + hotlinkWidth + '% !important' ); 86 if( hotlinksCount == 1 ) $('.classic-menu.responsive .hotlink, .classic-menu.responsive .hotlink a').attr('style', 'width: 100% !important; text-align:center !important;' ); 87 if (jQuery('.languages-selector').children().length == 0){ 88 $( '.languages-selector' ).remove(); 89 } 90 91 } 92 $('.responsive-header').off().on('click', '.sandwich-icon', function(e) { 93 // e.preventDefault(); 94 95 // debugger 96 if( $('.classic-menu').is('.visible') ) { $('.sandwich-icon').removeClass('opened'); $('.classic-menu').removeClass('visible'); return false; } 97 else { $('.sandwich-icon').addClass('opened'); $('.classic-menu').addClass('visible'); } 98 }); 99 100 $('.classic-menu ul li a').off().on('click', function(e) { 101 102 // toggle in all case active class 103 var anchor = $(this) 104 var anchorParents = anchor.parents('li') 105 106 $(this).parents('#menu-main-menu').find('li').each(function(el){ 107 if ( !_.contains( anchorParents, this ) ) { 108 $(this).removeClass('active') 109 } 110 }) 111 $(this).closest('li').not('.logo').toggleClass('active'); 112 113 if( $(this).attr('href') == '#' || !$(this).hasAttr('href') ){ 114 e.preventDefault(); 115 }else{ 116 // window.location.href = $(this).attr('href'); 117 $('.classic-menu').removeClass('visible'); 118 $('.classic-menu .sandwich-icon').removeClass('opened'); 119 $('.classic-menu').scrollTop(0); 120 } 121 122 }); 123 124 } else { 125 $('.classic-menu').removeClass('responsive'); 126 if($('.classic-menu').hasClass('mini') ){ 127 if(IRON.state.logo.logo_mini_url != '') { 128 $('.classic-menu').find('.classic-menu-logo').attr('src', IRON.state.logo.logo_mini_url); 129 } 130 131 }else{ 132 $('.classic-menu').find('.classic-menu-logo').attr('src', IRON.state.logo.logo_url); 133 } 134 135 $('.classic-menu .hotlink').attr('style', ''); 136 $('.classic-menu .responsive-header').remove(); 137 } 138 139 setTimeout(function() { 140 calculateTopPadding(); 141 },450); 142 } 143 144 145 146 function fixLogoMargin() { 147 148 if($('.classic-menu > ul > li.logo').hasClass('pull-center') || $('.classic-menu > ul > li.logo').hasClass('pull-top')) 149 return false; 150 151 var itemHeight = $('.classic-menu > ul > li').not('.logo').first().outerHeight(true); 152 var logoHeight = $('.classic-menu > ul > li.logo a').height(); 153 var marginTop = (itemHeight / 2) - (logoHeight / 2); 154 $('.classic-menu > ul > li.logo a').css('margin', marginTop+'px 0 0'); 155 } 156 157 158 159 160 IRON.setupMenu = function() { 161 var total_items = $menu.find('>
161li:not(".hotlink")').length; 162 163 var position = 0; 164 if ( IRON.state.logo.logo_align == 'pull-right' ) { 165 position = total_items 166 } 167 if ( IRON.state.logo.logo_align == 'pull-center' ) { 168 position = Math.ceil(total_items / 2); 169 } 170 171 172 // Activate Mini menu. 173 var lastScrollTop = 0; 174 175 if(IRON.state.logo.logo_page_url ==''){ 176 IRON.state.logo.logo_page_url = IRON.state.logo.logo_url; 177 if(IRON.state.logo.logo_page_retina_url ==''){ 178 IRON.state.logo.logo_page_retina_url = IRON.state.logo.retina_logo_url; 179 } 180 } 181 if(IRON.state.logo.logo_page_retina_url ==''){ 182 IRON.state.logo.logo_page_retina_url = IRON.state.logo.logo_page_url; 183 } 184 if(IRON.state.logo.retina_logo_url ==''){ 185 IRON.state.logo.retina_logo_url = IRON.state.logo.logo_url; 186 } 187 188 $(document).on('scroll touchmove', function (e) { 189 var offset = $(this).scrollTop(); 190 var st = $(this).scrollTop(); 191 192 if( ( $('.classic-menu').hasClass('mini-active') || $('.classic-menu').hasClass('mini-fullwidth-active') ) && !$('.classic-menu').hasClass('responsive')) { 193 if (offset > 150) { 194 if( !$('.classic-menu').hasClass('mini') ){ 195 $('.classic-menu').css( 'width', '100%' ).addClass('mini'); 196 } 197 if(IRON.state.logo.logo_mini_url != '') { 198 $('.classic-menu').find('.classic-menu-logo').attr('src', IRON.state.logo.logo_mini_url); 199 $('.classic-menu').find('.classic-menu-logo').attr('srcset', IRON.state.logo.logo_mini_url + ' 1x, ' + IRON.state.logo.logo_mini_url + ' 2x'); 200 201 202 } 203 204 } 205 if (offset <= 150) { 206 if( $('.classic-menu').hasClass('mini') ){ 207 $('.classic-menu').css( 'width', $('body').width() - 2*parseInt(iron_vars.menu.classic_menu_hmargin) ).removeClass('mini') ; 208 } 209 if(IRON.state.logo.logo_mini_url != '') { 210 $('.classic-menu').find('.classic-menu-logo').attr('src', IRON.state.logo.logo_url); 211 $('.classic-menu').find('.classic-menu-logo').attr('srcset', IRON.state.logo.logo_url + ' 1x, ' + IRON.state.logo.retina_logo_url + ' 2x'); 212 } 213 } 214 215 fixLogoMargin(); 216 217 } 218 lastScrollTop = st; 219 220 $('.classic-menu').css('height', ''); 221 222 }); 223 224 setTimeout(function() { 225 fixLogoMargin(); 226 },450); 227 228 229 230 231 232 calculateTopPadding(); 233 234 if(IRON.state.logo.use_alternative_logo && !IRON.state.responsive) { 235 //if(logo_page_url != '' && !$('.classic-menu').hasClass('responsive')) { 236 IRON.state.logo.logo_url = IRON.state.logo.logo_page_url; 237 238 if(IRON.state.logo.logo_page_retina_url !=''){ 239 IRON.state.logo.retina_logo_url = IRON.state.logo.logo_page_retina_url; 240 } 241 } 242 243 if(IRON.state.logo.use_alternative_logo_on_mobile && IRON.state.responsive) { 244 //if(logo_page_url != '' && !$('.classic-menu').hasClass('responsive')) { 245 IRON.state.logo.logo_url = IRON.state.logo.logo_page_url; 246 247 if(IRON.state.logo.logo_page_retina_url !=''){ 248 IRON.state.logo.retina_logo_url = IRON.state.logo.logo_page_retina_url; 249 } 250 } 251 252 if(IRON.state.logo.logo_url) { 253 254 IRON.state.logo.logo_url = IRON.state.logo.logo_url.slice( IRON.state.logo.logo_url.indexOf('/') ) 255 IRON.state.logo.retina_logo_url = IRON.state.logo.retina_logo_url.slice( IRON.state.logo.retina_logo_url.indexOf('/') ) 256 257 var $logo = $('<li class="logo '+IRON.state.logo.logo_align+'"><a href="'+IRON.state.site_url+'"><img class="classic-menu-logo" src="'+IRON.state.logo.logo_url+'" srcset="'+IRON.state.logo.logo_url+' 1x, '+IRON.state.logo.retina_logo_url+' 2x" data-at2x="'+IRON.state.logo.retina_logo_url+'" alt="'+IRON.state.site_name+'"></a></li>'); 258 259 }else{ 260 var $logo = $('<li class="logo '+IRON.state.logo.logo_align+'"><a href="'+IRON.state.site_url+'">'+IRON.state.site_name+'</a></li>'); 261 } 262 263 if (!$menu.find('.logo').length) { 264 $menu.find('>li').eq(position).before($logo); 265 }else{ 266 $menu.find('.logo img').attr({ 267 src : IRON.state.logo.logo_url, 268 srcset : IRON.state.logo.logo_url+' 1x, '+IRON.state.logo.retina_logo_url+' 2x' 269 }) 270 } 271 272 // Collision: avoid submenu to be out of viewport. 273 $menu.find('>li a').on('mouseover', function(e) { 274 // check if has submenu 275 if( $(this).find(' + ul').length > 0 ) { 276 // var zI = 1; 277 var $_this = $(this).find(' + ul'); 278 if( $_this.outerWidth(true) + $_this.offset().left > $(window).width() ) { 279 // $_this.css('zIndex', zI++); 280 $(this).parent().addClass('collision'); 281 } 282 } 283 284 }); 285 286 // hotlinks 287 $hotlinks = $wrap.find('.classic-menu-hot-links'); 288 if($hotlinks.length > 0) { 289 var links = $hotlinks.html(); 290 $hotlinks.detach(); 291 $menu.append(links);
292 } 293 294 if($('.logo.pull-left')){ 295 var totalwidth = 0; 296 $(".hotlink.pull-right").each(function(){ 297 totalwidth = totalwidth + $(this).outerWidth(true); 298 }); 299 } 300 301 302 303 }; 304 305 $(window).on('load', IRON.setupMenu ); 306 307});
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.