1function logo_depend_banners(menu_color) { 2 menu_color = 3 menu_color || $(".banners-big--detail .banners-big__item").data("color"); 4 5 let bLightMenu = menu_color && menu_color === "light"; 6 7 const $header = document.querySelector('header'); 8 const $headerLogo = document.querySelector("header .logo img"); 9 10 // set header color if there is banner 11 if (document.querySelector(".banners-big")) { 12 $header.classList.remove('light', 'dark'); 13 14 if (bLightMenu) { 15 $header.classList.add(menu_color); 16 } 17 } else { 18 bLightMenu = !!$header.classList.contains('light'); 19 } 20 21 if ($headerLogo && arAsproOptions.THEME.LOGO_IMAGE_WHITE) { 22 // get color scheme 23 const bDarkMode = !!~document.querySelector("body").className.indexOf("theme-default") 24 ? window.matchMedia("(prefers-color-scheme: dark)").matches 25 : !!~document.querySelector("body").className.indexOf("theme-dark"); 26 27 // set main logo image 28 const bLogoOpacity = // when logotype on transparent background 29 $("body.header_opacity:not(.left_header_column)").length && 30 ( 31 !$("header.header--offset").length || 32 $("header .logo").closest(".header__top-part").length || 33 ( 34 $("header.header--offset").length && 35 $("header .header__main-inner.bg_none, header .header__sub-inner.bg_none").length 36 ) 37 ); 38 const bLogoWhite = !!document.querySelector( 39 ".header__main-inner.header--color_colored .logo, .header__main-inner.header--color_dark .logo, .header__main-part.header--color_dark .logo, .header__main-part.header--color_colored .logo, .header__inner--parted.dark .logo, .header__sub-inner.header--color_colored .logo, .header__sub-inner.header--color_dark .logo" 40 ); // when logo is permanent white 41 const logoImage = 42 (bLogoOpacity && bLightMenu) || // logo on transparent banner 43 (!bLogoOpacity && (bDarkMode || (!bDarkMode && bLogoWhite))) // logo on painted banner 44 ? arAsproOptions.THEME.LOGO_IMAGE_WHITE 45 : arAsproOptions.THEME.LOGO_IMAGE; 46 $headerLogo.setAttribute("src", logoImage); 47 48 // // set other logotypes 49 // const $logotypes = document.querySelectorAll( 50 // "#headerfixed .logo img, .mobileheader--color-white .logo img, .mobileheader--color-grey .logo img, #mobilemenu .logo img" 51 // ); 52 // if ($logotypes.length) { 53 // for (let i = 0; i < $logotypes.length; i++) { 54 // $logotypes[i].setAttribute( 55 // "src", 56 // bDarkMode && arAsproOptions.THEME.LOGO_IMAGE_WHITE 57 // ? arAsproOptions.THEME.LOGO_IMAGE_WHITE 58 // : arAsproOptions.THEME.LOGO_IMAGE 59 // ); 60 // } 61 // } 62 } 63} 64 65BX.addCustomEvent("onChangeThemeColor", function (e) { 66 const menu_color = document.querySelector('.main-slider__item.swiper-slide-active') && document.querySelector('.main-slider__item.swiper-slide-active').dataset.color; 67 logo_depend_banners(menu_color); 68});
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.