/* languages admin panel */ #add-lang select { width: 95%; } #add-lang label { margin: 0.35em 0 0.5em; } .pll-legend { display: block; padding: 2px 0; color: #1d2327; font-weight: 400; text-shadow: none; margin: 0.35em 0 0.5em; } .column-locale, .languages .column-slug { width : 15% } .column-default_lang { width : 5%; } .column-term_group, .column-flag, .column-count { width : 10%; } td.column-default_lang .icon-default-lang:before, .pll-wizard-content .icon-default-lang:before { font-family: 'dashicons'; content: "\f155"; } .pll-icon:before{ display: inline-block; text-align: left; width: 15px; } .pll-circle:before{ content: "\25cf"; } /* about Polylang metabox */ #pll-about-box p, #pll-recommended p { text-align: justify; } #pll-about-box input { margin: 0; padding: 0; float: right; } /* strings translation table */ .stringstranslations .column-name, .stringstranslations .column-context { width: 10%; } .stringstranslations .column-string { width: 33%; } .translation label { display: inline-block; width: 23%; vertical-align: top; } .translation { display: flex; /* fix #691 to remove default margin bottom */ } @media screen and (max-width: 782px) { /* reset default display property for small device */ .translation{ display: block; } } .translation textarea{ display: block; /* fix #691 to remove default margin bottom */ } .translation input, .translation textarea { width: 72%; box-sizing: border-box; /* to be sure field don't overrun outside their wrapper */ margin-bottom: 4px; /* fix #691 set the same margin bottom for both textarea and input tags */ } /* settings */ .pll-settings { margin-top: 20px; } .pll-settings .plugin-title { width: 25%; } #wpbody-content .pll-settings .pll-configure tr { display: table-row; } #wpbody-content .pll-settings .pll-configure td { display: table-cell; } #wpbody-content .pll-settings .pll-configure > td { padding: 20px 20px 20px 40px; } .pll-configure legend { font-size: 14px; font-weight: 600; margin-bottom: 0.5em; } .pll-configure td .description { margin-top: 2px; margin-bottom: 0.5em; } .pll-configure p.submit { margin-top: 20px; } .pll-configure .button { margin-right: 20px; } .pll-configure fieldset { margin-bottom: 1.5em; } .pll-inline-block-list { margin: 0; } .pll-inline-block-list li { display: inline-block; margin: 0; width: 250px; } /* settings URL modifications */ #pll-domains-table td { padding: 2px 2px 2px 1.5em; -webkit-box-shadow: none; box-shadow: none; border: none; } .pll-settings-url-col { display: inline-block; width: 49%; vertical-align: top; } /* settings Activation keys */ #pll-licenses-table td { vertical-align: top; } #pll-licenses-table label { font-size: 1em; font-weight: 600; } .pll-configure .pll-deactivate-license { margin: 0 0 0 20px; } /* language columns in edit.php and edit-tags.php */ .wp-list-table th[class*='column-language_'], .wp-list-table td[class*='column-language_'] { width: 1.5em; box-sizing: content-box; /* Override ACF 5.9.0 styles */ } /* Text direction in post.php and edit-tags.php */ .pll-dir-rtl textarea, .pll-dir-rtl input[type="text"] { direction: rtl; } .pll-dir-ltr textarea, .pll-dir-ltr input[type="text"] { direction: ltr; } .pll-dir-ltr .tr_lang, .pll-dir-rtl .tr_lang { direction: inherit; } /* languages metabox in post.php */ #ml_box p { margin-top: 1em; } #post-translations p { float: left; margin-top: 1em; } .rtl #post-translations p { float: right; } #post-translations table { table-layout: fixed; width: 100%; clear: both; } #post-translations a { text-decoration: none; } #post-translations .pll-language-column, #post-translations .pll-column-icon { width: 20px; } #post-translations .tr_lang { width: 100%; } #post-translations td { padding: 2px; } #post-translations .spinner, #term-translations .spinner { float: none; margin: 0; background-position: center; width: auto; } #select-post-language .pll-select-flag { padding: 4px; margin-right: 10px; } .rtl #select-post-language .pll-select-flag { padding: 4px; margin-right: 0px; margin-left: 10px; } /* specific cases for media */ #select-media-language .pll-select-flag { padding: 4px; margin-right: 10px; } .pll-media-edit-column { float: right; } /* language and translations in edit-tags.php */ .pll-translation-flag { /* also for media */ margin-right: 14px; } #select-add-term-language .pll-select-flag { padding: 11px; margin-right: 13px; } #select-edit-term-language .pll-select-flag { padding: 11px; margin-right: 4px; } #term-translations p { /* same style as label */ font-weight: 400; font-style: normal; padding: 2px; color: #23282d; } #add-term-translations, #edit-term-translations { width: 95%; } #term-translations .pll-language-column { line-height: 28px; width: 20%; } #term-translations .pll-edit-column, #add-term-translations .pll-language-column { width: 20px; } #edit-term-translations .pll-language-column { padding: 15px 10px; font-weight: normal; } /* icon fonts */ .pll_icon_add:before { content: "\f132"; } .pll_icon_edit:before { content: "\f464"; } [class^="pll_icon_"] { font: 20px/1 'dashicons'; vertical-align: middle; } /* admin bar */ #wpadminbar #wp-admin-bar-languages .ab-item img { margin: 0 8px 0 2px; } #wpadminbar #wp-admin-bar-languages #wp-admin-bar-all .ab-item .ab-icon { float: none; top: 4px; } #wpadminbar #wp-admin-bar-languages .ab-icon:before { content: "\f326"; top: 1px; } #wp-admin-bar-languages.pll-filtered-languages { background: #a03f3f; } #wpadminbar #wp-admin-bar-languages.pll-filtered-languages span.ab-label{ /* Enforce white color for WordPress admin light theme. */ color: #fff; } /* Notices */ .pll-notice.notice { padding-right: 38px; position: relative; } .pll-notice a.notice-dismiss { text-decoration: none; } .pll-notice .button { margin-right: 10px; } @media screen and ( max-width: 782px ) { /* settings */ #wpbody-content .pll-settings .pll-configure > td { padding: 20px; } #wpbody-content .pll-settings #cb { padding: 20px 9px; } /* settings URL modifications */ .pll-inline-block { width: auto; } .pll-settings-url-col { display: block; width: 100%; } /* settings licenses */ #wpbody-content .pll-settings #pll-licenses-table td { display: block; } .pll-configure .pll-deactivate-license { margin: 10px 0 5px; } /* strings translations table */ .translation label { display: block; width: 95%; padding-left: 0; } .translation input, .translation textarea { width: 95%; } /* hide selected language flag and translations language name */ #select-add-term-language .pll-select-flag, #select-edit-term-language .pll-select-flag, #edit-term-translations .pll-language-name { display: none; } #edit-term-translations { width: 100%; } #add-term-translations .pll-language-column { line-height: 38px; } #edit-term-translations td { padding: 8px 10px; } #edit-term-translations .pll-language-column, #edit-term-translations .pll-edit-column { width: 20px; } /* translations tables should be kept as table */ .term-translations .pll-language-column, .term-translations .pll-edit-column, .term-translations .pll-translation-column { display: table-cell; } .term-translations .hidden { display: none; } /* admin bar */ #wpadminbar #wp-admin-bar-languages { display: block; /*shows our menu on mobile devices */ } #wpadminbar #wp-admin-bar-languages > .ab-item { width: 50px; text-align: center; } #wpadminbar #wp-admin-bar-languages > .ab-item .ab-icon:before { font: 32px/1 'dashicons'; top: -1px; } #wpadminbar #wp-admin-bar-languages > .ab-item img { margin: 19px 0; } #wpadminbar #wp-admin-bar-languages #wp-admin-bar-all .ab-item .ab-icon { margin-right: 6px; font-size: 20px !important; line-height: 20px !important; } } (function($){ // Detecting if an element is in the Viewport. $.fn.isInViewport = function() { var elementTop = $(this).offset().top; var elementBottom = elementTop + $(this).outerHeight(); var viewportTop = $(window).scrollTop(); var viewportBottom = viewportTop + $(window).height(); return elementBottom > viewportTop && elementTop < viewportBottom; }; AstraMenu = { /** * Init */ init: function() { this._bind(); var body = document.querySelector('body'); body.addEventListener( 'astraMenuHashLinkClicked', function ( event ) { AstraMenu._close_fullscreen(event); AstraMenu._close_offcanvas(event); }); }, /** * Binds events */ _bind: function() { var canvasEnable = astraAddon.off_canvas_enable || ''; if ( canvasEnable ) { $(document).on( 'click', '.' + astraAddon.off_canvas_trigger_class, {class: "ast-off-canvas-overlay"}, AstraMenu._enable_offcanvas_overlay ); $(document).on( 'click touchstart', '.astra-off-canvas-sidebar-wrapper, .astra-off-canvas-sidebar-wrapper .ast-shop-filter-close',{class: "ast-off-canvas-overlay"}, AstraMenu._close_offcanvas ); } else { if( astraAddon.off_canvas_trigger_class ) { $(document).on( 'click', '.' + astraAddon.off_canvas_trigger_class, AstraMenu._enable_collapsible_slider ); } } // Flyout above header menu. $(document).on( 'click', '.ast-flyout-above-menu-enable .ast-above-header .menu-toggle', AstraMenu._open_above_offcanvas ); $(document).on( 'click touchstart', '.ast-flyout-above-menu-overlay .ast-above-header-navigation-wrap, .ast-flyout-above-menu-overlay .ast-above-header .ast-nav-close', AstraMenu._close_above_offcanvas ); // Flyout above header menu. $(document).on( 'click', '.ast-flyout-below-menu-enable .ast-below-header .menu-toggle', AstraMenu._open_below_offcanvas ); $(document).on( 'click touchstart', '.ast-flyout-below-menu-overlay .ast-below-header-navigation-wrap, .ast-flyout-below-menu-overlay .ast-below-header .ast-nav-close', AstraMenu._close_below_offcanvas ); // Full Screen Below Header menu. $(document).on( 'click', '.ast-fullscreen-below-menu-enable .ast-below-header .menu-toggle', AstraMenu._open_below_fullscreen ); $(document).on( 'click', '.ast-fullscreen-below-menu-overlay .ast-below-header .close', AstraMenu._close_below_fullscreen ); // Full Screen menu. $(document).on( 'click', '.ast-fullscreen-above-menu-enable .ast-above-header .menu-toggle', AstraMenu._open_above_fullscreen ); $(document).on( 'click', '.ast-fullscreen-above-menu-overlay .ast-above-header .close', AstraMenu._close_above_fullscreen ); // Flyout menu. $(document).on( 'click', '.ast-flyout-menu-enable .main-header-bar .menu-toggle', { class: 'ast-flyout-menu-overlay'}, AstraMenu._enable_primary_menu_overlay ); $(document).on( 'click', '.ast-flyout-menu-overlay .main-header-bar-navigation, .ast-flyout-menu-overlay .main-header-bar .ast-nav-close', { class: 'ast-flyout-menu-overlay' }, AstraMenu._close_offcanvas ); $(document).on( 'click', '.ast-flyout-menu-overlay .main-header-bar-navigation', { class: "toggled" }, AstraMenu._toggle_menu ); // Full Screen menu. $(document).on( 'click', '.ast-fullscreen-menu-enable .main-header-bar .menu-toggle', AstraMenu._open_fullscreen ); $(document).on( 'click', '.ast-fullscreen-menu-overlay .main-header-bar .close', AstraMenu._close_fullscreen ); $(document).on( 'click', '.ast-fullscreen-menu-overlay .main-header-bar .close', { class: "toggled" }, AstraMenu._toggle_menu ); $(document).on( 'ready', AstraMenu._wp_admin_bar_visible ); $(window).on( 'scroll', AstraMenu._wp_admin_bar_visible ); }, _open_above_fullscreen: function(e) { e.preventDefault(); var innerWidth = $('html').innerWidth(); $('html').css( 'overflow', 'hidden' ); var hiddenInnerWidth = $('html').innerWidth(); $('html').css( 'margin-right', hiddenInnerWidth - innerWidth ); $('html').addClass( 'ast-fullscreen-above-menu-overlay' ); if( ! $('.ast-above-header-navigation-wrap .close').length ) { $('.ast-above-header-navigation-wrap').prepend('' + astraAddon.svgIconClose + ''); $('.ast-above-header-navigation-wrap .close').css( 'right', hiddenInnerWidth - innerWidth ); } }, _open_below_fullscreen: function(e) { e.preventDefault(); var innerWidth = $('html').innerWidth(); $('html').css( 'overflow', 'hidden' ); var hiddenInnerWidth = $('html').innerWidth(); $('html').css( 'margin-right', hiddenInnerWidth - innerWidth ); $('html').addClass( 'ast-fullscreen-below-menu-overlay' ); if( ! $('.ast-below-header-navigation-wrap .close').length ) { $('.ast-below-header-navigation-wrap').prepend('' + astraAddon.svgIconClose + ''); $('.ast-below-header-navigation-wrap .close').css( 'right', hiddenInnerWidth - innerWidth ); } }, _open_fullscreen: function(e) { e.preventDefault(); var innerWidth = $('html').innerWidth(); $('html').css( 'overflow', 'hidden' ); var hiddenInnerWidth = $('html').innerWidth(); $('html').css( 'margin-right', hiddenInnerWidth - innerWidth ); $('html').addClass( 'ast-fullscreen-menu-overlay' ); $('html').addClass( 'ast-fullscreen-active' ); if( ! $('.main-header-bar nav .close').length ) { $('.main-header-bar nav').prepend('' + astraAddon.svgIconClose + ''); $('.main-header-bar nav .close').css( 'right', hiddenInnerWidth - innerWidth ); } if( ! $( '.ast-primary-menu-disabled .ast-header-custom-item .close').length ) { $( ".ast-primary-menu-disabled .ast-header-custom-item .ast-merge-header-navigation-wrap" ).prepend( '' + astraAddon.svgIconClose + '' ); } }, _enable_offcanvas_overlay: function(e) { e.preventDefault(); $(this).addClass( 'active' ); var innerWidth = $('html').innerWidth(); $('html').css( 'overflow', 'hidden' ); var hiddenInnerWidth = $('html').innerWidth(); $('html').css( 'margin-right', hiddenInnerWidth - innerWidth ); $('html').addClass( e.data.class ); // Added for accessibility issue. setTimeout(function(){ $('#cart-accessibility').focus() }, 100); const isAccordionActive = $( '.ast-filter-wrap' ); if( isAccordionActive.hasClass( 'ast-accordion-layout' ) ) { AstraMenu._accordion_initial_height(); } }, _enable_collapsible_slider: function(e) { e.preventDefault(); $(this).toggleClass( 'active' ); if( $('body').hasClass( 'ast-header-break-point' ) && ! astraAddon.off_canvas_enable && $(this).hasClass('active') ) { $('html, body').animate({ scrollTop: $(".ast-woocommerce-container").offset().top }, 500); } $('.ast-collapse-filter').slideToggle(); const isAccordionActive = $( '.ast-filter-wrap' ); if( isAccordionActive.hasClass( 'ast-accordion-layout' ) ) { AstraMenu._accordion_initial_height(); } }, _enable_primary_menu_overlay: function(e) { e.preventDefault(); if( ! $( '.main-header-bar-navigation .close' ).length ) { $( ".main-navigation" ).before( '' + astraAddon.svgIconClose + '' ); } if( ! $( '.ast-merge-header-navigation-wrap .close' ).length ) { $( ".ast-merge-header-navigation-wrap" ).append( '' + astraAddon.svgIconClose + '' ); } if( ! $( 'div.ast-masthead-custom-menu-items .close' ).length ) { $( "div.ast-masthead-custom-menu-items" ).append( '' + astraAddon.svgIconClose + '' ); } if( astraAddon.sticky_active ) { $( 'html' ).css( 'overflow', 'hidden' ); } $('html').addClass( e.data.class ); $('html').addClass( 'ast-offcanvas-active' ); }, _open_above_offcanvas: function(e) { e.preventDefault(); if( ! $( '.ast-above-header-section .close' ).length ) { $( ".ast-above-header-navigation" ).prepend( '' + astraAddon.svgIconClose + '' ); } if( astraAddon.sticky_active ) { $( 'html' ).css( 'overflow', 'hidden' ); } $('html').addClass( 'ast-flyout-above-menu-overlay' ); }, _close_above_offcanvas: function(e) { if ( e.target.parentNode.parentNode === this ) { $('html').removeClass( 'ast-flyout-above-menu-overlay' ); $( '.ast-above-header .menu-toggle' ).removeClass( 'toggled' ); $( '.ast-above-header' ).removeClass( 'toggle-on' ); if( astraAddon.sticky_active ) { $( 'html' ).css( 'overflow', '' ); } } }, _open_below_offcanvas: function(e) { e.preventDefault(); if( ! $( '.ast-below-header-actual-nav .close' ).length ) { $( ".ast-below-header-actual-nav" ).prepend( '' + astraAddon.svgIconClose + '' ); } if( astraAddon.sticky_active ) { $( 'html' ).css( 'overflow', 'hidden' ); } $('html').addClass( 'ast-flyout-below-menu-overlay' ); }, _close_below_offcanvas: function(e) { if ( e.target.parentNode.parentNode === this ) { $('html').removeClass( 'ast-flyout-below-menu-overlay' ); $( '.ast-below-header .menu-toggle' ).removeClass( 'toggled' ); $( '.ast-below-header' ).removeClass( 'toggle-on' ); if( astraAddon.sticky_active ) { $( 'html' ).css( 'overflow', '' ); } } }, _close_offcanvas: function(e) { const offCanvasWrap = $( ".astra-off-canvas-sidebar" ); const commonCondition = e.target.parentNode.parentNode === this || e.type === 'astraMenuHashLinkClicked'; const condition = offCanvasWrap.length ? commonCondition || ( ! offCanvasWrap.is(e.target) && offCanvasWrap.has(e.target).length === 0 ) : commonCondition; if ( condition ) { e.data = e.data || {}; e.data.class = e.data.class || "ast-flyout-menu-overlay ast-offcanvas-active"; $("html").css({ overflow: "", "margin-left": "", "margin-right": "" }); $("html").removeClass(e.data.class); const filterButton = $(".astra-shop-filter-button"); if( filterButton.hasClass( 'active' ) ) { filterButton.removeClass( 'active' ); } setTimeout(function() { $("html").removeClass("ast-offcanvas-active"); }, 300); } }, _close_above_fullscreen: function(e) { $('html').css({ 'overflow': '', 'margin-right': '' }); $('html').removeClass( 'ast-fullscreen-above-menu-overlay' ); $('.ast-above-header-navigation').removeClass('toggle-on').hide(); if ( $( '.ast-above-header .menu-toggle' ).hasClass( 'toggled' ) ) { $( '.ast-above-header .menu-toggle' ).removeClass( 'toggled' ); } }, _close_below_fullscreen: function(e) { $('html').css({ 'overflow': '', 'margin-right': '' }); $('html').removeClass( 'ast-fullscreen-below-menu-overlay' ); if ( $( '.ast-below-header .menu-toggle' ).hasClass( 'toggled' ) ) { $( '.ast-below-header .menu-toggle' ).removeClass( 'toggled' ); } }, _close_fullscreen: function(e) { $('html').css({ 'overflow': '', 'margin-right': '' }); $('html').removeClass( 'ast-fullscreen-menu-overlay' ); setTimeout(function(){ $('html').removeClass( 'ast-fullscreen-active' ); }, 500); $('.main-header-bar-navigation').removeClass('toggle-on').hide(); }, _toggle_menu: function(e) { if ( $( '.main-header-bar .menu-toggle' ).hasClass( e.data.class ) ) { $( '.main-header-bar .menu-toggle' ).removeClass( e.data.class ); } if ( $( 'html' ).hasClass( 'ast-fullscreen-active' ) ) { setTimeout(function(){ $('html').removeClass( 'ast-fullscreen-active' ); }, 500); } }, _toggle_above_menu: function(e) { if ( $( '.ast-above-header .menu-toggle' ).hasClass( e.data.class ) ) { $( '.ast-above-header .menu-toggle' ).removeClass( e.data.class ); } }, _wp_admin_bar_visible: function(e) { var adminBar = $("#wpadminbar"); if ( adminBar.length ) { if ( adminBar.isInViewport() ) { if ( ! $('body').hasClass('ast-admin-bar-visible') ) { $('body').addClass('ast-admin-bar-visible'); } } else{ if ( $('body').hasClass('ast-admin-bar-visible') ) { $('body').removeClass('ast-admin-bar-visible'); } } } }, _accordion_initial_height: function(e) { // Adds dynamic heights so that slide transitions become smooth. $( '.ast-filter-content' ).each( function( i, obj ) { const currentHeight = $( this ).innerHeight(); $( obj ).css( 'max-height', currentHeight + 'px' ); } ); } }; /** * Initialization */ $(function(){ AstraMenu.init(); }); })(jQuery);