From 69c17f9c1942fd0d6a5ea941636e87723b8a6fe2 Mon Sep 17 00:00:00 2001 From: Zach van Rijn Date: Wed, 21 Jul 2021 16:19:29 -0500 Subject: dos2unix on all .php files, begin paring down admin page and site branding. --- inc/core/class-astra-enqueue-scripts.php | 778 +++++++++++++++---------------- 1 file changed, 389 insertions(+), 389 deletions(-) (limited to 'inc/core/class-astra-enqueue-scripts.php') diff --git a/inc/core/class-astra-enqueue-scripts.php b/inc/core/class-astra-enqueue-scripts.php index c249445..9772037 100644 --- a/inc/core/class-astra-enqueue-scripts.php +++ b/inc/core/class-astra-enqueue-scripts.php @@ -1,389 +1,389 @@ - - - tag in admin page - * - * @param String $classes body classes returned from the filter. - * @return String body classes to be added to tag in admin page - */ - public function admin_body_class( $classes ) { - - global $pagenow; - $screen = get_current_screen(); - - if ( ( ( 'post-new.php' == $pagenow || 'post.php' == $pagenow ) && ( defined( 'ASTRA_ADVANCED_HOOKS_POST_TYPE' ) && ASTRA_ADVANCED_HOOKS_POST_TYPE == $screen->post_type ) ) || 'widgets.php' == $pagenow ) { - return; - } - - $post_id = get_the_ID(); - - if ( $post_id ) { - $meta_content_layout = get_post_meta( $post_id, 'site-content-layout', true ); - } - - if ( ( isset( $meta_content_layout ) && ! empty( $meta_content_layout ) ) && 'default' !== $meta_content_layout ) { - $content_layout = $meta_content_layout; - } else { - $content_layout = astra_get_option( 'site-content-layout' ); - } - - if ( 'content-boxed-container' == $content_layout ) { - $classes .= ' ast-separate-container'; - } elseif ( 'boxed-container' == $content_layout ) { - $classes .= ' ast-separate-container ast-two-container'; - } elseif ( 'page-builder' == $content_layout ) { - $classes .= ' ast-page-builder-template'; - } elseif ( 'plain-container' == $content_layout ) { - $classes .= ' ast-plain-container'; - } - - $site_layout = astra_get_option( 'site-layout' ); - if ( 'ast-box-layout' === $site_layout ) { - $classes .= ' ast-max-width-layout'; - } - - $classes .= ' ast-' . astra_page_layout(); - - return $classes; - } - - /** - * List of all assets. - * - * @return array assets array. - */ - public static function theme_assets() { - - $default_assets = array( - // handle => location ( in /assets/js/ ) ( without .js ext). - 'js' => array( - 'astra-theme-js' => 'style', - ), - // handle => location ( in /assets/css/ ) ( without .css ext). - 'css' => array( - 'astra-theme-css' => Astra_Builder_Helper::apply_flex_based_css() ? 'style-flex' : 'style', - ), - ); - - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - - $default_assets = array( - // handle => location ( in /assets/js/ ) ( without .js ext). - 'js' => array( - 'astra-theme-js' => 'frontend', - ), - // handle => location ( in /assets/css/ ) ( without .css ext). - 'css' => array( - 'astra-theme-css' => Astra_Builder_Helper::apply_flex_based_css() ? 'main' : 'frontend', - ), - ); - - if ( Astra_Builder_Helper::is_component_loaded( 'edd-cart', 'header' ) || - Astra_Builder_Helper::is_component_loaded( 'woo-cart', 'header' ) ) { - $default_assets['js']['astra-mobile-cart'] = 'mobile-cart'; - } - } - return apply_filters( 'astra_theme_assets', $default_assets ); - } - - /** - * Add Fonts - */ - public function add_fonts() { - - $font_family = astra_get_option( 'body-font-family' ); - $font_weight = astra_get_option( 'body-font-weight' ); - $font_variant = astra_get_option( 'body-font-variant' ); - - Astra_Fonts::add_font( $font_family, $font_weight ); - Astra_Fonts::add_font( $font_family, $font_variant ); - - // Render headings font. - $heading_font_family = astra_get_option( 'headings-font-family' ); - $heading_font_weight = astra_get_option( 'headings-font-weight' ); - $heading_font_variant = astra_get_option( 'headings-font-variant' ); - - Astra_Fonts::add_font( $heading_font_family, $heading_font_weight ); - Astra_Fonts::add_font( $heading_font_family, $heading_font_variant ); - } - - /** - * Enqueue Scripts - */ - public function enqueue_scripts() { - - if ( false === self::enqueue_theme_assets() ) { - return; - } - - /* Directory and Extension */ - $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; - $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; - - $js_uri = ASTRA_THEME_URI . 'assets/js/' . $dir_name . '/'; - $css_uri = ASTRA_THEME_URI . 'assets/css/' . $dir_name . '/'; - - /** - * IE Only Js and CSS Files. - */ - // Flexibility.js for flexbox IE10 support. - wp_enqueue_script( 'astra-flexibility', $js_uri . 'flexibility' . $file_prefix . '.js', array(), ASTRA_THEME_VERSION, false ); - wp_add_inline_script( 'astra-flexibility', 'flexibility(document.documentElement);' ); - wp_script_add_data( 'astra-flexibility', 'conditional', 'IE' ); - - // Polyfill for CustomEvent for IE. - wp_register_script( 'astra-customevent', $js_uri . 'custom-events-polyfill' . $file_prefix . '.js', array(), ASTRA_THEME_VERSION, false ); - wp_register_style( 'astra-galleries-css', $css_uri . 'galleries' . $file_prefix . '.css', array(), ASTRA_THEME_VERSION, 'all' ); - // All assets. - $all_assets = self::theme_assets(); - $styles = $all_assets['css']; - $scripts = $all_assets['js']; - - if ( is_array( $styles ) && ! empty( $styles ) ) { - // Register & Enqueue Styles. - foreach ( $styles as $key => $style ) { - - $dependency = array(); - - // Add dynamic CSS dependency for all styles except for theme's style.css. - if ( 'astra-theme-css' !== $key && class_exists( 'Astra_Cache_Base' ) ) { - if ( ! Astra_Cache_Base::inline_assets() ) { - $dependency[] = 'astra-theme-dynamic'; - } - } - - // Generate CSS URL. - $css_file = $css_uri . $style . $file_prefix . '.css'; - - // Register. - wp_register_style( $key, $css_file, $dependency, ASTRA_THEME_VERSION, 'all' ); - - // Enqueue. - wp_enqueue_style( $key ); - - // RTL support. - wp_style_add_data( $key, 'rtl', 'replace' ); - } - } - - // Fonts - Render Fonts. - Astra_Fonts::render_fonts(); - - /** - * Inline styles - */ - - add_filter( 'astra_dynamic_theme_css', array( 'Astra_Dynamic_CSS', 'return_output' ) ); - add_filter( 'astra_dynamic_theme_css', array( 'Astra_Dynamic_CSS', 'return_meta_output' ) ); - - $menu_animation = astra_get_option( 'header-main-submenu-container-animation' ); - - // Submenu Container Animation for header builder. - if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { - - for ( $index = 1; $index <= Astra_Builder_Helper::$component_limit; $index++ ) { - - $menu_animation_enable = astra_get_option( 'header-menu' . $index . '-submenu-container-animation' ); - - if ( Astra_Builder_Helper::is_component_loaded( 'menu-' . $index, 'header' ) && ! empty( $menu_animation_enable ) ) { - $menu_animation = 'is_animated'; - break; - } - } - } - - $rtl = ( is_rtl() ) ? '-rtl' : ''; - - if ( ! empty( $menu_animation ) || is_customize_preview() ) { - if ( class_exists( 'Astra_Cache' ) ) { - Astra_Cache::add_css_file( ASTRA_THEME_DIR . 'assets/css/' . $dir_name . '/menu-animation' . $rtl . $file_prefix . '.css' ); - } else { - wp_register_style( 'astra-menu-animation', $css_uri . 'menu-animation' . $file_prefix . '.css', null, ASTRA_THEME_VERSION, 'all' ); - wp_enqueue_style( 'astra-menu-animation' ); - } - } - - if ( ! class_exists( 'Astra_Cache' ) ) { - $theme_css_data = apply_filters( 'astra_dynamic_theme_css', '' ); - wp_add_inline_style( 'astra-theme-css', $theme_css_data ); - } - - if ( astra_is_amp_endpoint() ) { - return; - } - - // Comment assets. - if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) { - wp_enqueue_script( 'comment-reply' ); - } - - if ( is_array( $scripts ) && ! empty( $scripts ) ) { - - // Register & Enqueue Scripts. - foreach ( $scripts as $key => $script ) { - - // Register. - wp_register_script( $key, $js_uri . $script . $file_prefix . '.js', array(), ASTRA_THEME_VERSION, true ); - - // Enqueue. - wp_enqueue_script( $key ); - } - } - - $astra_localize = array( - 'break_point' => astra_header_break_point(), // Header Break Point. - 'isRtl' => is_rtl(), - ); - - wp_localize_script( 'astra-theme-js', 'astra', apply_filters( 'astra_theme_js_localize', $astra_localize ) ); - } - - /** - * Trim CSS - * - * @since 1.0.0 - * @param string $css CSS content to trim. - * @return string - */ - public static function trim_css( $css = '' ) { - - // Trim white space for faster page loading. - if ( ! empty( $css ) ) { - $css = preg_replace( '!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $css ); - $css = str_replace( array( "\r\n", "\r", "\n", "\t", ' ', ' ', ' ' ), '', $css ); - $css = str_replace( ', ', ',', $css ); - } - - return $css; - } - - /** - * Enqueue Gutenberg assets. - * - * @since 1.5.2 - * - * @return void - */ - public function gutenberg_assets() { - /* Directory and Extension */ - $rtl = ''; - if ( is_rtl() ) { - $rtl = '-rtl'; - } - - $css_uri = ASTRA_THEME_URI . 'inc/assets/css/block-editor-styles' . $rtl . '.css'; - $js_uri = ASTRA_THEME_URI . 'inc/assets/js/block-editor-script.js'; - - wp_enqueue_style( 'astra-block-editor-styles', $css_uri, false, ASTRA_THEME_VERSION, 'all' ); - wp_enqueue_script( 'astra-block-editor-script', $js_uri, false, ASTRA_THEME_VERSION, 'all' ); - - // Render fonts in Gutenberg layout. - Astra_Fonts::render_fonts(); - - wp_add_inline_style( 'astra-block-editor-styles', apply_filters( 'astra_block_editor_dynamic_css', Gutenberg_Editor_CSS::get_css() ) ); - } - - /** - * Function to check if enqueuing of Astra assets are disabled. - * - * @since 2.1.0 - * @return boolean - */ - public static function enqueue_theme_assets() { - return apply_filters( 'astra_enqueue_theme_assets', true ); - } - - /** - * Enqueue galleries relates CSS on gallery_style filter. - * - * @param string $gallery_style gallery style and div. - * @since 3.5.0 - * @return string - */ - public function enqueue_galleries_style( $gallery_style ) { - wp_enqueue_style( 'astra-galleries-css' ); - return $gallery_style; - } - - } - - new Astra_Enqueue_Scripts(); -} + + + tag in admin page + * + * @param String $classes body classes returned from the filter. + * @return String body classes to be added to tag in admin page + */ + public function admin_body_class( $classes ) { + + global $pagenow; + $screen = get_current_screen(); + + if ( ( ( 'post-new.php' == $pagenow || 'post.php' == $pagenow ) && ( defined( 'ASTRA_ADVANCED_HOOKS_POST_TYPE' ) && ASTRA_ADVANCED_HOOKS_POST_TYPE == $screen->post_type ) ) || 'widgets.php' == $pagenow ) { + return; + } + + $post_id = get_the_ID(); + + if ( $post_id ) { + $meta_content_layout = get_post_meta( $post_id, 'site-content-layout', true ); + } + + if ( ( isset( $meta_content_layout ) && ! empty( $meta_content_layout ) ) && 'default' !== $meta_content_layout ) { + $content_layout = $meta_content_layout; + } else { + $content_layout = astra_get_option( 'site-content-layout' ); + } + + if ( 'content-boxed-container' == $content_layout ) { + $classes .= ' ast-separate-container'; + } elseif ( 'boxed-container' == $content_layout ) { + $classes .= ' ast-separate-container ast-two-container'; + } elseif ( 'page-builder' == $content_layout ) { + $classes .= ' ast-page-builder-template'; + } elseif ( 'plain-container' == $content_layout ) { + $classes .= ' ast-plain-container'; + } + + $site_layout = astra_get_option( 'site-layout' ); + if ( 'ast-box-layout' === $site_layout ) { + $classes .= ' ast-max-width-layout'; + } + + $classes .= ' ast-' . astra_page_layout(); + + return $classes; + } + + /** + * List of all assets. + * + * @return array assets array. + */ + public static function theme_assets() { + + $default_assets = array( + // handle => location ( in /assets/js/ ) ( without .js ext). + 'js' => array( + 'astra-theme-js' => 'style', + ), + // handle => location ( in /assets/css/ ) ( without .css ext). + 'css' => array( + 'astra-theme-css' => Astra_Builder_Helper::apply_flex_based_css() ? 'style-flex' : 'style', + ), + ); + + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + + $default_assets = array( + // handle => location ( in /assets/js/ ) ( without .js ext). + 'js' => array( + 'astra-theme-js' => 'frontend', + ), + // handle => location ( in /assets/css/ ) ( without .css ext). + 'css' => array( + 'astra-theme-css' => Astra_Builder_Helper::apply_flex_based_css() ? 'main' : 'frontend', + ), + ); + + if ( Astra_Builder_Helper::is_component_loaded( 'edd-cart', 'header' ) || + Astra_Builder_Helper::is_component_loaded( 'woo-cart', 'header' ) ) { + $default_assets['js']['astra-mobile-cart'] = 'mobile-cart'; + } + } + return apply_filters( 'astra_theme_assets', $default_assets ); + } + + /** + * Add Fonts + */ + public function add_fonts() { + + $font_family = astra_get_option( 'body-font-family' ); + $font_weight = astra_get_option( 'body-font-weight' ); + $font_variant = astra_get_option( 'body-font-variant' ); + + Astra_Fonts::add_font( $font_family, $font_weight ); + Astra_Fonts::add_font( $font_family, $font_variant ); + + // Render headings font. + $heading_font_family = astra_get_option( 'headings-font-family' ); + $heading_font_weight = astra_get_option( 'headings-font-weight' ); + $heading_font_variant = astra_get_option( 'headings-font-variant' ); + + Astra_Fonts::add_font( $heading_font_family, $heading_font_weight ); + Astra_Fonts::add_font( $heading_font_family, $heading_font_variant ); + } + + /** + * Enqueue Scripts + */ + public function enqueue_scripts() { + + if ( false === self::enqueue_theme_assets() ) { + return; + } + + /* Directory and Extension */ + $file_prefix = ( SCRIPT_DEBUG ) ? '' : '.min'; + $dir_name = ( SCRIPT_DEBUG ) ? 'unminified' : 'minified'; + + $js_uri = ASTRA_THEME_URI . 'assets/js/' . $dir_name . '/'; + $css_uri = ASTRA_THEME_URI . 'assets/css/' . $dir_name . '/'; + + /** + * IE Only Js and CSS Files. + */ + // Flexibility.js for flexbox IE10 support. + wp_enqueue_script( 'astra-flexibility', $js_uri . 'flexibility' . $file_prefix . '.js', array(), ASTRA_THEME_VERSION, false ); + wp_add_inline_script( 'astra-flexibility', 'flexibility(document.documentElement);' ); + wp_script_add_data( 'astra-flexibility', 'conditional', 'IE' ); + + // Polyfill for CustomEvent for IE. + wp_register_script( 'astra-customevent', $js_uri . 'custom-events-polyfill' . $file_prefix . '.js', array(), ASTRA_THEME_VERSION, false ); + wp_register_style( 'astra-galleries-css', $css_uri . 'galleries' . $file_prefix . '.css', array(), ASTRA_THEME_VERSION, 'all' ); + // All assets. + $all_assets = self::theme_assets(); + $styles = $all_assets['css']; + $scripts = $all_assets['js']; + + if ( is_array( $styles ) && ! empty( $styles ) ) { + // Register & Enqueue Styles. + foreach ( $styles as $key => $style ) { + + $dependency = array(); + + // Add dynamic CSS dependency for all styles except for theme's style.css. + if ( 'astra-theme-css' !== $key && class_exists( 'Astra_Cache_Base' ) ) { + if ( ! Astra_Cache_Base::inline_assets() ) { + $dependency[] = 'astra-theme-dynamic'; + } + } + + // Generate CSS URL. + $css_file = $css_uri . $style . $file_prefix . '.css'; + + // Register. + wp_register_style( $key, $css_file, $dependency, ASTRA_THEME_VERSION, 'all' ); + + // Enqueue. + wp_enqueue_style( $key ); + + // RTL support. + wp_style_add_data( $key, 'rtl', 'replace' ); + } + } + + // Fonts - Render Fonts. + Astra_Fonts::render_fonts(); + + /** + * Inline styles + */ + + add_filter( 'astra_dynamic_theme_css', array( 'Astra_Dynamic_CSS', 'return_output' ) ); + add_filter( 'astra_dynamic_theme_css', array( 'Astra_Dynamic_CSS', 'return_meta_output' ) ); + + $menu_animation = astra_get_option( 'header-main-submenu-container-animation' ); + + // Submenu Container Animation for header builder. + if ( true === Astra_Builder_Helper::$is_header_footer_builder_active ) { + + for ( $index = 1; $index <= Astra_Builder_Helper::$component_limit; $index++ ) { + + $menu_animation_enable = astra_get_option( 'header-menu' . $index . '-submenu-container-animation' ); + + if ( Astra_Builder_Helper::is_component_loaded( 'menu-' . $index, 'header' ) && ! empty( $menu_animation_enable ) ) { + $menu_animation = 'is_animated'; + break; + } + } + } + + $rtl = ( is_rtl() ) ? '-rtl' : ''; + + if ( ! empty( $menu_animation ) || is_customize_preview() ) { + if ( class_exists( 'Astra_Cache' ) ) { + Astra_Cache::add_css_file( ASTRA_THEME_DIR . 'assets/css/' . $dir_name . '/menu-animation' . $rtl . $file_prefix . '.css' ); + } else { + wp_register_style( 'astra-menu-animation', $css_uri . 'menu-animation' . $file_prefix . '.css', null, ASTRA_THEME_VERSION, 'all' ); + wp_enqueue_style( 'astra-menu-animation' ); + } + } + + if ( ! class_exists( 'Astra_Cache' ) ) { + $theme_css_data = apply_filters( 'astra_dynamic_theme_css', '' ); + wp_add_inline_style( 'astra-theme-css', $theme_css_data ); + } + + if ( astra_is_amp_endpoint() ) { + return; + } + + // Comment assets. + if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) { + wp_enqueue_script( 'comment-reply' ); + } + + if ( is_array( $scripts ) && ! empty( $scripts ) ) { + + // Register & Enqueue Scripts. + foreach ( $scripts as $key => $script ) { + + // Register. + wp_register_script( $key, $js_uri . $script . $file_prefix . '.js', array(), ASTRA_THEME_VERSION, true ); + + // Enqueue. + wp_enqueue_script( $key ); + } + } + + $astra_localize = array( + 'break_point' => astra_header_break_point(), // Header Break Point. + 'isRtl' => is_rtl(), + ); + + wp_localize_script( 'astra-theme-js', 'astra', apply_filters( 'astra_theme_js_localize', $astra_localize ) ); + } + + /** + * Trim CSS + * + * @since 1.0.0 + * @param string $css CSS content to trim. + * @return string + */ + public static function trim_css( $css = '' ) { + + // Trim white space for faster page loading. + if ( ! empty( $css ) ) { + $css = preg_replace( '!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $css ); + $css = str_replace( array( "\r\n", "\r", "\n", "\t", ' ', ' ', ' ' ), '', $css ); + $css = str_replace( ', ', ',', $css ); + } + + return $css; + } + + /** + * Enqueue Gutenberg assets. + * + * @since 1.5.2 + * + * @return void + */ + public function gutenberg_assets() { + /* Directory and Extension */ + $rtl = ''; + if ( is_rtl() ) { + $rtl = '-rtl'; + } + + $css_uri = ASTRA_THEME_URI . 'inc/assets/css/block-editor-styles' . $rtl . '.css'; + $js_uri = ASTRA_THEME_URI . 'inc/assets/js/block-editor-script.js'; + + wp_enqueue_style( 'astra-block-editor-styles', $css_uri, false, ASTRA_THEME_VERSION, 'all' ); + wp_enqueue_script( 'astra-block-editor-script', $js_uri, false, ASTRA_THEME_VERSION, 'all' ); + + // Render fonts in Gutenberg layout. + Astra_Fonts::render_fonts(); + + wp_add_inline_style( 'astra-block-editor-styles', apply_filters( 'astra_block_editor_dynamic_css', Gutenberg_Editor_CSS::get_css() ) ); + } + + /** + * Function to check if enqueuing of Astra assets are disabled. + * + * @since 2.1.0 + * @return boolean + */ + public static function enqueue_theme_assets() { + return apply_filters( 'astra_enqueue_theme_assets', true ); + } + + /** + * Enqueue galleries relates CSS on gallery_style filter. + * + * @param string $gallery_style gallery style and div. + * @since 3.5.0 + * @return string + */ + public function enqueue_galleries_style( $gallery_style ) { + wp_enqueue_style( 'astra-galleries-css' ); + return $gallery_style; + } + + } + + new Astra_Enqueue_Scripts(); +} -- cgit v1.2.3-60-g2f50