/**
* Avada Builder Text Shadow Helper class.
*
* @package Avada-Builder
* @since 3.1
*/
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
exit( 'Direct script access denied.' );
}
/**
* Avada Builder Box Shadow Helper class.
*
* @since 3.1
*/
class Fusion_Builder_Text_Shadow_Helper {
/**
* Get text-shadow params.
*
* @static
* @access public
* @since 3.1
* @param array $args The placeholder arguments.
* @return array
*/
public static function get_params( $args ) {
$params = [
[
'type' => 'radio_button_set',
'heading' => esc_attr__( 'Text Shadow', 'fusion-builder' ),
'description' => esc_attr__( 'Set to "Yes" to enable text shadows.', 'fusion-builder' ),
'param_name' => 'text_shadow',
'default' => 'no',
'group' => esc_html__( 'Design', 'fusion-builder' ),
'value' => [
'yes' => esc_attr__( 'Yes', 'fusion-builder' ),
'no' => esc_attr__( 'No', 'fusion-builder' ),
],
'callback' => [],
],
[
'type' => 'dimension',
'remove_from_atts' => true,
'heading' => esc_attr__( 'Text Shadow Position', 'fusion-builder' ),
'description' => esc_attr__( 'Set the vertical and horizontal position of the text shadow. Positive values put the shadow below and right of the text, negative values put it above and left of the text. In pixels, ex. 5px.', 'fusion-builder' ),
'param_name' => 'dimension_text_shadow',
'value' => [
'text_shadow_vertical' => '',
'text_shadow_horizontal' => '',
],
'group' => esc_html__( 'Design', 'fusion-builder' ),
'dependency' => [
[
'element' => 'text_shadow',
'value' => 'yes',
'operator' => '==',
],
],
'callback' => [],
],
[
'type' => 'range',
'heading' => esc_attr__( 'Text Shadow Blur Radius', 'fusion-builder' ),
'description' => esc_attr__( 'Set the blur radius of the text shadow. In pixels.', 'fusion-builder' ),
'param_name' => 'text_shadow_blur',
'value' => '0',
'min' => '0',
'max' => '100',
'step' => '1',
'group' => esc_html__( 'Design', 'fusion-builder' ),
'dependency' => [
[
'element' => 'text_shadow',
'value' => 'yes',
'operator' => '==',
],
],
'callback' => [],
],
[
'type' => 'colorpickeralpha',
'heading' => esc_attr__( 'Text Shadow Color', 'fusion-builder' ),
'description' => esc_attr__( 'Controls the color of the text shadow.', 'fusion-builder' ),
'param_name' => 'text_shadow_color',
'value' => '',
'group' => esc_html__( 'Design', 'fusion-builder' ),
'dependency' => [
[
'element' => 'text_shadow',
'value' => 'yes',
'operator' => '==',
],
],
'callback' => [],
],
];
foreach ( $params as $key => $param ) {
$tmp_args = $args;
// Prevent param being dependant on itself.
if ( isset( $args['dependency'] ) ) {
foreach ( $tmp_args['dependency'] as $k => $dep ) {
if ( $param['param_name'] === $dep['element'] ) {
unset( $tmp_args['dependency'][ $k ] );
}
}
}
$params[ $key ] = wp_parse_args( $tmp_args, $param );
}
return $params;
}
/**
* Get text-shadow styles.
*
* @since 2.2
* @access public
* @param array $params The text-shadow parameters.
* @return string
*/
public static function get_text_shadow_styles( $params ) {
$style = fusion_library()->sanitize->get_value_with_unit( $params['text_shadow_horizontal'] );
$style .= ' ' . fusion_library()->sanitize->get_value_with_unit( $params['text_shadow_vertical'] );
$style .= ' ' . fusion_library()->sanitize->get_value_with_unit( $params['text_shadow_blur'] );
$style .= ' ' . $params['text_shadow_color'];
$style .= ';';
return $style;
}
}
/**
* WooCommerce compatibility functions.
*
* @author ThemeFusion
* @copyright (c) Copyright by ThemeFusion
* @link https://theme-fusion.com
* @package Avada
* @subpackage Core
* @since 5.0.0
*/
if ( ! function_exists( 'fusion_wc_get_page_id' ) ) {
/**
* The woocommerce_get_page_id function was deprecated in WooCommerce 2.7.
* This is a proxy function to ensure Avada works with all WC versions.
*
* @param string $page The page we want to find.
* @return int The page ID.
*/
function fusion_wc_get_page_id( $page ) {
if ( function_exists( 'wc_get_page_id' ) ) {
return wc_get_page_id( $page );
} elseif ( function_exists( 'woocommerce_get_page_id' ) ) {
return woocommerce_get_page_id( $page );
}
}
}
if ( ! function_exists( 'fusion_wc_get_template' ) ) {
/**
* The woocommerce_get_template function was deprecated in WooCommerce 2.7.
* This is a proxy function to ensure Avada works with all WC versions.
*
* @param mixed $slug The template slug.
* @param string $name (default: '').
*/
function fusion_wc_get_template( $slug, $name = '' ) {
if ( function_exists( 'wc_get_template' ) ) {
wc_get_template( $slug, $name );
} elseif ( function_exists( 'woocommerce_get_template' ) ) {
woocommerce_get_template( $slug, $name );
}
}
}
if ( ! function_exists( 'fusion_wc_get_template_part' ) ) {
/**
* The woocommerce_get_template_part function was deprecated in WooCommerce 2.7.
* This is a proxy function to ensure Avada works with all WC versions.
*
* @param mixed $slug The template slug.
* @param string $name (default: '').
*/
function fusion_wc_get_template_part( $slug, $name = '' ) {
if ( function_exists( 'wc_get_template_part' ) ) {
wc_get_template_part( $slug, $name );
} elseif ( function_exists( 'woocommerce_get_template_part' ) ) {
woocommerce_get_template_part( $slug, $name );
}
}
}
if ( ! function_exists( 'fusion_get_product' ) ) {
/**
* The get_product function was deprecated in WooCommerce 2.7.
* This is a proxy function to ensure Avada works with all WC versions.
*
* @param mixed $the_product Post object or post ID of the product.
* @param array $args Previously used to pass arguments to the factory, e.g. to force a type.
* @return WC_Product|null
*/
function fusion_get_product( $the_product = false, $args = [] ) {
if ( function_exists( 'wc_get_product' ) ) {
return wc_get_product( $the_product, $args );
} elseif ( function_exists( 'get_product' ) ) {
return get_product( $the_product, $args );
}
}
}
/* Omit closing PHP tag to avoid "Headers already sent" issues. */
/**
* Days of the month.
*
* @package fusion-builder
*/
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
exit( 'Direct script access denied.' );
}
/**
* Adds Days of the month to predefined choices
*
* @param array $choices The predefined choices.
*/
function fusion_builder_predefined_days_of_the_month( $choices = [] ) {
$values = [];
for ( $x = 1; $x <= 31; $x++ ) {
$values[] = (string) $x;
}
$choices[] = [
'name' => __( 'Days of the Month', 'fusion-builder' ),
'values' => $values,
];
return $choices;
}
add_filter( 'fusion_predefined_choices', 'fusion_builder_predefined_days_of_the_month' );
import { Card } from '@elementor/app-ui';
import { SiteTemplateHeader } from './site-template-header';
import { SiteTemplateBody } from './site-template-body';
import { SiteTemplateFooter } from './site-template-footer';
import './site-template.scss';
export default function SiteTemplate( props ) {
const baseClassName = 'e-site-template',
classes = [ baseClassName ],
ref = React.useRef( null );
React.useEffect( () => {
if ( ! props.isSelected ) {
return;
}
ref.current.scrollIntoView( {
behavior: 'smooth',
block: 'start',
} );
}, [ props.isSelected ] );
if ( props.extended ) {
classes.push( `${ baseClassName }--extended` );
}
if ( props.aspectRatio ) {
classes.push( `${ baseClassName }--${ props.aspectRatio }` );
}
const CardFooter = props.extended && props.showInstances ? : '';
return (
{ CardFooter }
);
}
SiteTemplate.propTypes = {
aspectRatio: PropTypes.string,
className: PropTypes.string,
extended: PropTypes.bool,
id: PropTypes.number.isRequired,
isActive: PropTypes.bool.isRequired,
status: PropTypes.string,
thumbnail: PropTypes.string.isRequired,
title: PropTypes.string.isRequired,
isSelected: PropTypes.bool,
type: PropTypes.string.isRequired,
showInstances: PropTypes.bool,
};
SiteTemplate.defaultProps = {
isSelected: false,
};
// Hide paging when TTA collapses to accordion (except pageable)
// ==========================
@media (max-width: @vc_tta-breakpoint) {
.vc_tta-container {
.vc_tta:not([class*="vc_tta-pageable"]) {
.vc_pagination {
display: none;
}
}
}
}/**
* Add an element to fusion-builder.
*
* @package fusion-builder
* @since 1.0
*/
/**
* Map shortcode to Avada Builder.
*/
function fusion_element_slider_revolution() {
if ( ! defined( 'RS_PLUGIN_PATH' ) ) {
return;
}
fusion_builder_map(
[
'name' => esc_attr__( 'Slider Revolution', 'fusion-builder' ),
'shortcode' => 'rev_slider',
'icon' => 'fusiona-air',
'preview' => FUSION_BUILDER_PLUGIN_DIR . 'inc/templates/previews/fusion-revolution-slider-preview.php',
'preview_id' => 'fusion-builder-block-module-revolution-slider-preview-template',
'help_url' => 'https://theme-fusion.com/documentation/fusion-builder/elements/slider-revolution-element/',
'params' => [
[
'type' => 'select',
'heading' => esc_attr__( 'Select Slider', 'fusion-builder' ),
'description' => esc_attr__( 'Select a slider group.', 'fusion-builder' ),
'param_name' => 'alias',
'value' => fusion_builder_get_revslider_slides(),
],
],
]
);
}
add_action( 'fusion_builder_before_init', 'fusion_element_slider_revolution' );
/**
* Add an element to fusion-builder.
*
* @package fusion-builder
* @since 1.0
*/
if ( ! class_exists( 'FusionSC_Row' ) ) {
/**
* Shortcode class.
*
* @since 3.0
*/
class FusionSC_Row extends Fusion_Row_Element {
/**
* Constructor.
*
* @access public
* @since 3.0
*/
public function __construct() {
$shortcode = 'fusion_builder_row';
$shortcode_attr_id = 'row';
$classname = 'fusion-row';
$content_filter = 'fusion_element_row_content';
parent::__construct( $shortcode, $shortcode_attr_id, $classname, $content_filter );
}
}
}
new FusionSC_Row();
/**
* Map Row shortcode to Avada Builder
*/
function fusion_element_row() {
fusion_builder_map(
fusion_builder_frontend_data(
'FusionSC_Row',
[
'name' => esc_attr__( 'Row', 'fusion-builder' ),
'shortcode' => 'fusion_builder_row',
'hide_from_builder' => true,
]
)
);
}
add_action( 'fusion_builder_before_init', 'fusion_element_row' );
/**
* Add an element to fusion-builder.
*
* @package fusion-builder
* @since 1.0
*/
if ( fusion_is_element_enabled( 'fusion_social_links' ) ) {
if ( ! class_exists( 'FusionSC_SocialLinks' ) ) {
/**
* Shortcode class.
*
* @since 1.0
*/
class FusionSC_SocialLinks extends Fusion_Element {
/**
* An array of the shortcode arguments.
*
* @access protected
* @since 1.0
* @var array
*/
protected $args;
/**
* Constructor.
*
* @access public
* @since 1.0
*/
public function __construct() {
parent::__construct();
add_filter( 'fusion_attr_social-links-shortcode', [ $this, 'attr' ] );
add_filter( 'fusion_attr_social-links-shortcode-social-networks', [ $this, 'social_networks_attr' ] );
add_filter( 'fusion_attr_social-links-shortcode-icon', [ $this, 'icon_attr' ] );
add_shortcode( 'fusion_social_links', [ $this, 'render' ] );
}
/**
* Gets the default values.
*
* @static
* @access public
* @since 2.0.0
* @return array
*/
public static function get_element_defaults() {
$fusion_settings = fusion_get_fusion_settings();
return [
'hide_on_mobile' => fusion_builder_default_visibility( 'string' ),
'sticky_display' => '',
'class' => '',
'id' => '',
'font_size' => $fusion_settings->get( 'social_links_font_size' ),
'icons_boxed' => ( 1 == $fusion_settings->get( 'social_links_boxed' ) ) ? 'yes' : $fusion_settings->get( 'social_links_boxed' ), // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
'icons_boxed_radius' => fusion_library()->sanitize->size( $fusion_settings->get( 'social_links_boxed_radius' ) ),
'color_type' => $fusion_settings->get( 'social_links_color_type' ),
'icon_colors' => $fusion_settings->get( 'social_links_icon_color' ),
'box_colors' => $fusion_settings->get( 'social_links_box_color' ),
'icon_order' => '',
'show_custom' => 'no',
'alignment' => '',
'tooltip_placement' => strtolower( $fusion_settings->get( 'social_links_tooltip_placement' ) ),
'facebook' => '',
'tiktok' => '',
'twitch' => '',
'twitter' => '',
'instagram' => '',
'linkedin' => '',
'dribbble' => '',
'rss' => '',
'youtube' => '',
'pinterest' => '',
'flickr' => '',
'vimeo' => '',
'tumblr' => '',
'discord' => '',
'digg' => '',
'blogger' => '',
'skype' => '',
'myspace' => '',
'deviantart' => '',
'yahoo' => '',
'reddit' => '',
'forrst' => '',
'paypal' => '',
'dropbox' => '',
'soundcloud' => '',
'vk' => '',
'wechat' => '',
'whatsapp' => '',
'xing' => '',
'yelp' => '',
'spotify' => '',
'email' => '',
'phone' => '',
];
}
/**
* Maps settings to param variables.
*
* @static
* @access public
* @since 2.0.0
* @return array
*/
public static function settings_to_params() {
return [
'social_links_boxed' => [
'param' => 'icons_boxed',
'callback' => 'toYes',
],
'social_links_boxed_radius' => 'icons_boxed_radius',
'social_links_color_type' => 'color_type',
'social_links_icon_color' => 'icon_colors',
'social_links_box_color' => 'box_colors',
'social_links_font_size' => 'font_size',
'social_links_tooltip_placement' => [
'param' => 'tooltip_placement',
'callback' => 'toLowerCase',
],
];
}
/**
* Used to set any other variables for use on front-end editor template.
*
* @static
* @access public
* @since 2.0.0
* @return array
*/
public static function get_element_extras() {
$fusion_settings = fusion_get_fusion_settings();
return [
'linktarget' => $fusion_settings->get( 'social_icons_new' ),
'social_links_box_color' => $fusion_settings->get( 'social_links_box_color' ),
'social_links_icon_color' => $fusion_settings->get( 'social_links_icon_color' ),
'social_media_icons' => $fusion_settings->get( 'social_media_icons' ),
'boxed_padding' => $fusion_settings->get( 'social_links_boxed_padding' ),
];
}
/**
* Maps settings to extra variables.
*
* @static
* @access public
* @since 2.0.0
* @return array
*/
public static function settings_to_extras() {
return [
'social_icons_new' => 'linktarget',
'social_links_box_color' => 'social_links_box_color',
'social_links_icon_color' => 'social_links_icon_color',
'social_media_icons' => 'social_media_icons',
];
}
/**
* Render the shortcode
*
* @access public
* @since 1.0
* @param array $args Shortcode parameters.
* @param string $content Content between shortcode.
* @return string HTML output.
*/
public function render( $args, $content = '' ) {
global $fusion_settings;
$defaults = FusionBuilder::set_shortcode_defaults( self::get_element_defaults(), $args, 'fusion_social_links' );
$content = apply_filters( 'fusion_shortcode_content', $content, 'fusion_social_links', $args );
foreach ( $args as $key => $arg ) {
if ( false !== strpos( $key, 'custom_' ) ) {
$defaults[ $key ] = $arg;
}
}
$defaults['icons_boxed_radius'] = FusionBuilder::validate_shortcode_attr_value( $defaults['icons_boxed_radius'], 'px' );
$defaults['font_size'] = FusionBuilder::validate_shortcode_attr_value( $defaults['font_size'], 'px' );
extract( $defaults );
$this->args = $defaults;
if ( empty( $defaults['color_type'] ) ) {
$defaults['box_colors'] = $fusion_settings->get( 'social_links_box_color' );
$defaults['icon_colors'] = $fusion_settings->get( 'social_links_icon_color' );
}
$social_networks = fusion_builder_get_social_networks( $defaults );
$social_networks = fusion_builder_sort_social_networks( $social_networks );
$icons = fusion_builder_build_social_links( $social_networks, 'social-links-shortcode-icon', $defaults );
$html = '
';
$html .= '
';
$html .= '
';
$html .= $icons;
$html .= '
';
$html .= '
';
$html .= '
';
if ( $alignment && ! fusion_element_rendering_is_flex() ) {
$html = '' . $html . '
';
}
$this->on_render();
return apply_filters( 'fusion_element_social_links_content', $html, $args );
}
/**
* Builds the attributes array.
*
* @access public
* @since 1.0
* @return array
*/
public function attr() {
$attr = fusion_builder_visibility_atts(
$this->args['hide_on_mobile'],
[
'class' => 'fusion-social-links',
]
);
$attr['class'] .= Fusion_Builder_Sticky_Visibility_Helper::get_sticky_class( $this->args['sticky_display'] );
if ( fusion_element_rendering_is_flex() && $this->args['alignment'] ) {
$attr['style'] = 'text-align:' . $this->args['alignment'];
}
if ( $this->args['class'] ) {
$attr['class'] .= ' ' . $this->args['class'];
}
if ( $this->args['id'] ) {
$attr['id'] = $this->args['id'];
}
return $attr;
}
/**
* Builds the social-networks attributes array.
*
* @access public
* @since 1.0
* @return array
*/
public function social_networks_attr() {
$attr = [
'class' => 'fusion-social-networks',
];
if ( 'yes' === $this->args['icons_boxed'] ) {
$attr['class'] .= ' boxed-icons';
}
return $attr;
}
/**
* Builds the icon attributes array.
*
* @access public
* @since 1.0
* @param array $args The arguments array.
* @return array
*/
public function icon_attr( $args ) {
global $fusion_settings;
$attr = [
'class' => '',
'style' => '',
];
$tooltip = Fusion_Social_Icon::get_social_network_name( $args['social_network'] );
if ( '' === $args['social_network'] || 'custom_' === substr( $args['social_network'], 0, 7 ) ) {
$attr['class'] .= 'custom ';
$args['social_network'] = strtolower( str_replace( ' ', '-', $tooltip ) );
}
if ( 'none' !== strtolower( $this->args['tooltip_placement'] ) ) {
$attr['data-placement'] = strtolower( $this->args['tooltip_placement'] );
$attr['data-title'] = $tooltip;
$attr['data-toggle'] = 'tooltip';
}
$attr['title'] = $tooltip;
$attr['class'] .= 'fusion-social-network-icon fusion-tooltip fusion-' . $args['social_network'] . ' fusion-icon-' . $args['social_network'];
$attr['aria-label'] = $args['social_network'];
$link = $args['social_link'];
$attr['target'] = ( $fusion_settings->get( 'social_icons_new' ) ) ? '_blank' : '_self';
if ( '_blank' === $attr['target'] ) {
$attr['rel'] = 'noopener noreferrer';
}
if ( 'mail' === $args['social_network'] ) {
$link = $args['social_link'];
if ( 'http' !== substr( $args['social_link'], 0, 4 ) ) {
if ( apply_filters( 'fusion_disable_antispambot', false ) ) {
$link = 'mailto:' . str_replace( 'mailto:', '', $args['social_link'] );
} else {
$link = 'mailto:' . antispambot( str_replace( 'mailto:', '', $args['social_link'] ) );
}
}
}
if ( 'phone' === $args['social_network'] ) {
$link = 'tel:' . str_replace( 'tel:', '', $args['social_link'] );
$attr['target'] = '_self';
}
$attr['href'] = $link;
if ( $fusion_settings->get( 'nofollow_social_links' ) ) {
$attr['rel'] = ( isset( $attr['rel'] ) ) ? $attr['rel'] . ' nofollow' : 'nofollow';
}
if ( $args['icon_color'] ) {
$attr['style'] = 'color:' . $args['icon_color'] . ';';
}
if ( $this->args['font_size'] ) {
$attr['style'] .= 'font-size:' . $this->args['font_size'] . ';';
if ( 'yes' === $this->args['icons_boxed'] ) {
$attr['style'] .= 'width: calc(' . $this->args['font_size'] . ' + (2 * (' . $fusion_settings->get( 'social_links_boxed_padding' ) . ')) + 2px);';
}
}
if ( 'yes' === $this->args['icons_boxed'] && $args['box_color'] ) {
$attr['style'] .= 'background-color:' . $args['box_color'] . ';border-color:' . $args['box_color'] . ';';
}
if ( 'yes' === $this->args['icons_boxed'] && $this->args['icons_boxed_radius'] || '0' === $this->args['icons_boxed_radius'] ) {
if ( 'round' === $this->args['icons_boxed_radius'] ) {
$this->args['icons_boxed_radius'] = '50%';
}
$attr['style'] .= 'border-radius:' . $this->args['icons_boxed_radius'] . ';';
}
return $attr;
}
/**
* Adds settings to element options panel.
*
* @access public
* @since 1.1
* @return array $sections Social Links settings.
*/
public function add_options() {
global $fusion_settings;
return [
'social_links_shortcode_section' => [
'label' => esc_html__( 'Social Links Element', 'fusion-builder' ),
'description' => '',
'id' => 'social_links_shortcode_section',
'type' => 'accordion',
'icon' => 'fusiona-link',
'fields' => [
'social_links_info' => [
'id' => 'social_links_info',
'type' => 'custom',
'description' => '' . __( 'IMPORTANT NOTE: These social icon global options control both the social link element and person element.', 'fusion-builder' ) . '
',
],
'social_links_font_size' => [
'label' => esc_html__( 'Social Links Icons Font Size', 'fusion-builder' ),
'description' => esc_html__( 'Controls the font size for the social link icons.', 'fusion-builder' ),
'id' => 'social_links_font_size',
'default' => '16px',
'type' => 'dimension',
'css_vars' => [
[
'name' => '--social_links_font_size',
'element' => '.fusion-social-links',
],
],
],
'social_links_color_type' => [
'label' => esc_html__( 'Social Links Icon Color Type', 'fusion-builder' ),
'description' => esc_html__( 'Custom colors allow you to choose a color for icons and boxes. Brand colors will use the exact brand color of each network for the icons or boxes.', 'fusion-builder' ),
'id' => 'social_links_color_type',
'default' => 'custom',
'type' => 'radio-buttonset',
'transport' => 'postMessage',
'choices' => [
'custom' => esc_html__( 'Custom Colors', 'fusion-builder' ),
'brand' => esc_html__( 'Brand Colors', 'fusion-builder' ),
],
],
'social_links_icon_color' => [
'label' => esc_html__( 'Social Links Custom Icons Color', 'fusion-builder' ),
'description' => esc_html__( 'Controls the color of the custom icons.', 'fusion-builder' ),
'id' => 'social_links_icon_color',
'default' => '#9ea0a4',
'type' => 'color-alpha',
'transport' => 'postMessage',
'soft_dependency' => true,
],
'social_links_boxed' => [
'label' => esc_html__( 'Social Links Icons Boxed', 'fusion-builder' ),
'description' => esc_html__( 'Turn on to have the icon displayed in a small box. Turn off to have the icon displayed with no box.', 'fusion-builder' ),
'id' => 'social_links_boxed',
'default' => '0',
'type' => 'switch',
'transport' => 'postMessage',
],
'social_links_box_color' => [
'label' => esc_html__( 'Social Links Icons Custom Box Color', 'fusion-builder' ),
'description' => esc_html__( 'Select a custom social icon box color.', 'fusion-builder' ),
'id' => 'social_links_box_color',
'default' => '#f2f3f5',
'type' => 'color-alpha',
'transport' => 'postMessage',
'soft_dependency' => true,
],
'social_links_boxed_radius' => [
'label' => esc_html__( 'Social Links Icons Boxed Radius', 'fusion-builder' ),
'description' => esc_html__( 'Box radius for the social icons.', 'fusion-builder' ),
'id' => 'social_links_boxed_radius',
'default' => '4px',
'type' => 'dimension',
'choices' => [ 'px', 'em' ],
'transport' => 'postMessage',
'soft_dependency' => true,
],
'social_links_boxed_padding' => [
'label' => esc_html__( 'Social Links Icons Boxed Padding', 'fusion-builder' ),
'id' => 'social_links_boxed_padding',
'default' => '8px',
'type' => 'dimension',
'transport' => 'postMessage',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--social_links_boxed_padding',
'element' => '.fusion-social-links',
],
],
],
'social_links_tooltip_placement' => [
'label' => esc_html__( 'Social Links Icons Tooltip Position', 'fusion-builder' ),
'description' => esc_html__( 'Controls the tooltip position of the social links icons.', 'fusion-builder' ),
'id' => 'social_links_tooltip_placement',
'default' => 'Top',
'type' => 'radio-buttonset',
'transport' => 'postMessage',
'choices' => [
'Top' => esc_html__( 'Top', 'fusion-builder' ),
'Right' => esc_html__( 'Right', 'fusion-builder' ),
'Bottom' => esc_html__( 'Bottom', 'fusion-builder' ),
'Left' => esc_html__( 'Left', 'fusion-builder' ),
'None' => esc_html__( 'None', 'fusion-builder' ),
],
],
],
],
];
}
/**
* Sets the necessary scripts.
*
* @access public
* @since 3.2
* @return void
*/
public function on_first_render() {
Fusion_Dynamic_JS::enqueue_script( 'fusion-tooltip' );
}
/**
* Load base CSS.
*
* @access public
* @since 3.0
* @return void
*/
public function add_css_files() {
FusionBuilder()->add_element_css( FUSION_BUILDER_PLUGIN_DIR . 'assets/css/shortcodes/social-links.min.css' );
}
}
}
new FusionSC_SocialLinks();
}
/**
* Map shortcode to Avada Builder.
*
* @since 1.0
*/
function fusion_element_social_links() {
$social_options = [
'name' => esc_attr__( 'Social Links', 'fusion-builder' ),
'shortcode' => 'fusion_social_links',
'icon' => 'fusiona-link',
'help_url' => 'https://theme-fusion.com/documentation/fusion-builder/elements/social-links-element/',
'params' => [
[
'type' => 'textfield',
'heading' => esc_attr__( 'Social Icons Font Size', 'fusion-builder' ),
'description' => esc_attr__( 'Controls the font size for the social icons. Enter value including CSS unit (px, em, rem), ex: 10px', 'fusion-builder' ),
'param_name' => 'font_size',
'value' => '',
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'radio_button_set',
'heading' => esc_attr__( 'Boxed Social Icons', 'fusion-builder' ),
'description' => esc_attr__( 'Choose to get boxed icons.', 'fusion-builder' ),
'param_name' => 'icons_boxed',
'value' => [
'' => esc_attr__( 'Default', 'fusion-builder' ),
'yes' => esc_attr__( 'Yes', 'fusion-builder' ),
'no' => esc_attr__( 'No', 'fusion-builder' ),
],
'default' => '',
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Social Icon Box Radius', 'fusion-builder' ),
'description' => esc_attr__( 'Choose the border radius of the boxed icons. In pixels (px), ex: 1px, or "round". ', 'fusion-builder' ),
'param_name' => 'icons_boxed_radius',
'value' => '',
'dependency' => [
[
'element' => 'icons_boxed',
'value' => 'no',
'operator' => '!=',
],
],
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'radio_button_set',
'heading' => esc_attr__( 'Social Icons Color Type', 'fusion-builder' ),
'description' => esc_attr__( 'Choose the color type of social icons. Brand colors will use the exact brand color of each network for the icons or boxes.', 'fusion-builder' ),
'param_name' => 'color_type',
'value' => [
'' => esc_attr__( 'Default', 'fusion-builder' ),
'custom' => esc_attr__( 'Custom Colors', 'fusion-builder' ),
'brand' => esc_attr__( 'Brand Colors', 'fusion-builder' ),
],
'default' => '',
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'textarea',
'heading' => esc_attr__( 'Social Icon Custom Colors', 'fusion-builder' ),
'description' => esc_attr__( 'Specify the color of social icons.', 'fusion-builder' ),
'param_name' => 'icon_colors',
'value' => '',
'dependency' => [
[
'element' => 'color_type',
'value' => 'brand',
'operator' => '!=',
],
],
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'textarea',
'heading' => esc_attr__( 'Social Icon Custom Box Colors', 'fusion-builder' ),
'description' => esc_attr__( 'Specify the box color of social icons.', 'fusion-builder' ),
'param_name' => 'box_colors',
'value' => '',
'dependency' => [
[
'element' => 'icons_boxed',
'value' => 'no',
'operator' => '!=',
],
[
'element' => 'color_type',
'value' => 'brand',
'operator' => '!=',
],
],
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'radio_button_set',
'heading' => esc_attr__( 'Social Icon Tooltip Position', 'fusion-builder' ),
'description' => esc_attr__( 'Choose the display position for tooltips.', 'fusion-builder' ),
'param_name' => 'tooltip_placement',
'value' => [
'' => esc_attr__( 'Default', 'fusion-builder' ),
'top' => esc_attr__( 'Top', 'fusion-builder' ),
'bottom' => esc_attr__( 'Bottom', 'fusion-builder' ),
'left' => esc_attr__( 'Left', 'fusion-builder' ),
'Right' => esc_attr__( 'Right', 'fusion-builder' ),
'none' => esc_html__( 'None', 'fusion-builder' ),
],
'default' => '',
'group' => esc_attr__( 'Design', 'fusion-builder' ),
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Blogger Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Blogger link.', 'fusion-builder' ),
'param_name' => 'blogger',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Deviantart Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Deviantart link.', 'fusion-builder' ),
'param_name' => 'deviantart',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Discord Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Discord link.', 'fusion-builder' ),
'param_name' => 'discord',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Digg Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Digg link.', 'fusion-builder' ),
'param_name' => 'digg',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Dribbble Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Dribbble link.', 'fusion-builder' ),
'param_name' => 'dribbble',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Dropbox Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Dropbox link.', 'fusion-builder' ),
'param_name' => 'dropbox',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Facebook Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Facebook link.', 'fusion-builder' ),
'param_name' => 'facebook',
'value' => '#',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Flickr Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Flickr link.', 'fusion-builder' ),
'param_name' => 'flickr',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Forrst Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Forrst link.', 'fusion-builder' ),
'param_name' => 'forrst',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Instagram Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Instagram link.', 'fusion-builder' ),
'param_name' => 'instagram',
'value' => '#',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'LinkedIn Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom LinkedIn link.', 'fusion-builder' ),
'param_name' => 'linkedin',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Myspace Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Myspace link.', 'fusion-builder' ),
'param_name' => 'myspace',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'PayPal Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom PayPal link.', 'fusion-builder' ),
'param_name' => 'paypal',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Pinterest Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Pinterest link.', 'fusion-builder' ),
'param_name' => 'pinterest',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Reddit Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Reddit link.', 'fusion-builder' ),
'param_name' => 'reddit',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'RSS Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom RSS link.', 'fusion-builder' ),
'param_name' => 'rss',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Skype Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Skype link.', 'fusion-builder' ),
'param_name' => 'skype',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'SoundCloud Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom SoundCloud link.', 'fusion-builder' ),
'param_name' => 'soundcloud',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Spotify Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Spotify link.', 'fusion-builder' ),
'param_name' => 'spotify',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Tiktok Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Tiktok link.', 'fusion-builder' ),
'param_name' => 'tiktok',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Tumblr Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Tumblr link.', 'fusion-builder' ),
'param_name' => 'tumblr',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Twitch Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Twitch link.', 'fusion-builder' ),
'param_name' => 'twitch',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Twitter Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Twitter link.', 'fusion-builder' ),
'param_name' => 'twitter',
'value' => '#',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Vimeo Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Vimeo link.', 'fusion-builder' ),
'param_name' => 'vimeo',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'VK Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom VK link.', 'fusion-builder' ),
'param_name' => 'vk',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'WeChat Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom WeChat link.', 'fusion-builder' ),
'param_name' => 'wechat',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'WhatsApp Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom WhatsApp link.', 'fusion-builder' ),
'param_name' => 'whatsapp',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Xing Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Xing link.', 'fusion-builder' ),
'param_name' => 'xing',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Yahoo Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Yahoo link.', 'fusion-builder' ),
'param_name' => 'yahoo',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Yelp Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Yelp link.', 'fusion-builder' ),
'param_name' => 'yelp',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Youtube Link', 'fusion-builder' ),
'description' => esc_attr__( 'Insert your custom Youtube link.', 'fusion-builder' ),
'param_name' => 'youtube',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Email Address', 'fusion-builder' ),
'description' => esc_attr__( 'Insert an email address to display the email icon.', 'fusion-builder' ),
'param_name' => 'email',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'textfield',
'heading' => esc_attr__( 'Phone Number', 'fusion-builder' ),
'description' => esc_attr__( 'Insert a phone number to display the phone icon.', 'fusion-builder' ),
'param_name' => 'phone',
'value' => '',
'dynamic_data' => true,
],
[
'type' => 'radio_button_set',
'heading' => esc_attr__( 'Show Custom Social Icon', 'fusion-builder' ),
'description' => esc_attr__( 'Show the custom social icon specified in Global Options.', 'fusion-builder' ),
'param_name' => 'show_custom',
'value' => [
'yes' => esc_attr__( 'Yes', 'fusion-builder' ),
'no' => esc_attr__( 'No', 'fusion-builder' ),
],
'default' => 'no',
],
],
];
$custom_social_networks = fusion_builder_get_custom_social_networks();
if ( is_array( $custom_social_networks ) ) {
$custom_networks = [];
foreach ( $custom_social_networks as $key => $custom_network ) {
$social_options['params'][] = [
'type' => 'textfield',
/* translators: The network-name. */
'heading' => sprintf( esc_attr__( '%s Link', 'fusion-builder' ), $custom_network['title'] ),
'description' => esc_attr__( 'Insert your custom social link.', 'fusion-builder' ),
'param_name' => 'custom_' . $key,
'value' => '',
'dependency' => [
[
'element' => 'show_custom',
'value' => 'yes',
'operator' => '==',
],
],
];
}
}
$social_options['params'][] = [
'type' => 'radio_button_set',
'heading' => esc_attr__( 'Alignment', 'fusion-builder' ),
'description' => esc_attr__( "Select the icon's alignment.", 'fusion-builder' ),
'param_name' => 'alignment',
'value' => [
'' => esc_attr__( 'Text Flow', 'fusion-builder' ),
'left' => esc_attr__( 'Left', 'fusion-builder' ),
'center' => esc_attr__( 'Center', 'fusion-builder' ),
'right' => esc_attr__( 'Right', 'fusion-builder' ),
],
'default' => '',
'group' => esc_attr__( 'Design', 'fusion-builder' ),
];
$social_options['params'][] = [
'type' => 'checkbox_button_set',
'heading' => esc_attr__( 'Element Visibility', 'fusion-builder' ),
'param_name' => 'hide_on_mobile',
'value' => fusion_builder_visibility_options( 'full' ),
'default' => fusion_builder_default_visibility( 'array' ),
'description' => esc_attr__( 'Choose to show or hide the element on small, medium or large screens. You can choose more than one at a time.', 'fusion-builder' ),
];
$social_options['params']['fusion_sticky_visibility_placeholder'] = [];
$social_options['params'][] = [
'type' => 'textfield',
'heading' => esc_attr__( 'CSS Class', 'fusion-builder' ),
'param_name' => 'class',
'value' => '',
'description' => esc_attr__( 'Add a class to the wrapping HTML element.', 'fusion-builder' ),
];
$social_options['params'][] = [
'type' => 'textfield',
'heading' => esc_attr__( 'CSS ID', 'fusion-builder' ),
'param_name' => 'id',
'value' => '',
'description' => esc_attr__( 'Add an ID to the wrapping HTML element.', 'fusion-builder' ),
];
fusion_builder_map( fusion_builder_frontend_data( 'FusionSC_SocialLinks', $social_options ) );
}
add_action( 'fusion_builder_before_init', 'fusion_element_social_links' );
/*! elementor - v3.14.0 - 26-06-2023 */
"use strict";
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["toggle"],{
/***/ "../assets/dev/js/frontend/handlers/base-tabs.js":
/*!*******************************************************!*\
!*** ../assets/dev/js/frontend/handlers/base-tabs.js ***!
\*******************************************************/
/***/ ((__unused_webpack_module, exports) => {
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
class baseTabs extends elementorModules.frontend.handlers.Base {
getDefaultSettings() {
return {
selectors: {
tablist: '[role="tablist"]',
tabTitle: '.elementor-tab-title',
tabContent: '.elementor-tab-content'
},
classes: {
active: 'elementor-active'
},
showTabFn: 'show',
hideTabFn: 'hide',
toggleSelf: true,
hidePrevious: true,
autoExpand: true,
keyDirection: {
ArrowLeft: elementorFrontendConfig.is_rtl ? 1 : -1,
ArrowUp: -1,
ArrowRight: elementorFrontendConfig.is_rtl ? -1 : 1,
ArrowDown: 1
}
};
}
getDefaultElements() {
const selectors = this.getSettings('selectors');
return {
$tabTitles: this.findElement(selectors.tabTitle),
$tabContents: this.findElement(selectors.tabContent)
};
}
activateDefaultTab() {
const settings = this.getSettings();
if (!settings.autoExpand || 'editor' === settings.autoExpand && !this.isEdit) {
return;
}
const defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
originalToggleMethods = {
showTabFn: settings.showTabFn,
hideTabFn: settings.hideTabFn
};
// Toggle tabs without animation to avoid jumping
this.setSettings({
showTabFn: 'show',
hideTabFn: 'hide'
});
this.changeActiveTab(defaultActiveTab);
// Return back original toggle effects
this.setSettings(originalToggleMethods);
}
handleKeyboardNavigation(event) {
const tab = event.currentTarget,
$tabList = jQuery(tab.closest(this.getSettings('selectors').tablist)),
// eslint-disable-next-line @wordpress/no-unused-vars-before-return
$tabs = $tabList.find(this.getSettings('selectors').tabTitle),
isVertical = 'vertical' === $tabList.attr('aria-orientation');
switch (event.key) {
case 'ArrowLeft':
case 'ArrowRight':
if (isVertical) {
return;
}
break;
case 'ArrowUp':
case 'ArrowDown':
if (!isVertical) {
return;
}
event.preventDefault();
break;
case 'Home':
event.preventDefault();
$tabs.first().trigger('focus');
return;
case 'End':
event.preventDefault();
$tabs.last().trigger('focus');
return;
default:
return;
}
const tabIndex = tab.getAttribute('data-tab') - 1,
direction = this.getSettings('keyDirection')[event.key],
nextTab = $tabs[tabIndex + direction];
if (nextTab) {
nextTab.focus();
} else if (-1 === tabIndex + direction) {
$tabs.last().trigger('focus');
} else {
$tabs.first().trigger('focus');
}
}
deactivateActiveTab(tabIndex) {
const settings = this.getSettings(),
activeClass = settings.classes.active,
activeFilter = tabIndex ? '[data-tab="' + tabIndex + '"]' : '.' + activeClass,
$activeTitle = this.elements.$tabTitles.filter(activeFilter),
$activeContent = this.elements.$tabContents.filter(activeFilter);
$activeTitle.add($activeContent).removeClass(activeClass);
$activeTitle.attr({
tabindex: '-1',
'aria-selected': 'false',
'aria-expanded': 'false'
});
$activeContent[settings.hideTabFn]();
$activeContent.attr('hidden', 'hidden');
}
activateTab(tabIndex) {
const settings = this.getSettings(),
activeClass = settings.classes.active,
$requestedTitle = this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]'),
$requestedContent = this.elements.$tabContents.filter('[data-tab="' + tabIndex + '"]'),
animationDuration = 'show' === settings.showTabFn ? 0 : 400;
$requestedTitle.add($requestedContent).addClass(activeClass);
$requestedTitle.attr({
tabindex: '0',
'aria-selected': 'true',
'aria-expanded': 'true'
});
$requestedContent[settings.showTabFn](animationDuration, () => elementorFrontend.elements.$window.trigger('elementor-pro/motion-fx/recalc'));
$requestedContent.removeAttr('hidden');
}
isActiveTab(tabIndex) {
return this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]').hasClass(this.getSettings('classes.active'));
}
bindEvents() {
this.elements.$tabTitles.on({
keydown: event => {
// Support for old markup that includes an `` tag in the tab
if (jQuery(event.target).is('a') && `Enter` === event.key) {
event.preventDefault();
}
// We listen to keydowon event for these keys in order to prevent undesired page scrolling
if (['End', 'Home', 'ArrowUp', 'ArrowDown'].includes(event.key)) {
this.handleKeyboardNavigation(event);
}
},
keyup: event => {
switch (event.code) {
case 'ArrowLeft':
case 'ArrowRight':
this.handleKeyboardNavigation(event);
break;
case 'Enter':
case 'Space':
event.preventDefault();
this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
break;
}
},
click: event => {
event.preventDefault();
this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
}
});
}
onInit() {
super.onInit(...arguments);
this.activateDefaultTab();
}
onEditSettingsChange(propertyName) {
if ('activeItemIndex' === propertyName) {
this.activateDefaultTab();
}
}
changeActiveTab(tabIndex) {
const isActiveTab = this.isActiveTab(tabIndex),
settings = this.getSettings();
if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
this.deactivateActiveTab();
}
if (!settings.hidePrevious && isActiveTab) {
this.deactivateActiveTab(tabIndex);
}
if (!isActiveTab) {
this.activateTab(tabIndex);
}
}
}
exports["default"] = baseTabs;
/***/ }),
/***/ "../assets/dev/js/frontend/handlers/toggle.js":
/*!****************************************************!*\
!*** ../assets/dev/js/frontend/handlers/toggle.js ***!
\****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));
class Toggle extends _baseTabs.default {
getDefaultSettings() {
const defaultSettings = super.getDefaultSettings();
return {
...defaultSettings,
showTabFn: 'slideDown',
hideTabFn: 'slideUp',
hidePrevious: false,
autoExpand: 'editor'
};
}
}
exports["default"] = Toggle;
/***/ })
}]);
//# sourceMappingURL=toggle.29e5a34bb6e51dab4600.bundle.js.map(function ($) {
"use strict";
vc.atts.g5element_number_and_unit = {
init: function (param, $field) {
var $inputField = $field.find('.g5element_number_and_unit_field');
$field.find('.g5element-vc-number-and-unit-field').on('change',function(){
var value = '';
$field.find('.g5element-vc-number-and-unit-field').each(function(){
if (value === '') {
value += $(this).val();
} else {
value += $(this).val();
}
});
$inputField.val(value);
});
}
}
})(jQuery);
{{ option.name }}
/**
* Avada Options.
*
* @author ThemeFusion
* @copyright (c) Copyright by ThemeFusion
* @link https://theme-fusion.com
* @package Avada
* @subpackage Core
* @since 4.0.0
*/
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
exit( 'Direct script access denied.' );
}
/**
* Menu
*
* @param array $sections An array of our sections.
* @return array
*/
function avada_options_section_menu( $sections ) {
$option_name = Avada::get_option_name();
$settings = (array) get_option( $option_name );
if ( ! isset( $settings['header_position'] ) ) {
$settings['header_position'] = 'top';
}
if ( ! isset( $settings['side_header_break_point'] ) ) {
$settings['side_header_break_point'] = 800;
}
/* translators: value. */
$menu_height_hint = '';
// If we can get logo height and the logo margins are in pixels, then we can provide a hint.
if ( is_admin() ) {
$logo_data = Avada()->images->get_logo_data( 'logo' );
if ( isset( $logo_data['height'] ) && '' !== $logo_data['height'] && isset( $settings['logo_margin']['top'] ) && isset( $settings['logo_margin']['bottom'] ) ) {
$logo_top_margin = Fusion_Sanitize::size( $settings['logo_margin']['top'] );
$logo_bottom_margin = Fusion_Sanitize::size( $settings['logo_margin']['bottom'] );
if ( strpos( $logo_top_margin, 'px' ) && strpos( $logo_bottom_margin, 'px' ) ) {
$total_logo_height = intval( $logo_top_margin ) + intval( $logo_bottom_margin ) + intval( $logo_data['height'] );
/* translators: value. */
$menu_height_hint = '';
}
}
}
$menu_edit_link = '';
// Only needed in front end builder.
if ( function_exists( 'fusion_is_preview_frame' ) ) {
$menu_locations = get_nav_menu_locations();
$menu_edit_link = isset( $menu_locations['main_navigation'] ) ? admin_url( 'nav-menus.php?action=edit&menu=' . $menu_locations['main_navigation'] ) : admin_url( 'nav-menus.php' );
}
// Check if we have a global header override.
$has_global_header = false;
if ( class_exists( 'Fusion_Template_Builder' ) ) {
$default_layout = Fusion_Template_Builder::get_default_layout();
$has_global_header = isset( $default_layout['data']['template_terms'] ) && isset( $default_layout['data']['template_terms']['header'] ) && $default_layout['data']['template_terms']['header'];
}
$sections['menu'] = [
'label' => esc_html__( 'Menu', 'Avada' ),
'id' => 'heading_menu_section',
'priority' => 1,
'icon' => 'el-icon-lines',
'alt_icon' => 'fusiona-bars',
'fields' => [],
];
if ( $has_global_header ) {
$sections['menu']['fields']['menu_global_header_override_template_notice'] = [
'id' => 'menu_global_header_override_template_notice',
'label' => '',
'hidden' => ! $has_global_header,
'description' => sprintf(
/* translators: 1: Content|Footer|Page Title Bar. 2: URL. */
'' . __( '
IMPORTANT NOTE: The options on this tab are not available because a global %1$s override is currently used. To edit your global layout please visit
this page .', 'Avada' ) . '
',
Fusion_Template_Builder::get_instance()->get_template_terms()['header']['label'],
admin_url( 'admin.php?page=avada-layouts' )
),
'type' => 'custom',
];
}
$fields = [
'heading_menu' => [
'label' => esc_html__( 'Main Menu', 'Avada' ),
'id' => 'heading_menu',
'priority' => 6,
'type' => 'sub-section',
'hidden' => $has_global_header,
'fields' => [
'nav_height' => [
'label' => esc_html__( 'Main Menu Height', 'Avada' ),
'description' => esc_html__( 'Controls the menu height.', 'Avada' ) . $menu_height_hint,
'id' => 'nav_height',
'default' => '94',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '300',
'step' => '1',
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--nav_height',
'element' => '.fusion-main-menu',
'value_pattern' => '$px',
],
],
'output' => [
// This is for the avadaHeaderVars.nav_height var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'globalVar' => 'avadaHeaderVars',
'id' => 'nav_height',
'trigger' => [ 'fusion-reinit-sticky-header' ],
],
],
'sanitize_callback' => '__return_empty_string',
],
],
'edit_shortcut' => [
'selector' => [ '.fusion-header', '#side-header .side-header-wrapper' ],
'shortcuts' => [
[
'aria_label' => esc_html__( 'Edit Main Menu', 'Avada' ),
'link' => $menu_edit_link,
'order' => 3,
],
],
],
],
'menu_highlight_style' => [
'label' => esc_html__( 'Main Menu Highlight Style', 'Avada' ),
'description' => __( 'Controls the highlight style for main menu links and also affects the look of menu dropdowns. Arrow style cannot work with a transparent header background. Bar highlights will display vertically on side header layouts. IMPORTANT: Arrow & Background style can require configuration of other options depending on desired effect.', 'Avada' ) . ' ' . esc_html__( 'See this post for more information', 'Avada' ) . ' .',
'id' => 'menu_highlight_style',
'default' => 'bar',
'choices' => [
'bar' => esc_html__( 'Top Bar', 'Avada' ),
'bottombar' => esc_html__( 'Bottom Bar', 'Avada' ),
'arrow' => esc_html__( 'Arrow', 'Avada' ),
'background' => esc_html__( 'Background', 'Avada' ),
'textcolor' => esc_html__( 'Color Only', 'Avada' ),
],
'type' => 'radio-buttonset',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'output' => [
// Change body class.
[
'element' => 'body',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'avada-menu-highlight-style-$',
'remove_attrs' => [ 'avada-menu-highlight-style-bar', 'avada-menu-highlight-style-bottombar', 'avada-menu-highlight-style-arrow', 'avada-menu-highlight-style-background', 'avada-menu-highlight-style-textcolor' ],
],
// Change the avadaHeaderVars.nav_highlight_style var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'choice' => 'top',
'globalVar' => 'avadaHeaderVars',
'id' => 'nav_highlight_style',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
// Partial refresh for the header.
'partial_refresh' => [
'menu_highlight_style_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'menu_highlight_style_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'menu_highlight_style_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'menu_highlight_background' => [
'label' => esc_html__( 'Main Menu Highlight Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of main menu highlight.', 'Avada' ),
'id' => 'menu_highlight_background',
'default' => '#65bc7b',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-or-and',
'required' => [
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'background',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'background',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--menu_highlight_background',
'callback' => [ 'sanitize_color' ],
],
],
],
'menu_arrow_size' => [
'label' => esc_html__( 'Main Menu Arrow Size', 'Avada' ),
'description' => esc_html__( 'Controls the width and height of the main menu arrow.', 'Avada' ),
'id' => 'menu_arrow_size',
'units' => false,
'default' => [
'width' => '23px',
'height' => '12px',
],
'type' => 'dimensions',
'class' => 'fusion-gutter-and-or-and',
'required' => [
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'arrow',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'arrow',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--menu_arrow_size-width',
'choice' => 'width',
],
[
'name' => '--menu_arrow_size-height',
'choice' => 'height',
],
[
'name' => '--menu_arrow_size-width-header_border_color_condition_5',
'choice' => 'width',
'callback' => [ 'header_border_color_condition_5', '' ],
],
],
],
'nav_highlight_border' => [
'label' => esc_html__( 'Main Menu Highlight Bar Size', 'Avada' ),
'description' => esc_html__( 'Controls the size of the menu highlight bar.', 'Avada' ),
'id' => 'nav_highlight_border',
'default' => '3',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '40',
'step' => '1',
],
'class' => 'fusion-gutter-and-or-and-or-and-or-and',
'required' => [
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bar',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bar',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bottombar',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bottombar',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--nav_highlight_border',
'value_pattern' => '$px',
'callback' => [ 'fallback_to_value', '0' ],
],
],
'output' => [
// Change the avadaHeaderVars.nav_height var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'choice' => 'top',
'globalVar' => 'avadaHeaderVars',
'id' => 'nav_highlight_border',
],
],
'sanitize_callback' => '__return_empty_string',
],
// Change the avadaHeaderVars.nav_height var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'choice' => 'top',
'globalVar' => 'avadaHeaderVars',
'id' => 'nav_height',
'trigger' => [ 'fusion-reinit-sticky-header' ],
'condition' => [ 'menu_highlight_style', '===', 'bar', '$', '0' ],
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'nav_padding' => [
'label' => esc_html__( 'Main Menu Item Padding', 'Avada' ),
'description' => esc_html__( 'Controls the right padding for menu text (left on RTL).', 'Avada' ),
'id' => 'nav_padding',
'default' => '48',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '200',
'step' => '1',
],
'required' => [
[
'setting' => 'header_position',
'operator' => '==',
'value' => 'top',
],
],
'css_vars' => [
[
'name' => '--nav_padding',
'value_pattern' => '$px',
],
[
'name' => '--nav_padding-no-zero',
'callback' => [
'conditional_return_value',
[
'value_pattern' => [ '$px', '' ],
'conditions' => [
[ 'nav_padding', '==', '0' ],
],
],
],
],
],
],
'mobile_nav_padding' => [
'label' => esc_html__( 'Main Menu Item Padding On Mobile', 'Avada' ),
'description' => esc_html__( 'Controls the right padding for menu text (left on RTL) when the normal desktop menu is used on mobile devices.', 'Avada' ),
'id' => 'mobile_nav_padding',
'default' => '25',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '200',
'step' => '1',
],
'required' => [
[
'setting' => 'header_position',
'operator' => '==',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--mobile_nav_padding',
'element' => '.fusion-main-menu',
'value_pattern' => '$px',
],
],
],
'megamenu_shadow' => [
'label' => esc_html__( 'Main Menu Drop Shadow', 'Avada' ),
'description' => esc_html__( 'Turn on to display a drop shadow on menu dropdowns.', 'Avada' ),
'id' => 'megamenu_shadow',
'default' => '1',
'type' => 'switch',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-megamenu-shadow',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'main_menu_sub_menu_animation' => [
'label' => esc_html__( 'Main Menu Dropdown / Mega Menu Animation', 'Avada' ),
'description' => esc_html__( 'Controls the animation type for all sub-menus.', 'Avada' ),
'id' => 'main_menu_sub_menu_animation',
'type' => 'radio-buttonset',
'default' => 'fade',
'choices' => [
'fade' => esc_html__( 'Fade', 'Avada' ),
'slide' => esc_html__( 'Slide', 'Avada' ),
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
// Change body class.
[
'element' => 'body',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'fusion-sub-menu-$',
'remove_attrs' => [ 'fusion-sub-menu-fade', 'fusion-sub-menu-slide' ],
],
],
'dropdown_menu_top_border_size' => [
'label' => esc_html__( 'Main Menu Dropdown Top Border Size', 'Avada' ),
'description' => esc_html__( 'Controls top border size of dropdown menus and mega menus.', 'Avada' ),
'id' => 'dropdown_menu_top_border_size',
'default' => '3',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '50',
'step' => '1',
],
'class' => 'fusion-gutter-and-or-and-or-and-or-and',
'required' => [
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bar',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bar',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bottombar',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'menu_highlight_style',
'operator' => '==',
'value' => 'bottombar',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--dropdown_menu_top_border_size',
'value_pattern' => '$px',
],
],
],
'dropdown_menu_width' => [
'label' => esc_html__( 'Main Menu Dropdown Width', 'Avada' ),
'description' => esc_html__( 'Controls the width of the dropdown.', 'Avada' ),
'id' => 'dropdown_menu_width',
'default' => '200',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '500',
'step' => '1',
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--dropdown_menu_width',
'value_pattern' => '$px',
],
],
],
'mainmenu_dropdown_vertical_padding' => [
'label' => esc_html__( 'Main Menu Dropdown Item Padding', 'Avada' ),
'description' => esc_html__( 'Controls the top/bottom padding for dropdown menu items.', 'Avada' ),
'id' => 'mainmenu_dropdown_vertical_padding',
'default' => '12',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '50',
'step' => '1',
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--mainmenu_dropdown_vertical_padding',
'value_pattern' => '$px',
],
],
],
'mainmenu_dropdown_display_divider' => [
'label' => esc_html__( 'Main Menu Dropdown Divider', 'Avada' ),
'description' => esc_html__( 'Turn on to display a divider line on dropdown menu items.', 'Avada' ),
'id' => 'mainmenu_dropdown_display_divider',
'default' => '0',
'type' => 'switch',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-mainmenu-dropdown-divider',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'menu_display_dropdown_indicator' => [
'label' => esc_html__( 'Main Menu Dropdown Indicator', 'Avada' ),
'description' => esc_html__( 'Turn on to display arrow indicators next to parent level menu items.', 'Avada' ),
'id' => 'menu_display_dropdown_indicator',
'default' => 'none',
'choices' => [
'parent' => esc_html__( 'Parent', 'Avada' ),
'parent_child' => esc_html__( 'Parent + Child', 'Avada' ),
'none' => esc_html__( 'None', 'Avada' ),
],
'type' => 'radio-buttonset',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
// Partial refresh for the header.
'partial_refresh' => [
'header_menu_display_dropdown_indicator_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'header_menu_display_dropdown_indicator_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'header_menu_display_dropdown_indicator' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'main_nav_search_icon' => [
'label' => esc_html__( 'Main Menu Search Icon', 'Avada' ),
'description' => esc_html__( 'Turn on to display the search icon in the main menu.', 'Avada' ),
'id' => 'main_nav_search_icon',
'default' => '1',
'type' => 'switch',
// Partial refresh for the header.
'partial_refresh' => [
'header_main_nav_search_icon_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'header_main_nav_search_icon_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'header_main_nav_search_icon' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-main-nav-search-icon',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'main_nav_search_layout' => [
'label' => esc_html__( 'Main Menu Search Layout', 'Avada' ),
'description' => esc_html__( 'Controls the layout of the search bar in the main menu.', 'Avada' ),
'id' => 'main_nav_search_layout',
'default' => 'overlay',
'choices' => [
'dropdown' => esc_html__( 'Drop-Down', 'Avada' ),
'overlay' => esc_html__( 'Menu Overlay', 'Avada' ),
],
'type' => 'radio-buttonset',
'required' => [
[
'setting' => 'main_nav_search_icon',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '==',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'partial_refresh' => [
'main_nav_search_layout_refresh' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ 'dropdown', 'overlay' ],
'element' => 'body',
'className' => [ 'fusion-main-menu-search-dropdown', 'fusion-main-menu-search-overlay' ],
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'main_nav_icon_circle' => [
'label' => esc_html__( 'Main Menu Icon Circle Borders', 'Avada' ),
'description' => esc_html__( 'Turn on to display a circle border on the cart and search icons.', 'Avada' ),
'id' => 'main_nav_icon_circle',
'default' => '0',
'type' => 'switch',
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'fusion-has-main-nav-icon-circle',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'main_nav_highlight_radius' => [
'label' => esc_html__( 'Menu Highlight Label Radius', 'Avada' ),
'description' => esc_html__( 'Controls the border radius of all your menu highlight labels.', 'Avada' ),
'id' => 'main_nav_highlight_radius',
'default' => '2px',
'type' => 'dimension',
'css_vars' => [
[
'name' => '--main_nav_highlight_radius',
'element' => '.fusion-menu-highlight-label',
],
],
],
'menu_sub_bg_color' => [
'label' => esc_html__( 'Main Menu Dropdown Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the main menu dropdown.', 'Avada' ),
'id' => 'menu_sub_bg_color',
'default' => '#ffffff',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--menu_sub_bg_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'menu_bg_hover_color' => [
'label' => esc_html__( 'Main Menu Dropdown Background Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the background hover color of the main menu dropdown.', 'Avada' ),
'id' => 'menu_bg_hover_color',
'default' => '#f9f9fb',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--menu_bg_hover_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'menu_sub_sep_color' => [
'label' => esc_html__( 'Main Menu Dropdown Separator Color', 'Avada' ),
'description' => esc_html__( 'Controls the color of the separators in the main menu dropdown.', 'Avada' ),
'id' => 'menu_sub_sep_color',
'default' => '#e2e2e2',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--menu_sub_sep_color',
'callback' => [ 'sanitize_color' ],
],
],
'output' => [
[
'element' => [ '.fusion-main-menu .fusion-main-menu-search .fusion-custom-menu-item-contents', '.fusion-main-menu .fusion-main-menu-cart .fusion-custom-menu-item-contents', '.fusion-main-menu .fusion-menu-login-box .fusion-custom-menu-item-contents' ],
'property' => 'border',
'js_callback' => [
'fusionReturnStringIfTransparent',
[
'transparent' => '0',
'opaque' => '',
],
],
'sanitize_callback' => [ 'Avada_Output_Callbacks', 'menu_sub_sep_color' ],
],
],
],
'menu_h45_bg_color' => [
'label' => esc_html__( 'Main Menu Background Color For Header 4 & 5', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the main menu when using header 4 or 5.', 'Avada' ),
'id' => 'menu_h45_bg_color',
'default' => '#ffffff',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_layout',
'operator' => '==',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '==',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--menu_h45_bg_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'main_menu_typography_info' => [
'label' => esc_html__( 'Main Menu Typography', 'Avada' ),
'description' => '',
'id' => 'main_menu_typography_info',
'type' => 'info',
],
'nav_typography' => [
'id' => 'nav_typography',
'label' => esc_html__( 'Menus Typography', 'Avada' ),
'description' => esc_html__( 'These settings control the typography for all main menu top-level items.', 'Avada' ),
'type' => 'typography',
'class' => 'avada-no-fontsize',
'choices' => [
'font-family' => true,
'font-weight' => true,
'font-size' => true,
'letter-spacing' => true,
'color' => true,
],
'default' => [
'font-family' => 'Open Sans',
'font-weight' => '400',
'font-size' => '14px',
'letter-spacing' => '0',
'color' => '#212934',
],
'css_vars' => [
[
'name' => '--nav_typography-font-family',
'choice' => 'font-family',
'callback' => [ 'combined_font_family', 'nav_typography' ],
],
[
'name' => '--nav_typography-font-weight',
'choice' => 'font-weight',
'callback' => [ 'font_weight_no_regular', '' ],
],
[
'name' => '--nav_typography-font-size',
'choice' => 'font-size',
],
[
'name' => '--nav_typography-font-style',
'choice' => 'font-style',
],
[
'name' => '--nav_typography-letter-spacing',
'choice' => 'letter-spacing',
'callback' => [ 'maybe_append_px', '' ],
],
[
'name' => '--nav_typography-color',
'choice' => 'color',
],
[
'name' => '--nav_typography-color-65a',
'choice' => 'color',
'callback' => [ 'color_alpha_set', .65 ],
],
[
'name' => '--nav_typography-color-35a',
'choice' => 'color',
'callback' => [ 'color_alpha_set', .35 ],
],
],
],
'menu_text_align' => [
'label' => esc_html__( 'Main Menu Text Align', 'Avada' ),
'description' => esc_html__( 'Controls the main menu text alignment for top headers 4-5 and side headers.', 'Avada' ),
'id' => 'menu_text_align',
'default' => 'center',
'choices' => [
'left' => esc_html__( 'Left', 'Avada' ),
'center' => esc_html__( 'Center', 'Avada' ),
'right' => esc_html__( 'Right', 'Avada' ),
],
'type' => 'radio-buttonset',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_layout',
'operator' => '==',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '==',
'value' => 'v5',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
],
'css_vars' => [
[
'name' => '--menu_text_align',
'element' => '.fusion-main-menu',
],
],
'output' => [
( class_exists( 'SitePress' ) ) ? [
'element' => [ '#side-header .fusion-main-menu .wpml-ls-item > a', '#side-header .fusion-main-menu .wpml-ls-item .menu-text' ],
'property' => 'justify-content',
'value_pattern' => ( is_rtl() ) ? 'flex-end' : 'flex-start',
'exclude' => [ 'right', 'center' ],
] : [],
( class_exists( 'SitePress' ) ) ? [
'element' => [ '#side-header .fusion-main-menu .wpml-ls-item > a', '#side-header .fusion-main-menu .wpml-ls-item .menu-text' ],
'property' => 'justify-content',
'value_pattern' => ( is_rtl() ) ? 'flex-start' : 'flex-end',
'exclude' => [ 'left', 'center' ],
] : [],
[
'element' => 'body',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'menu-text-align-$',
'remove_attrs' => [ 'menu-text-align-left', 'menu-text-align-center', 'menu-text-align-right' ],
],
],
// Partial refresh for the header.
'partial_refresh' => [
'menu_text_align_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'menu_text_align_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'menu_text_align_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'menu_hover_first_color' => [
'label' => esc_html__( 'Main Menu Font Hover/Active Color', 'Avada' ),
'description' => esc_html__( 'Controls the color for main menu text hover and active states, highlight bar and dropdown border.', 'Avada' ),
'id' => 'menu_hover_first_color',
'default' => '#65bc7b',
'type' => 'color-alpha',
'css_vars' => [
[
'name' => '--menu_hover_first_color',
'callback' => [ 'sanitize_color' ],
],
[
'name' => '--menu_hover_first_color-65a',
'callback' => [ 'color_alpha_set', '0.65' ],
],
],
],
'menu_sub_color' => [
'label' => esc_html__( 'Main Menu Dropdown Font Color', 'Avada' ),
'description' => esc_html__( 'Controls the color for main menu dropdown text.', 'Avada' ),
'id' => 'menu_sub_color',
'default' => '#212934',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--menu_sub_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'nav_dropdown_font_size' => [
'label' => esc_html__( 'Main Menu Dropdown Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for main menu dropdown text.', 'Avada' ),
'id' => 'nav_dropdown_font_size',
'default' => '14px',
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
'css_vars' => [
[
'name' => '--nav_dropdown_font_size',
],
],
],
'side_nav_font_size' => [
'label' => esc_html__( 'Side Navigation Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for the menu text when using the side navigation page template.', 'Avada' ),
'id' => 'side_nav_font_size',
'default' => '16px',
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'css_vars' => [
[
'name' => '--side_nav_font_size',
'element' => '.side-nav',
],
],
],
],
],
'flyout_menu_subsection' => [
'label' => esc_html__( 'Flyout Menu', 'Avada' ),
'id' => 'flyout_menu_subsection',
'type' => 'sub-section',
'hidden' => $has_global_header,
'fields' => [
'flyout_menu_important_note_info' => ( '0' === Avada()->settings->get( 'dependencies_status' ) ) ? [] : [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Flyout Menu Options are only available when using Header Layout #6 or Mobile Flyout Menu. Your current setup does not utilize the flyout menu.', 'Avada' ) . '
',
'id' => 'flyout_menu_important_note_info',
'type' => 'custom',
'class' => 'fusion-gutter-and-or-and',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
],
'flyout_menu_icon_font_size' => [
'label' => esc_html__( 'Flyout Menu Icon Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for the flyout menu icons.', 'Avada' ),
'id' => 'flyout_menu_icon_font_size',
'default' => '20px',
'type' => 'dimension',
'class' => 'fusion-gutter-and-or',
'choices' => [
'units' => [ 'px', 'em' ],
],
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--flyout_menu_icon_font_size',
],
[
'name' => '--flyout_menu_icon_font_size_px',
'callback' => [ 'units_to_px' ],
],
],
],
'flyout_nav_icons_padding' => [
'label' => esc_html__( 'Flyout Menu Icon Padding', 'Avada' ),
'description' => esc_html__( 'Controls the right padding for flyout menu icons (left on RTL).', 'Avada' ),
'id' => 'flyout_nav_icons_padding',
'default' => '32',
'type' => 'slider',
'class' => 'fusion-gutter-and-or',
'choices' => [
'min' => '0',
'max' => '200',
'step' => '1',
],
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--flyout_nav_icons_padding',
'element' => '.fusion-flyout-menu-icons',
'value_pattern' => '$px',
],
],
],
'flyout_menu_icon_color' => [
'label' => esc_html__( 'Flyout Menu Icon Color', 'Avada' ),
'description' => esc_html__( 'Controls the color of the flyout menu icons.', 'Avada' ),
'id' => 'flyout_menu_icon_color',
'default' => '#212934',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-or',
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--flyout_menu_icon_color',
'element' => '.fusion-flyout-menu-icons',
'callback' => [ 'sanitize_color' ],
],
],
],
'flyout_menu_icon_hover_color' => [
'label' => esc_html__( 'Flyout Menu Icon Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the hover color of the flyout menu icons.', 'Avada' ),
'id' => 'flyout_menu_icon_hover_color',
'default' => '#65bc7b',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-or',
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--flyout_menu_icon_hover_color',
'element' => '.fusion-flyout-menu-icons',
'callback' => [ 'sanitize_color' ],
],
],
],
'flyout_menu_background_color' => [
'label' => esc_html__( 'Flyout Menu Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the flyout menu', 'Avada' ),
'id' => 'flyout_menu_background_color',
'default' => 'rgba(255,255,255,0.96)',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-or',
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--flyout_menu_background_color',
'element' => '.fusion-flyout-menu-bg',
'callback' => [ 'sanitize_color' ],
],
],
],
'flyout_menu_direction' => [
'label' => esc_html__( 'Flyout Menu Direction', 'Avada' ),
'description' => esc_html__( 'Controls the direction the flyout menu starts from.', 'Avada' ),
'id' => 'flyout_menu_direction',
'default' => 'fade',
'type' => 'select',
'class' => 'fusion-gutter-and-or',
'choices' => [
'fade' => esc_html__( 'Fade', 'Avada' ),
'left' => esc_html__( 'Left', 'Avada' ),
'right' => esc_html__( 'Right', 'Avada' ),
'bottom' => esc_html__( 'Bottom', 'Avada' ),
'top' => esc_html__( 'Top', 'Avada' ),
],
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'output' => [
[
'element' => '.fusion-logo-alignment',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'avada-flyout-menu-direction-$',
'remove_attrs' => [ 'avada-flyout-menu-direction-fade', 'avada-flyout-menu-direction-left', 'avada-flyout-menu-direction-right', 'avada-flyout-menu-direction-bottom', 'avada-flyout-menu-direction-top' ],
],
],
],
'flyout_menu_item_padding' => [
'label' => esc_html__( 'Flyout Menu Item Padding', 'Avada' ),
'description' => esc_html__( 'Controls the padding between flyout menu items.', 'Avada' ),
'id' => 'flyout_menu_item_padding',
'default' => '32',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '100',
'step' => '1',
],
'class' => 'fusion-gutter-and-or',
'required' => [
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--flyout_menu_item_padding',
'element' => '.fusion-flyout-menu',
'value_pattern' => '$px',
],
],
],
],
],
'heading_secondary_top_menu' => [
'label' => esc_html__( 'Secondary Top Menu', 'Avada' ),
'id' => 'heading_secondary_top_menu',
'priority' => 6,
'type' => 'sub-section',
'hidden' => $has_global_header,
'fields' => [
'no_secondary_menu_note' => ( '0' === Avada()->settings->get( 'dependencies_status' ) ) ? [] : [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Secondary Top Menu Options are only available when using Header Layouts #2-5. Your current Header Layout does not utilize the secondary top menu.', 'Avada' ) . '
',
'id' => 'no_secondary_menu_note',
'type' => 'custom',
'required' => [
[
'setting' => 'header_position',
'operator' => '==',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v5',
],
],
],
'topmenu_dropwdown_width' => [
'label' => esc_html__( 'Secondary Menu Dropdown Width', 'Avada' ),
'description' => esc_html__( 'Controls the width of the secondary menu dropdown.', 'Avada' ),
'id' => 'topmenu_dropwdown_width',
'default' => '200',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '500',
'step' => '1',
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--topmenu_dropwdown_width',
'element' => '.fusion-secondary-menu',
'value_pattern' => '$px',
],
],
],
'header_top_first_border_color' => [
'label' => esc_html__( 'Secondary Menu Divider Color', 'Avada' ),
'description' => esc_html__( 'Controls the divider color of the first level secondary menu.', 'Avada' ),
'id' => 'header_top_first_border_color',
'default' => 'rgba(0,0,0,0.06)',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--header_top_first_border_color',
'element' => '.fusion-secondary-menu',
'callback' => [ 'sanitize_color' ],
],
],
],
'header_top_sub_bg_color' => [
'label' => esc_html__( 'Secondary Menu Dropdown Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the secondary menu dropdown.', 'Avada' ),
'id' => 'header_top_sub_bg_color',
'default' => '#ffffff',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--header_top_sub_bg_color',
'element' => '.fusion-secondary-menu',
'callback' => [ 'sanitize_color' ],
],
],
],
'header_top_menu_bg_hover_color' => [
'label' => esc_html__( 'Secondary Menu Dropdown Background Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the background hover color of the secondary menu dropdown.', 'Avada' ),
'id' => 'header_top_menu_bg_hover_color',
'default' => '#f9f9fb',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--header_top_menu_bg_hover_color',
'element' => '.fusion-secondary-menu',
'callback' => [ 'sanitize_color' ],
],
],
],
'header_top_menu_sub_sep_color' => [
'label' => esc_html__( 'Secondary Menu Dropdown Separator Color', 'Avada' ),
'description' => esc_html__( 'Controls the color of the separators in the secondary menu dropdown.', 'Avada' ),
'id' => 'header_top_menu_sub_sep_color',
'default' => '#e2e2e2',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--header_top_menu_sub_sep_color',
'element' => '.fusion-secondary-menu',
'callback' => [ 'sanitize_color' ],
],
],
],
'secondary_menu_typography_info' => [
'label' => esc_html__( 'Secondary Top Menu Typography', 'Avada' ),
'id' => 'secondary_menu_typography_info',
'type' => 'info',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
],
'snav_font_size' => [
'label' => esc_html__( 'Secondary Menu Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for secondary menu text.', 'Avada' ),
'id' => 'snav_font_size',
'default' => '12px',
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--snav_font_size',
],
],
],
'sec_menu_lh' => [
'label' => esc_html__( 'Secondary Menu Line Height', 'Avada' ),
'description' => esc_html__( 'Controls the line height for secondary menu.', 'Avada' ),
'id' => 'sec_menu_lh',
'default' => '48px',
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--sec_menu_lh',
],
[
'name' => '--top-bar-height',
'element' => '.fusion-header',
'callback' => [
'conditional_return_value',
[
'value_pattern' => [ 'calc($ / 2)', '21.5px' ],
'conditions' => [
[ 'sec_menu_lh', '>', '43' ],
],
],
],
],
],
],
'snav_color' => [
'label' => esc_html__( 'Secondary Menu Font Color', 'Avada' ),
'description' => esc_html__( 'Controls the color for secondary menu text.', 'Avada' ),
'id' => 'snav_color',
'default' => '#ffffff',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--snav_color',
'element' => '.fusion-secondary-header',
'callback' => [ 'sanitize_color' ],
],
],
],
'header_top_menu_sub_color' => [
'label' => esc_html__( 'Secondary Menu Dropdown Font Color', 'Avada' ),
'description' => esc_html__( 'Controls the color for secondary menu dropdown text.', 'Avada' ),
'id' => 'header_top_menu_sub_color',
'default' => '#4a4e57',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--header_top_menu_sub_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'header_top_menu_sub_hover_color' => [
'label' => esc_html__( 'Secondary Menu Dropdown Font Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the hover color for secondary menu dropdown text.', 'Avada' ),
'id' => 'header_top_menu_sub_hover_color',
'default' => '#65bc7b',
'type' => 'color-alpha',
'class' => 'fusion-or-gutter',
'required' => [
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v2',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v3',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v4',
],
[
'setting' => 'header_layout',
'operator' => '=',
'value' => 'v5',
],
],
'css_vars' => [
[
'name' => '--header_top_menu_sub_hover_color',
'element' => '.fusion-secondary-menu',
'callback' => [ 'sanitize_color' ],
],
],
],
],
],
'heading_mobile_menu' => [
'label' => esc_html__( 'Mobile Menu', 'Avada' ),
'id' => 'heading_mobile_menu',
'priority' => 6,
'type' => 'sub-section',
'hidden' => $has_global_header,
'fields' => [
'no_responsive_mode_info_1' => ( '0' === Avada()->settings->get( 'dependencies_status' ) ) ? [] : [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Please enable responsive mode. Mobile menus are only available when you\'re using the responsive mode. To enable it please go to the "Responsive" section and set the "Responsive Design" option to ON.', 'Avada' ) . '
',
'id' => 'no_responsive_mode_info_1',
'type' => 'custom',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '0',
],
],
],
'no_mobile_menu_note' => ( '0' === Avada()->settings->get( 'dependencies_status' ) ) ? [] : [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Because of the design of your Header Layout #6, only a few options are available here. More options are available when using Header Layouts #1-5 or 7. The rest of the options for Header Layout #6 are on the Flyout Menu and Main Menu tab.', 'Avada' ) . '
',
'id' => 'no_mobile_menu_note',
'type' => 'custom',
'required' => [
[
'setting' => 'header_layout',
'operator' => '==',
'value' => 'v6',
],
[
'setting' => 'header_position',
'operator' => '==',
'value' => 'top',
],
],
],
'mobile_menu_design' => [
'label' => esc_html__( 'Mobile Menu Design Style', 'Avada' ),
'description' => esc_html__( 'Controls the design of the mobile menu. Flyout design style only allows parent level menu items.', 'Avada' ),
'id' => 'mobile_menu_design',
'default' => 'classic',
'type' => 'radio-buttonset',
'class' => 'fusion-gutter-and-or-and',
'choices' => [
'classic' => esc_html__( 'Classic', 'Avada' ),
'modern' => esc_html__( 'Modern', 'Avada' ),
'flyout' => esc_html__( 'Flyout', 'Avada' ),
],
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
],
'output' => [
[
'element' => 'body',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'mobile-menu-design-$',
'remove_attrs' => [ 'mobile-menu-design-classic', 'mobile-menu-design-modern', 'mobile-menu-design-flyout' ],
'sanitize_callback' => '__return_empty_string',
],
],
// Partial refresh for the header.
'partial_refresh' => [
'mobile_menu_design_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'mobile_menu_design_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'mobile_menu_design_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'mobile_menu_icons_top_margin' => [
'label' => esc_html__( 'Mobile Menu Icons Top Margin', 'Avada' ),
'description' => esc_html__( 'Controls the top margin for the icons in the modern and flyout mobile menu design.', 'Avada' ),
'id' => 'mobile_menu_icons_top_margin',
'default' => '2',
'type' => 'slider',
'class' => 'fusion-gutter-and-and-or-and-and',
'choices' => [
'min' => '0',
'max' => '200',
'step' => '1',
],
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'classic',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'classic',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_icons_top_margin',
'value_pattern' => '$px',
],
],
],
'mobile_menu_nav_height' => [
'label' => esc_html__( 'Mobile Menu Dropdown Item Height', 'Avada' ),
'description' => esc_html__( 'Controls the height of each dropdown menu item.', 'Avada' ),
'id' => 'mobile_menu_nav_height',
'default' => '42',
'type' => 'slider',
'class' => 'fusion-gutter-and-and-or-and-and',
'choices' => [
'min' => '0',
'max' => '200',
'step' => '1',
],
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_nav_height',
'value_pattern' => '$px',
],
],
],
'mobile_nav_submenu_slideout' => [
'label' => esc_html__( 'Mobile Menu Dropdown Slide Outs', 'Avada' ),
'description' => esc_html__( 'Turn on to allow dropdown sections to slide out when tapped.', 'Avada' ),
'id' => 'mobile_nav_submenu_slideout',
'default' => '1',
'type' => 'switch',
'class' => 'fusion-gutter-and-and-or-and-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'output' => [
// This is for the avadaMenuVars.submenu_slideout var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'globalVar' => 'avadaMenuVars',
'id' => 'submenu_slideout',
'trigger' => [ 'fusionMobileMenu' ],
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'mobile_menu_search' => [
'label' => esc_html__( 'Display Mobile Menu Search Icon/Field', 'Avada' ),
'description' => esc_html__( 'Turn on to display the search icon/field in the mobile menu.', 'Avada' ),
'id' => 'mobile_menu_search',
'default' => '1',
'type' => 'switch',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
],
// Partial refresh for the header.
'partial_refresh' => [
'mobile_menu_search_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'mobile_menu_search_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'mobile_menu_search_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'mobile_menu_submenu_indicator' => [
'label' => esc_html__( 'Mobile Menu Sub-Menu Indicator', 'Avada' ),
'description' => esc_html__( 'Turn on to display the mobile menu sub-menu indicator: "-".', 'Avada' ),
'id' => 'mobile_menu_submenu_indicator',
'default' => '1',
'type' => 'switch',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'false' ],
'element' => '.fusion-mobile-nav-holder',
'className' => 'fusion-mobile-menu-indicator-hide',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'mobile_header_bg_color' => [
'label' => esc_html__( 'Mobile Header Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the header on mobile devices.', 'Avada' ),
'id' => 'mobile_header_bg_color',
'default' => '#ffffff',
'type' => 'color-alpha',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
],
'css_vars' => [
[
'name' => '--mobile_header_bg_color',
'callback' => [ 'sanitize_color' ],
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'not-opaque' ],
'element' => 'html',
'className' => 'avada-mobile-header-color-not-opaque',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
'update_callback' => [
[
'condition' => 'is_archive',
'operator' => '===',
'value' => false,
],
],
],
'mobile_archive_header_bg_color' => [
'label' => esc_html__( 'Mobile Archive Header Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the archive page header on mobile devices.', 'Avada' ),
'id' => 'mobile_archive_header_bg_color',
'type' => 'color-alpha',
'default' => '#ffffff',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
],
'css_vars' => [
[
'name' => '--mobile_header_bg_color',
'callback' => [ 'sanitize_color' ],
],
],
'update_callback' => [
[
'condition' => 'is_archive',
'operator' => '===',
'value' => true,
],
],
],
'mobile_menu_background_color' => [
'label' => esc_html__( 'Mobile Menu Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the mobile menu dropdown and classic mobile menu box.', 'Avada' ),
'id' => 'mobile_menu_background_color',
'default' => '#ffffff',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-and-or-and-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_background_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'mobile_menu_hover_color' => [
'label' => esc_html__( 'Mobile Menu Background Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the background hover color of the mobile menu dropdown.', 'Avada' ),
'id' => 'mobile_menu_hover_color',
'default' => '#f9f9fb',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-and-or-and-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_hover_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'mobile_menu_border_color' => [
'label' => esc_html__( 'Mobile Menu Border Color', 'Avada' ),
'description' => esc_html__( 'Controls the border and divider colors of the mobile menu dropdown and classic mobile menu box.', 'Avada' ),
'id' => 'mobile_menu_border_color',
'default' => '#e2e2e2',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-and-or-and-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_border_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'mobile_menu_toggle_color' => [
'label' => esc_html__( 'Mobile Menu Toggle Color', 'Avada' ),
'description' => esc_html__( 'Controls the color of the mobile menu toggle icon.', 'Avada' ),
'id' => 'mobile_menu_toggle_color',
'default' => '#9ea0a4',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-and-or-and-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_toggle_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'mobile_menu_typography_info' => [
'label' => esc_html__( 'Mobile Menu Typography', 'Avada' ),
'description' => '',
'id' => 'mobile_menu_typography_info',
'type' => 'info',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
],
],
'mobile_menu_typography' => [
'id' => 'mobile_menu_typography',
'label' => esc_html__( 'Mobile Menu Typography', 'Avada' ),
'description' => esc_html__( 'These settings control the typography for mobile menu.', 'Avada' ),
'type' => 'typography',
'class' => 'fusion-gutter-and-or-and',
'choices' => [
'font-family' => true,
'font-size' => true,
'font-weight' => true,
'line-height' => true,
'letter-spacing' => true,
'color' => true,
],
'default' => [
'font-family' => 'Open Sans',
'font-size' => '12px',
'font-weight' => '400',
'line-height' => '42px',
'letter-spacing' => '0',
'color' => '#4a4e57',
],
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_typography-font-family',
'choice' => 'font-family',
'callback' => [ 'combined_font_family', 'mobile_menu_typography' ],
],
[
'name' => '--mobile_menu_typography-font-size',
'choice' => 'font-size',
],
[
'name' => '--mobile_menu_typography-font-weight',
'choice' => 'font-weight',
'callback' => [ 'font_weight_no_regular', '' ],
],
[
'name' => '--mobile_menu_typography-line-height',
'choice' => 'line-height',
],
[
'name' => '--mobile_menu_typography-letter-spacing',
'choice' => 'letter-spacing',
'callback' => [ 'maybe_append_px', '' ],
],
[
'name' => '--mobile_menu_typography-color',
'choice' => 'color',
],
[
'name' => '--mobile_menu_typography-font-style',
'choice' => 'font-style',
],
[
'name' => '--mobile_menu_typography-font-weight',
'choice' => 'font-weight',
],
[
'name' => '--mobile_menu_typography-font-size-30-or-24px',
'choice' => 'font-size',
'callback' => [
'conditional_return_value',
[
'value_pattern' => [ '30px', '24px' ],
'conditions' => [
[ 'mobile_menu_typography[font-size]', '>', '35' ],
],
],
],
],
[
'name' => '--mobile_menu_typography-font-size-open-submenu',
'choice' => 'font-size',
'callback' => [
'conditional_return_value',
[
'value_pattern' => [ '20px', 'var(--mobile_menu_typography-font-size, 13px)' ],
'conditions' => [
[ 'mobile_menu_typography[font-size]', '>', '30' ],
],
],
],
],
],
],
'mobile_menu_font_hover_color' => [
'label' => esc_html__( 'Mobile Menu Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the hover color of the mobile menu item. Also, used to highlight current mobile menu item.', 'Avada' ),
'id' => 'mobile_menu_font_hover_color',
'default' => '#212934',
'type' => 'color-alpha',
'class' => 'fusion-gutter-and-or-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
],
'css_vars' => [
[
'name' => '--mobile_menu_font_hover_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'mobile_menu_text_align' => [
'label' => esc_html__( 'Mobile Menu Text Align', 'Avada' ),
'description' => esc_html__( 'Controls the mobile menu text alignment.', 'Avada' ),
'id' => 'mobile_menu_text_align',
'default' => 'left',
'choices' => [
'left' => esc_html__( 'Left', 'Avada' ),
'center' => esc_html__( 'Center', 'Avada' ),
'right' => esc_html__( 'Right', 'Avada' ),
],
'type' => 'radio-buttonset',
'class' => 'fusion-gutter-and-and-or-and-and',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_position',
'operator' => '!=',
'value' => 'top',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'mobile_menu_design',
'operator' => '!=',
'value' => 'flyout',
],
],
'output' => [
( class_exists( 'SitePress' ) ) ? [
'element' => [ '.fusion-mobile-nav-holder .wpml-ls-item .menu-text', '.wpml-ls-item .menu-text, .wpml-ls-item .sub-menu a > span', '.fusion-mobile-nav-holder .wpml-ls-item > a' ],
'property' => 'justify-content',
'value_pattern' => 'center',
'exclude' => [ 'left', 'right' ],
'media_query' => 'fusion-max-sh-shbp',
] : [],
( class_exists( 'SitePress' ) ) ? [
'element' => [ '.fusion-mobile-nav-holder .wpml-ls-item .menu-text', '.wpml-ls-item .menu-text, .wpml-ls-item .sub-menu a > span', '.fusion-mobile-nav-holder .wpml-ls-item > a' ],
'property' => 'justify-content',
'value_pattern' => ( is_rtl() ) ? 'flex-end' : 'flex-start',
'exclude' => [ 'center', 'right' ],
'media_query' => 'fusion-max-sh-shbp',
] : [],
( class_exists( 'SitePress' ) ) ? [
'element' => [ '.fusion-mobile-nav-holder .wpml-ls-item .menu-text', '.wpml-ls-item .menu-text, .wpml-ls-item .sub-menu a > span', '.fusion-mobile-nav-holder .wpml-ls-item > a' ],
'property' => 'justify-content',
'value_pattern' => ( is_rtl() ) ? 'flex-start' : 'flex-end',
'exclude' => [ 'left', 'center' ],
'media_query' => 'fusion-max-sh-shbp',
] : [],
[
'element' => 'nav.fusion-mobile-nav-holder',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'fusion-mobile-menu-text-align-$',
'remove_attrs' => [ 'fusion-mobile-menu-text-align-left', 'fusion-mobile-menu-text-align-center', 'fusion-mobile-menu-text-align-right' ],
'callback' => [
'conditional_return_value',
[
'conditions' => [
[ 'mobile_menu_design', '!==', 'flyout' ],
],
],
],
],
],
],
],
],
'mega_menu_subsection' => [
'label' => esc_html__( 'Mega Menu', 'Avada' ),
'id' => 'mega_menu_subsection',
'type' => 'sub-section',
'fields' => [
'header_v6_used_note' => ( '0' === Avada()->settings->get( 'dependencies_status' ) ) ? [] : [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Mega Menu Options are only available when using Header Layouts #1-5. Your current Header Layout #6 does not utilize the mega menu.', 'Avada' ) . '
',
'id' => 'header_v6_used_note',
'type' => 'custom',
'required' => [
[
'setting' => 'header_layout',
'operator' => '==',
'value' => 'v6',
],
],
],
'megamenu_disabled_note' => ( '0' === Avada()->settings->get( 'dependencies_status' ) ) ? [] : [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Mega Menu is disabled in Advanced > Theme Features section. Please enable it to see the options.', 'Avada' ) . '
',
'id' => 'megamenu_disabled_note',
'type' => 'custom',
'required' => [
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '0',
],
],
],
'megamenu_width' => [
'label' => esc_html__( 'Mega Menu Wrapper Max Width', 'Avada' ),
'description' => esc_html__( 'Controls the max width of the mega menu. On boxed side header layouts, "Viewport Width" will match "Site Width".', 'Avada' ),
'id' => 'megamenu_width',
'type' => 'radio-buttonset',
'default' => 'site_width',
'choices' => [
'site_width' => esc_html__( 'Site Width', 'Avada' ),
'viewport_width' => esc_html__( '100% Width', 'Avada' ),
'custom_width' => esc_html__( 'Custom Width', 'Avada' ),
],
'required' => [
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '1',
],
],
'output' => [
// This is for the avadaMenuVars.megamenu_base_width var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'globalVar' => 'avadaMenuVars',
'id' => 'megamenu_base_width',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
// See https://github.com/Theme-Fusion/Fusion-Builder/issues/4785.
'transport' => 'refresh',
// Partial refresh for the header.
'partial_refresh' => [
'megamenu_width_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'megamenu_width_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'mmegamenu_width_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'megamenu_max_width' => [
'label' => esc_html__( 'Mega Menu Max-Width', 'Avada' ),
'description' => esc_html__( 'Controls the max width of the mega menu.', 'Avada' ),
'id' => 'megamenu_max_width',
'default' => '1200',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '4096',
'step' => '1',
],
'required' => [
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '1',
],
[
'setting' => 'megamenu_width',
'operator' => '=',
'value' => 'custom_width',
],
],
// Partial refresh for the header.
'partial_refresh' => [
'megamenu_max_width_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'megamenu_max_width_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'megamenu_max_width_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'megamenu_interior_content_width' => [
'label' => esc_html__( 'Mega Menu Interior Content Width', 'Avada' ),
'description' => esc_html__( 'For full width mega menus select if the interior menu content is contained to site width or 100% width.', 'Avada' ),
'id' => 'megamenu_interior_content_width',
'type' => 'radio-buttonset',
'default' => 'viewport_width',
'choices' => [
'site_width' => esc_html__( 'Site Width', 'Avada' ),
'viewport_width' => esc_html__( '100% Width', 'Avada' ),
],
'required' => [
[
'setting' => 'header_position',
'operator' => '=',
'value' => 'top',
],
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '1',
],
[
'setting' => 'megamenu_width',
'operator' => '=',
'value' => 'viewport_width',
],
],
// Partial refresh for the header.
'partial_refresh' => [
'megamenu_width_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'megamenu_width_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'mmegamenu_width_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'megamenu_title_size' => [
'label' => esc_html__( 'Mega Menu Column Title Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for mega menu column titles.', 'Avada' ),
'id' => 'megamenu_title_size',
'default' => '18px',
'hidden' => $has_global_header,
'type' => 'dimension',
'required' => [
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '1',
],
],
'css_vars' => [
[
'name' => '--megamenu_title_size',
'element' => '.fusion-megamenu-title',
],
],
],
'megamenu_item_vertical_padding' => [
'label' => esc_html__( 'Mega Menu Dropdown Item Padding', 'Avada' ),
'description' => esc_html__( 'Controls the top/bottom padding for mega menu dropdown items.', 'Avada' ),
'id' => 'megamenu_item_vertical_padding',
'default' => '7',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '50',
'step' => '1',
],
'required' => [
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '1',
],
],
'css_vars' => [
[
'name' => '--megamenu_item_vertical_padding',
'element' => '.fusion-megamenu-submenu',
'value_pattern' => '$px',
],
],
],
'megamenu_item_display_divider' => [
'label' => esc_html__( 'Mega Menu Item Divider', 'Avada' ),
'description' => esc_html__( 'Turn on to display a divider between mega menu dropdown items.', 'Avada' ),
'id' => 'megamenu_item_display_divider',
'default' => '0',
'type' => 'switch',
'required' => [
[
'setting' => 'header_layout',
'operator' => '!=',
'value' => 'v6',
],
[
'setting' => 'disable_megamenu',
'operator' => '=',
'value' => '1',
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-megamenu-item-divider',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
],
],
'menu_icons_subsection' => [
'label' => esc_html__( 'Main Menu Icons', 'Avada' ),
'id' => 'menu_icons_subsection',
'type' => 'sub-section',
'hidden' => $has_global_header,
'fields' => [
'menu_icons_note' => [
'label' => '',
'description' => '' . __( 'IMPORTANT NOTE: Icons are available for both the main and dropdown menus. However, the options below only apply to the main menu. Dropdown menu icons do not use these options below, they follow the dropdown font size and color. The icons themselves can be added to your menu items in the Appearance > Menus section.', 'Avada' ) . '
',
'id' => 'menu_icons_note',
'type' => 'custom',
],
'menu_icon_position' => [
'label' => esc_html__( 'Main Menu Icon Position', 'Avada' ),
'description' => esc_html__( 'Controls the main menu icon position.', 'Avada' ),
'id' => 'menu_icon_position',
'default' => 'left',
'choices' => [
'top' => esc_html__( 'Top', 'Avada' ),
'right' => esc_html__( 'Right', 'Avada' ),
'bottom' => esc_html__( 'Bottom', 'Avada' ),
'left' => esc_html__( 'Left', 'Avada' ),
],
'type' => 'radio-buttonset',
'output' => [
[
'element' => 'body',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'avada-menu-icon-position-$',
'remove_attrs' => [ 'avada-menu-icon-position-top', 'avada-menu-icon-position-right', 'avada-menu-icon-position-bottom', 'avada-menu-icon-position-left' ],
],
],
// Partial refresh for the header.
'partial_refresh' => [
'menu_icon_position_header_remove_before_hook' => [
'selector' => '.avada-hook-before-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'menu_icon_position_header_remove_after_hook' => [
'selector' => '.avada-hook-after-header-wrapper',
'container_inclusive' => true,
'render_callback' => '__return_null',
],
'menu_icon_position_header' => [
'selector' => '.fusion-header-wrapper',
'container_inclusive' => true,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'header' ],
'success_trigger_event' => 'header-rendered',
],
],
],
'menu_icon_size' => [
'label' => esc_html__( 'Main Menu Icon Size', 'Avada' ),
'description' => esc_html__( 'Controls the size of the top-level menu icons.', 'Avada' ),
'id' => 'menu_icon_size',
'default' => '14',
'type' => 'slider',
'choices' => [
'min' => '0',
'max' => '100',
'step' => '1',
],
'css_vars' => [
[
'name' => '--menu_icon_size',
'value_pattern' => '$px',
],
],
],
'menu_icon_color' => [
'label' => esc_html__( 'Main Menu Icon Color', 'Avada' ),
'description' => esc_html__( 'Controls the color of the top-level main menu icons.', 'Avada' ),
'id' => 'menu_icon_color',
'default' => '#212934',
'type' => 'color-alpha',
'css_vars' => [
[
'name' => '--menu_icon_color',
'element' => '.fusion-megamenu-icon',
'callback' => [ 'sanitize_color' ],
],
],
],
'menu_icon_hover_color' => [
'label' => esc_html__( 'Main Menu Icon Hover Color', 'Avada' ),
'description' => esc_html__( 'Controls the hover color of the top-level main menu icons.', 'Avada' ),
'id' => 'menu_icon_hover_color',
'default' => '#65bc7b',
'type' => 'color-alpha',
'css_vars' => [
[
'name' => '--menu_icon_hover_color',
'element' => '.fusion-megamenu-icon',
'callback' => [ 'sanitize_color' ],
],
],
],
'menu_thumbnail_size' => [
'label' => esc_html__( 'Mega Menu Thumbnail Size', 'Avada' ),
'description' => esc_html__( 'Controls the width and height of the top-level mega menu thumbnails. Use "auto" for automatic resizing if you added either width or height.', 'Avada' ),
'id' => 'menu_thumbnail_size',
'units' => false,
'default' => [
'width' => '26px',
'height' => '14px',
],
'type' => 'dimensions',
'required' => [
[
'setting' => 'disable_megamenu',
'operator' => '==',
'value' => '1',
],
],
'css_vars' => [
[
'name' => '--menu_thumbnail_size-width',
'choice' => 'width',
'element' => '.fusion-main-menu',
],
[
'name' => '--menu_thumbnail_size-height',
'choice' => 'height',
'element' => '.fusion-main-menu',
],
],
],
],
],
];
$sections['menu']['fields'] = array_merge( $sections['menu']['fields'], $fields );
return $sections;
}
/**
* Avada Options.
*
* @author ThemeFusion
* @copyright (c) Copyright by ThemeFusion
* @link https://theme-fusion.com
* @package Avada
* @subpackage Core
* @since 4.0.0
*/
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
exit( 'Direct script access denied.' );
}
/**
* Page Title Bar
*
* @param array $sections An array of our sections.
* @return array
*/
function avada_options_section_page_title_bar( $sections ) {
// Check if we have a global PTB override.
$has_global_ptb = false;
if ( class_exists( 'Fusion_Template_Builder' ) ) {
$default_layout = Fusion_Template_Builder::get_default_layout();
$has_global_ptb = isset( $default_layout['data']['template_terms'] ) && isset( $default_layout['data']['template_terms']['page_title_bar'] ) && $default_layout['data']['template_terms']['page_title_bar'];
}
$sections['page_title_bar'] = [
'label' => esc_html__( 'Page Title Bar', 'Avada' ),
'id' => 'heading_page_title_bar',
'priority' => 7,
'icon' => 'el-icon-adjust-alt',
'alt_icon' => 'fusiona-page_title',
'fields' => [
'page_title_bar_template_notice' => class_exists( 'Fusion_Template_Builder' ) ? [
'id' => 'page_title_bar_template_notice',
'label' => '',
'description' => sprintf(
/* translators: 1: Content|Footer|Page Title Bar. 2: URL. */
'' . __( '
IMPORTANT NOTE: The options on this tab are not available because a global %1$s override is currently used. To edit your global layout please visit
this page .', 'Avada' ) . '
',
Fusion_Template_Builder::get_instance()->get_template_terms()['page_title_bar']['label'],
admin_url( 'admin.php?page=avada-layouts' )
),
'hidden' => ! $has_global_ptb,
'type' => 'custom',
] : [],
'page_title_bar' => [
'label' => esc_html__( 'Page Title Bar', 'Avada' ),
'description' => esc_html__( 'Controls how the page title bar displays.', 'Avada' ),
'id' => 'page_title_bar',
'default' => 'bar_and_content',
'hidden' => $has_global_ptb,
'choices' => [
'bar_and_content' => esc_html__( 'Show Bar and Content', 'Avada' ),
'content_only' => esc_html__( 'Show Content Only', 'Avada' ),
'hide' => esc_html__( 'Hide', 'Avada' ),
],
'type' => 'select',
'partial_refresh' => [
'page_title_bar_contents_page_title_bar' => [
'selector' => '.avada-page-titlebar-wrapper',
'container_inclusive' => false,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'page_titlebar_wrapper' ],
'success_trigger_event' => 'fusion-ptb-refreshed',
'skip_for_template' => [ 'page_title_bar' ],
],
],
'output' => [
// Change classes in .
[
'element' => 'body',
'function' => 'attr',
'attr' => 'class',
'value_pattern' => 'avada-has-titlebar-$',
'remove_attrs' => [ 'avada-has-titlebar-hide', 'avada-has-titlebar-bar_and_content', 'avada-has-titlebar-content_only' ],
],
],
],
'page_title_bar_bs' => [
'label' => esc_html__( 'Breadcrumbs / Search Bar Content Display', 'Avada' ),
'description' => esc_html__( 'Controls what displays in the breadcrumbs area. ', 'Avada' ),
'id' => 'page_title_bar_bs',
'default' => 'breadcrumbs',
'hidden' => $has_global_ptb,
'type' => 'radio-buttonset',
'choices' => [
'none' => esc_html__( 'None', 'Avada' ),
'breadcrumbs' => esc_html__( 'Breadcrumbs', 'Avada' ),
'search_box' => esc_html__( 'Search Bar', 'Avada' ),
],
'soft_dependency' => true,
'partial_refresh' => [
'page_title_bar_contents_breadcrumb_show_post_type_archive' => [
'selector' => '.avada-page-titlebar-wrapper',
'container_inclusive' => false,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'page_titlebar_wrapper' ],
'success_trigger_event' => 'fusion-ptb-refreshed',
'skip_for_template' => [ 'page_title_bar' ],
],
],
],
'page_title_bar_text' => [
'label' => esc_html__( 'Page Title Bar Headings', 'Avada' ),
'description' => esc_html__( 'Turn on to display the page title bar headings.', 'Avada' ),
'id' => 'page_title_bar_text',
'default' => '1',
'hidden' => $has_global_ptb,
'type' => 'switch',
'soft_dependency' => true,
'partial_refresh' => [
'page_title_bar_contents_page_title_bar_text' => [
'selector' => '.avada-page-titlebar-wrapper',
'container_inclusive' => false,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'page_titlebar_wrapper' ],
'success_trigger_event' => 'fusion-ptb-refreshed',
'skip_for_template' => [ 'page_title_bar' ],
],
],
],
'page_title_bar_styling_title' => [
'label' => esc_html__( 'Page Title Bar Styling', 'Avada' ),
'description' => '',
'id' => 'page_title_bar_styling_title',
'hidden' => $has_global_ptb,
'icon' => true,
'type' => 'info',
],
'page_title_100_width' => [
'label' => esc_html__( 'Page Title Bar 100% Width', 'Avada' ),
'description' => esc_html__( 'Turn on to have the page title bar area display at 100% width according to the viewport size. Turn off to follow site width.', 'Avada' ),
'id' => 'page_title_100_width',
'default' => '0',
'hidden' => $has_global_ptb,
'type' => 'switch',
'soft_dependency' => true,
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-pagetitle-100-width',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'page_title_height' => [
'label' => esc_html__( 'Page Title Bar Height', 'Avada' ),
'description' => esc_html__( 'Controls the height of the page title bar on desktop.', 'Avada' ),
'id' => 'page_title_height',
'default' => '300px',
'hidden' => $has_global_ptb,
'type' => 'dimension',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_height',
'element' => '.fusion-page-title-bar',
],
],
],
'page_title_mobile_height' => [
'label' => esc_html__( 'Page Title Bar Mobile Height', 'Avada' ),
'description' => esc_html__( 'Controls the height of the page title bar on mobile.', 'Avada' ),
'id' => 'page_title_mobile_height',
'default' => '240px',
'hidden' => $has_global_ptb,
'type' => 'dimension',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_mobile_height',
'element' => '.fusion-page-title-bar',
'callback' => [
'convert_font_size_to_px',
[
'setting' => 'page_title_font_size',
'addUnits' => true,
],
],
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ 'auto', '===' ],
'element' => 'body',
'className' => 'avada-has-page-title-mobile-height-auto',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'page_title_bg_color' => [
'label' => esc_html__( 'Page Title Bar Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the page title bar.', 'Avada' ),
'id' => 'page_title_bg_color',
'default' => '#f2f3f5',
'hidden' => $has_global_ptb,
'type' => 'color-alpha',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_bg_color',
'element' => '.fusion-page-title-bar',
'callback' => [ 'sanitize_color' ],
],
],
],
'page_title_border_color' => [
'label' => esc_html__( 'Page Title Bar Borders Color', 'Avada' ),
'description' => esc_html__( 'Controls the border colors of the page title bar.', 'Avada' ),
'id' => 'page_title_border_color',
'default' => 'rgba(226,226,226,0)',
'hidden' => $has_global_ptb,
'type' => 'color-alpha',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_border_color',
'element' => '.fusion-page-title-bar',
'callback' => [ 'sanitize_color' ],
],
],
'output' => [
[
'element' => '.fusion-page-title-bar',
'property' => 'border',
'js_callback' => [
'fusionReturnStringIfTransparent',
[
'transparent' => 'none',
'opaque' => '',
],
],
'sanitize_callback' => [ 'Avada_Output_Callbacks', 'page_title_border_color' ],
],
],
],
'page_title_font_size' => [
'label' => esc_html__( 'Page Title Bar Heading Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for the page title bar main heading.', 'Avada' ),
'id' => 'page_title_font_size',
'default' => '54px',
'hidden' => $has_global_ptb,
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_font_size',
'element' => '.fusion-page-title-bar',
],
],
],
'page_title_line_height' => [
'label' => esc_html__( 'Page Title Bar Heading Line Height', 'Avada' ),
'description' => esc_html__( 'Controls the line height for the page title bar main heading.', 'Avada' ),
'id' => 'page_title_line_height',
'default' => 'normal',
'hidden' => $has_global_ptb,
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_line_height',
'element' => '.fusion-page-title-bar',
],
],
],
'page_title_color' => [
'label' => esc_html__( 'Page Title Bar Heading Font Color', 'Avada' ),
'description' => esc_html__( 'Controls the text color of the page title bar main heading.', 'Avada' ),
'id' => 'page_title_color',
'default' => '#212934',
'hidden' => $has_global_ptb,
'type' => 'color-alpha',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_color',
'element' => '.fusion-page-title-bar',
'callback' => [ 'sanitize_color' ],
],
],
],
'page_title_subheader_font_size' => [
'label' => esc_html__( 'Page Title Bar Subheading Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size for the page titlebar subheading.', 'Avada' ),
'id' => 'page_title_subheader_font_size',
'default' => '18px',
'hidden' => $has_global_ptb,
'type' => 'dimension',
'choices' => [
'units' => [ 'px', 'em' ],
],
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_subheader_font_size',
'element' => '.fusion-page-title-bar',
],
],
],
'page_title_subheader_color' => [
'label' => esc_html__( 'Page Title Bar Subheading Font Color', 'Avada' ),
'description' => esc_html__( 'Controls the text color of the page title bar subheading.', 'Avada' ),
'id' => 'page_title_subheader_color',
'default' => '#4a4e57',
'hidden' => $has_global_ptb,
'type' => 'color-alpha',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_subheader_color',
'element' => '.fusion-page-title-bar',
'callback' => [ 'sanitize_color' ],
],
],
],
'page_title_alignment' => [
'label' => esc_html__( 'Page Title Bar Text Alignment', 'Avada' ),
'description' => esc_html__( 'Choose the title and subhead text alignment. Breadcrumbs / search field will be on opposite side for left / right alignment and below the title for center alignment.', 'Avada' ),
'id' => 'page_title_alignment',
'default' => 'center',
'hidden' => $has_global_ptb,
'type' => 'radio-buttonset',
'choices' => [
'left' => esc_html__( 'Left', 'Avada' ),
'center' => esc_html__( 'Center', 'Avada' ),
'right' => esc_html__( 'Right', 'Avada' ),
],
'soft_dependency' => true,
'partial_refresh' => [
'page_title_bar_contents_page_title_alignment' => [
'selector' => '.avada-page-titlebar-wrapper',
'container_inclusive' => false,
'render_callback' => [ 'Avada_Partial_Refresh_Callbacks', 'page_titlebar_wrapper' ],
'success_trigger_event' => 'fusion-ptb-refreshed',
'skip_for_template' => [ 'page_title_bar' ],
],
],
],
'page_title_bar_bg_image_title' => [
'label' => esc_html__( 'Page Title Bar Background Image', 'Avada' ),
'description' => '',
'id' => 'page_title_bar_bg_image_title',
'icon' => true,
'hidden' => $has_global_ptb,
'type' => 'info',
],
'page_title_bg' => [
'label' => esc_html__( 'Page Title Bar Background Image', 'Avada' ),
'description' => esc_html__( 'Select an image for the page title bar background. If left empty, the page title bar background color will be used.', 'Avada' ),
'id' => 'page_title_bg',
'default' => '',
'hidden' => $has_global_ptb,
'mod' => '',
'type' => 'media',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_bg',
'element' => '.fusion-page-title-bar',
'choice' => 'url',
'callback' => [ 'fallback_to_value', [ 'url("$")', 'none' ] ],
],
],
],
'page_title_bg_retina' => [
'label' => esc_html__( 'Retina Page Title Bar Background Image', 'Avada' ),
'description' => esc_html__( 'Select an image for the retina version of the page title bar background. It should be exactly 2x the size of the page title bar background.', 'Avada' ),
'id' => 'page_title_bg_retina',
'default' => '',
'hidden' => $has_global_ptb,
'mod' => '',
'type' => 'media',
'soft_dependency' => true,
'css_vars' => [
[
'name' => '--page_title_bg_retina',
'element' => '.fusion-page-title-bar',
'choice' => 'url',
'callback' => [ 'fallback_to_value', [ 'url("$")', 'var(--page_title_bg)' ] ],
],
],
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'has-image' ],
'element' => 'html',
'className' => 'avada-has-pagetitlebar-retina-bg-image',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'page_title_bg_full' => [
'label' => esc_html__( '100% Background Image', 'Avada' ),
'description' => esc_html__( 'Turn on to have the page title bar background image display at 100% in width and height according to the window size.', 'Avada' ),
'id' => 'page_title_bg_full',
'default' => '0',
'hidden' => $has_global_ptb,
'type' => 'switch',
'soft_dependency' => true,
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-pagetitle-bg-full',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'page_title_bg_parallax' => [
'label' => esc_html__( 'Parallax Background Image', 'Avada' ),
'description' => esc_html__( 'Turn on to use a parallax scrolling effect on the background image.', 'Avada' ),
'id' => 'page_title_bg_parallax',
'default' => '0',
'hidden' => $has_global_ptb,
'type' => 'switch',
'soft_dependency' => true,
'output' => [
[
'element' => 'helperElement',
'property' => 'dummy',
'callback' => [
'toggle_class',
[
'condition' => [ '', 'true' ],
'element' => 'body',
'className' => 'avada-has-pagetitle-bg-parallax',
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
'page_title_fading' => [
'label' => esc_html__( 'Fading Animation', 'Avada' ),
'description' => esc_html__( 'Turn on to have the page title text fade on scroll.', 'Avada' ),
'id' => 'page_title_fading',
'default' => '0',
'hidden' => $has_global_ptb,
'type' => 'switch',
'soft_dependency' => true,
'output' => [
// This is for the avadaFadeVars.page_title_fading var.
[
'element' => 'helperElement',
'property' => 'bottom',
'js_callback' => [
'fusionGlobalScriptSet',
[
'globalVar' => 'avadaFadeVars',
'id' => 'page_title_fading',
'trigger' => [ 'avadaTriggerPageTitleFading' ],
],
],
'sanitize_callback' => '__return_empty_string',
],
],
],
],
];
return $sections;
}
/**
* Avada Options.
*
* @author ThemeFusion
* @copyright (c) Copyright by ThemeFusion
* @link https://theme-fusion.com
* @package Avada
* @subpackage Core
* @since 4.0.0
*/
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
exit( 'Direct script access denied.' );
}
/**
* Sidebar settings
*
* @param array $sections An array of our sections.
* @return array
*/
function avada_options_section_sidebars( $sections ) {
/**
* Register sidebar options for blog/portfolio/woocommerce archive pages.
*/
global $wp_registered_sidebars;
$sidebar_options[] = 'None';
for ( $i = 0; $i < 1; $i++ ) {
$sidebars = $wp_registered_sidebars;
if ( is_array( $sidebars ) && ! empty( $sidebars ) ) {
foreach ( $sidebars as $sidebar ) {
$sidebar_options[] = $sidebar['name'];
}
}
$sidebars = Sidebar_Generator::get_sidebars();
if ( is_array( $sidebars ) && ! empty( $sidebars ) ) {
foreach ( $sidebars as $key => $value ) {
$sidebar_options[] = $value;
}
}
}
$sidebars_array = [];
foreach ( $sidebar_options as $sidebar_option ) {
$sidebars_array[ $sidebar_option ] = $sidebar_option;
}
$sidebar_options = $sidebars_array;
$sidebars_update_callback = [
[
'where' => 'postMeta',
'condition' => '_wp_page_template',
'operator' => '!==',
'value' => '100-width.php',
],
];
$sections['sidebars'] = [
'label' => esc_html__( 'Sidebars', 'Avada' ),
'id' => 'heading_sidebars',
'is_panel' => true,
'priority' => 10,
'icon' => 'el-icon-website',
'alt_icon' => 'fusiona-sidebar',
'fields' => [
'sidebars_styling' => [
'label' => esc_html__( 'Sidebar Styling', 'Avada' ),
'id' => 'sidebars_styling',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'responsive_sidebar_order' => [
'id' => 'responsive_sidebar_order',
'label' => esc_html__( 'Sidebar Responsive Order', 'Avada' ),
'description' => esc_html__( 'Choose the order of sidebars and main content area on mobile layouts through drag & drop sorting.', 'Avada' ),
'type' => 'sortable',
'choices' => [
'content' => esc_html__( 'Content', 'Avada' ),
'sidebar' => esc_html__( 'Sidebar 1', 'Avada' ),
'sidebar-2' => esc_html__( 'Sidebar 2', 'Avada' ),
],
'default' => 'content,sidebar,sidebar-2',
'required' => [
[
'setting' => 'responsive',
'operator' => '==',
'value' => '1',
],
],
'update_callback' => $sidebars_update_callback,
],
'sidebar_sticky' => [
'label' => esc_html__( 'Sticky Sidebars', 'Avada' ),
'description' => esc_html__( 'Select the sidebar(s) that should remain sticky when scrolling the page. If the sidebar content is taller than the screen, it acts like a normal sidebar until the bottom of the sidebar is within the viewport, which will then remain fixed in place as you scroll down.', 'Avada' ),
'id' => 'sidebar_sticky',
'default' => 'none',
'type' => 'radio-buttonset',
'choices' => [
'none' => esc_html__( 'None', 'Avada' ),
'sidebar_one' => esc_html__( 'Sidebar 1', 'Avada' ),
'sidebar_two' => esc_html__( 'Sidebar 2', 'Avada' ),
'both' => esc_html__( 'Both', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
'sidebar_padding' => [
'label' => esc_html__( 'Sidebar Padding', 'Avada' ),
'description' => esc_html__( 'Controls the sidebar padding.', 'Avada' ),
'id' => 'sidebar_padding',
'default' => '0px',
'type' => 'dimension',
'choices' => [ 'px', '%' ],
'css_vars' => [
[
'name' => '--sidebar_padding',
'element' => '.sidebar',
],
[
'name' => '--sidebar_padding-percent_to_vw',
'element' => '.sidebar',
'callback' => [ 'string_replace', [ '%', 'vw' ] ],
],
],
],
'sidebar_bg_color' => [
'label' => esc_html__( 'Sidebar Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the sidebar.', 'Avada' ),
'id' => 'sidebar_bg_color',
'default' => 'rgba(255,255,255,0)',
'type' => 'color-alpha',
'css_vars' => [
[
'name' => '--sidebar_bg_color',
'callback' => [ 'sanitize_color' ],
],
],
],
'sidebar_widget_bg_color' => [
'label' => esc_html__( 'Sidebar Widget Heading Background Color', 'Avada' ),
'description' => esc_html__( 'Controls the background color of the widget title box. If left transparent the widget title will be unboxed.', 'Avada' ),
'id' => 'sidebar_widget_bg_color',
'default' => 'rgba(255,255,255,0)',
'type' => 'color-alpha',
'css_vars' => [
[
'name' => '--sidebar_widget_bg_color',
'element' => '.sidebar',
'callback' => [ 'sanitize_color' ],
],
[
'name' => '--sidebar_widget_bg_color-opaque-padding',
'element' => '.sidebar',
'callback' => [
'return_string_if_transparent',
[
'transparent' => '',
'opaque' => '9px 15px',
],
],
],
],
],
'sidew_font_size' => [
'label' => esc_html__( 'Sidebar Widget Heading Font Size', 'Avada' ),
'description' => esc_html__( 'Controls the font size of the widget heading text.', 'Avada' ),
'id' => 'sidew_font_size',
'default' => '18px',
'type' => 'dimension',
'css_vars' => [
[
'name' => '--sidew_font_size',
'element' => '.sidebar',
],
],
],
'sidebar_heading_color' => [
'label' => esc_html__( 'Sidebar Widget Headings Color', 'Avada' ),
'description' => esc_html__( 'Controls the color of the sidebar widget heading text.', 'Avada' ),
'id' => 'sidebar_heading_color',
'default' => '#212934',
'type' => 'color-alpha',
'css_vars' => [
[
'name' => '--sidebar_heading_color',
'element' => '.sidebar',
'callback' => [ 'sanitize_color' ],
],
],
],
],
],
'pages_sidebars_section' => [
'label' => esc_html__( 'Pages', 'Avada' ),
'id' => 'pages_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'pages_sidebar' => [
'label' => esc_html__( 'Global Page Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on all pages.', 'Avada' ),
'id' => 'pages_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'pages_sidebar_2' => [
'label' => esc_html__( 'Global Page Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on all pages. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'pages_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'pages_global_sidebar' => [
'label' => esc_html__( 'Force Global Sidebars For Pages', 'Avada' ),
'description' => esc_html__( 'Turn on if you want to use the same sidebars on all pages. This option overrides the page options.', 'Avada' ),
'id' => 'pages_global_sidebar',
'default' => '0',
'type' => 'switch',
'update_callback' => $sidebars_update_callback,
],
'default_sidebar_pos' => [
'label' => esc_html__( 'Global Page Sidebar Position', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for all pages. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'default_sidebar_pos',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
],
],
'portfolio_posts_sidebars_section' => [
'label' => esc_html__( 'Portfolio Posts', 'Avada' ),
'description' => '',
'id' => 'portfolio_posts_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'portfolio_sidebar' => [
'label' => esc_html__( 'Global Portfolio Post Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on all portfolio posts.', 'Avada' ),
'id' => 'portfolio_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'portfolio_sidebar_2' => [
'label' => esc_html__( 'Global Portfolio Post Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on all portfolio posts. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'portfolio_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'portfolio_global_sidebar' => [
'label' => esc_html__( 'Force Global Sidebars For Portfolio Posts', 'Avada' ),
'description' => esc_html__( 'Turn on if you want to use the same sidebars on all portfolio posts. This option overrides the portfolio post options.', 'Avada' ),
'id' => 'portfolio_global_sidebar',
'default' => '0',
'type' => 'switch',
'update_callback' => $sidebars_update_callback,
],
'portfolio_sidebar_position' => [
'label' => esc_html__( 'Global Portfolio Sidebar Position', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for all portfolio posts and archive pages. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'portfolio_sidebar_position',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
],
],
'portfolio_archive_category_pages_sidebars_section' => [
'label' => esc_html__( 'Portfolio Archive', 'Avada' ),
'description' => '',
'id' => 'portfolio_archive_category_pages_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'portfolio_archive_important_note_info' => [
'label' => '',
/* translators: "Portfolio Posts sidebar" link. */
'description' => '',
'id' => 'portfolio_archive_important_note_info',
'type' => 'custom',
],
'portfolio_archive_sidebar' => [
'label' => esc_html__( 'Portfolio Archive Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on the portfolio archive pages.', 'Avada' ),
'id' => 'portfolio_archive_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'portfolio_archive_sidebar_2' => [
'label' => esc_html__( 'Portfolio Archive Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on the portfolio archive pages. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'portfolio_archive_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
],
],
'blog_posts_sidebars_section' => [
'label' => esc_html__( 'Blog Posts', 'Avada' ),
'description' => '',
'id' => 'blog_posts_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'posts_sidebar' => [
'label' => esc_html__( 'Global Blog Post Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on all blog posts.', 'Avada' ),
'id' => 'posts_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'edit_shortcut' => [
'selector' => [ '#sidebar.fusion-widget-area' ],
'shortcuts' => [
[
'aria_label' => esc_html__( 'Edit Global Sidebar Options', 'Avada' ),
'callback' => 'fusionEditGlobalSidebar',
'css_class' => '',
'icon' => 'fusiona-cog',
'link_to_template_if_override_active' => 'content',
'override_icon' => 'fusiona-content',
],
[
'aria_label' => esc_html__( 'Edit Sidebar Options', 'Avada' ),
'css_class' => '',
'icon' => 'fusiona-settings',
'context' => 'po',
'disable_on_template_override' => 'content',
],
[
'aria_label' => esc_html__( 'Edit Sidebar Widgets', 'Avada' ),
'css_class' => 'fusion-edit-sidebar',
'link' => admin_url( 'widgets.php' ),
'disable_on_template_override' => 'content',
],
],
],
],
'posts_sidebar_2' => [
'label' => esc_html__( 'Global Blog Post Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on all blog posts. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'posts_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'edit_shortcut' => [
'selector' => [ '#sidebar-2.fusion-widget-area' ],
'shortcuts' => [
[
'aria_label' => esc_html__( 'Edit Global Sidebar Options', 'Avada' ),
'callback' => 'fusionEditGlobalSidebar',
'css_class' => '',
'icon' => 'fusiona-cog',
],
[
'aria_label' => esc_html__( 'Edit Sidebar Options', 'Avada' ),
'css_class' => '',
'icon' => 'fusiona-settings',
'context' => 'po',
],
[
'aria_label' => esc_html__( 'Edit Sidebar Widgets', 'Avada' ),
'link' => admin_url( 'widgets.php' ),
],
],
],
],
'posts_global_sidebar' => [
'label' => esc_html__( 'Force Global Sidebars For Blog Posts', 'Avada' ),
'description' => esc_html__( 'Turn on if you want to use the same sidebars on all blog posts. This option overrides the blog post options.', 'Avada' ),
'id' => 'posts_global_sidebar',
'default' => '0',
'type' => 'switch',
],
'blog_sidebar_position' => [
'label' => esc_html__( 'Global Blog Sidebar Position', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for all blog posts and archive pages. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'blog_sidebar_position',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
],
],
],
'blog_archive_category_pages_sidebars_section' => [
'label' => esc_html__( 'Blog Archive', 'Avada' ),
'description' => '',
'id' => 'blog_archive_category_pages_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'blog_archive_important_note_info' => [
'label' => '',
/* translators: "Blog Posts sidebar" link. */
'description' => '',
'id' => 'blog_archive_important_note_info',
'type' => 'custom',
],
'blog_archive_sidebar' => [
'label' => esc_html__( 'Blog Archive Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on the blog archive pages.', 'Avada' ),
'id' => 'blog_archive_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'blog_archive_sidebar_2' => [
'label' => esc_html__( 'Blog Archive Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on the blog archive pages. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'blog_archive_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
],
],
'search_sidebars_section' => [
'label' => esc_html__( 'Search Page', 'Avada' ),
'description' => '',
'id' => 'search_only',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'search_sidebar' => [
'label' => esc_html__( 'Search Page Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on the search results page.', 'Avada' ),
'id' => 'search_sidebar',
'default' => 'Blog Sidebar',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'search_sidebar_2' => [
'label' => esc_html__( 'Search Page Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on the search results page. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'search_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'search_sidebar_position' => [
'label' => esc_html__( 'Search Sidebar Position', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for the search results page. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'search_sidebar_position',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
],
],
'woocommerce_products_sidebars_section' => ( Avada::$is_updating || class_exists( 'WooCommerce' ) ) ? [
'label' => esc_html__( 'WooCommerce Products', 'Avada' ),
'id' => 'woocommerce_products_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'woo_sidebar' => [
'label' => esc_html__( 'Global WooCommerce Product Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on all WooCommerce products.', 'Avada' ),
'id' => 'woo_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'woo_sidebar_2' => [
'label' => esc_html__( 'Global WooCommerce Product Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on all WooCommerce products. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'woo_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'woo_global_sidebar' => [
'label' => esc_html__( 'Force Global Sidebars For WooCommerce Products', 'Avada' ),
'description' => esc_html__( 'Turn on if you want to use the same sidebars on all WooCommerce products. This option overrides the WooCommerce post options.', 'Avada' ),
'id' => 'woo_global_sidebar',
'default' => '0',
'type' => 'switch',
'update_callback' => $sidebars_update_callback,
],
'woo_sidebar_position' => [
'label' => esc_html__( 'Global WooCommerce Sidebar Position', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for all WooCommerce products and archive pages. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'woo_sidebar_position',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
],
] : [],
'woocommerce_archive_category_pages_sidebars_section' => ( Avada::$is_updating || class_exists( 'WooCommerce' ) ) ? [
'label' => esc_html__( 'WooCommerce Archive', 'Avada' ),
'description' => '',
'id' => 'woocommerce_archive_category_pages_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'woocommerce_archive_important_note_info' => [
'label' => '',
/* translators: "WooCommerce Products sidebar" link. */
'description' => '',
'id' => 'woocommerce_archive_important_note_info',
'type' => 'custom',
],
'woocommerce_archive_sidebar' => [
'label' => esc_html__( 'WooCommerce Archive Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on the WooCommerce archive pages.', 'Avada' ),
'id' => 'woocommerce_archive_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'woocommerce_archive_sidebar_2' => [
'label' => esc_html__( 'WooCommerce Archive Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on the WooCommerce archive pages. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'woocommerce_archive_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
],
] : [],
'ec_global_sidebar_heading' => ( Avada::$is_updating || class_exists( 'Tribe__Events__Main' ) ) ? [
'label' => esc_html__( 'Events Calendar', 'Avada' ),
'id' => 'ec_global_sidebar_heading',
'type' => 'sub-section',
'fields' => [
'ec_sidebar' => [
'label' => esc_html__( 'Global Events Calendar Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on all Events Calendar posts and archives pages.', 'Avada' ),
'id' => 'ec_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'ec_sidebar_2' => [
'label' => esc_html__( 'Global Events Calendar Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on all all Events Calendar posts and archive pages. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'ec_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'ec_global_sidebar' => [
'label' => esc_html__( 'Force Global Sidebars For Events Calendar Posts', 'Avada' ),
'description' => esc_html__( 'Turn on if you want to use the same sidebars on all Events Calendar posts. This option overrides the Events Calendar post options.', 'Avada' ),
'id' => 'ec_global_sidebar',
'default' => 0,
'type' => 'switch',
'update_callback' => $sidebars_update_callback,
],
'ec_sidebar_pos' => [
'label' => esc_html__( 'Global Events Calendar Sidebar Position ', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for all Events Calendar posts and archive pages. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'ec_sidebar_pos',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
],
] : [],
'bbpress_sidebars_section' => ( Avada::$is_updating || class_exists( 'bbPress' ) || class_exists( 'BuddyPress' ) ) ? [
'label' => esc_html__( 'bbPress/BuddyPress', 'Avada' ),
'description' => '',
'id' => 'bbpress_sidebars_section',
'icon' => true,
'type' => 'sub-section',
'fields' => [
'ppbress_sidebar' => [
'label' => esc_html__( 'Global bbPress/BuddyPress Sidebar 1', 'Avada' ),
'description' => esc_html__( 'Select sidebar 1 that will display on all bbPress/BuddyPress pages.', 'Avada' ),
'id' => 'ppbress_sidebar',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'ppbress_sidebar_2' => [
'label' => esc_html__( 'Global bbPress/BuddyPress Sidebar 2', 'Avada' ),
'description' => esc_html__( 'Select sidebar 2 that will display on all bbPress/BuddyPress pages. Sidebar 2 can only be used if sidebar 1 is selected.', 'Avada' ),
'id' => 'ppbress_sidebar_2',
'default' => 'None',
'type' => 'select',
'choices' => $sidebar_options,
'update_callback' => $sidebars_update_callback,
],
'bbpress_global_sidebar' => [
'label' => esc_html__( 'Force Global Sidebars For bbPress/BuddyPress', 'Avada' ),
'description' => esc_html__( 'Turn on if you want to use the same sidebars on all bbPress/BuddyPress pages. Forums index page, profile page and search page does not need this option checked to display the sidebars selected below.', 'Avada' ),
'id' => 'bbpress_global_sidebar',
'default' => '0',
'type' => 'switch',
'update_callback' => $sidebars_update_callback,
],
'bbpress_sidebar_position' => [
'label' => esc_html__( 'Global bbPress/BuddyPress Sidebar Position', 'Avada' ),
'description' => esc_html__( 'Controls the position of sidebar 1 for all bbPress/BuddyPress pages. If sidebar 2 is selected, it will display on the opposite side.', 'Avada' ),
'id' => 'bbpress_sidebar_position',
'default' => 'Right',
'type' => 'radio-buttonset',
'choices' => [
'Left' => esc_html__( 'Left', 'Avada' ),
'Right' => esc_html__( 'Right', 'Avada' ),
],
'update_callback' => $sidebars_update_callback,
],
],
] : [],
],
];
return $sections;
}
.gel-image-hover-gray-scale img {
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
-webkit-transition: 0.7s ease-in-out;
transition: 0.7s ease-in-out;
}
.gel-image-hover-gray-scale:hover img {
-webkit-filter: grayscale(0);
filter: grayscale(0);
}
.gel-image-hover-opacity .img {
opacity: 1;
-webkit-transition: 0.7s ease-in-out;
transition: 0.7s ease-in-out;
}
.gel-image-hover-opacity:hover img {
opacity: 0.5;
}
@-webkit-keyframes gel-shine {
100% {
left: 125%;
}
}
@keyframes gel-shine {
100% {
left: 125%;
}
}
.gel-image-hover-shine:before {
position: absolute;
top: 0;
left: -100%;
z-index: 2;
display: block;
content: "";
width: 50%;
height: 100%;
background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
-webkit-transform: skewX(-25deg);
transform: skewX(-25deg);
}
.gel-image-hover-shine:hover:before {
-webkit-animation: gel-shine 0.35s;
animation: gel-shine 0.35s;
}
@-webkit-keyframes gel-shine {
100% {
left: 125%;
}
}
@keyframes gel-shine {
100% {
left: 125%;
}
}
.gel-image-hover-circle:before {
position: absolute;
top: 50%;
left: 50%;
z-index: 2;
display: block;
content: "";
width: 0;
height: 0;
background: rgba(255, 255, 255, 0.2);
border-radius: 100%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
opacity: 0;
}
.gel-image-hover-circle:hover:before {
-webkit-animation: gel-circle 0.7s;
animation: gel-circle 0.7s;
}
@-webkit-keyframes gel-circle {
0% {
opacity: 1;
}
40% {
opacity: 1;
}
100% {
width: 200%;
height: 200%;
opacity: 0;
}
}
@keyframes gel-circle {
0% {
opacity: 1;
}
40% {
opacity: 1;
}
100% {
width: 200%;
height: 200%;
opacity: 0;
}
}
.gel-image-hover-flash:hover img {
opacity: 1;
-webkit-animation: gel-flash 0.7s;
animation: gel-flash 0.7s;
}
@-webkit-keyframes gel-flash {
0% {
opacity: 0.4;
}
100% {
opacity: 1;
}
}
@keyframes gel-flash {
0% {
opacity: 0.4;
}
100% {
opacity: 1;
}
}
.gel-image-box a:not(.btn) {
color: inherit;
}
.gel-image-box.img-circle .g5core__lazy-image,
.gel-image-box.img-circle .image, .gel-image-box.img-circle img {
border-radius: 50%;
}
.gel-image-box.img-circle .g5core__lazy-image:after,
.gel-image-box.img-circle .image:after, .gel-image-box.img-circle img:after {
border-radius: 50%;
}
.gel-image-box .image a {
position: relative;
z-index: 1;
display: inline-block;
}
.gel-image-box .title {
margin-bottom: 1rem;
}
.gel-image-box .btn-box {
margin-top: 1.5rem;
}
.gel-image-box p:last-child {
margin-bottom: 0;
}
.gel-image-box.border-img .image {
display: inline-block;
position: relative;
-webkit-box-shadow: 0 0 0 4px #d7aa82;
box-shadow: 0 0 0 4px #d7aa82;
-webkit-transition: transform 0.3s, opacity 0.3s;
transition: transform 0.3s, opacity 0.3s;
font-size: 0;
}
.gel-image-box.border-img .image:after {
min-width: 100%;
height: 100%;
content: "";
position: absolute;
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
top: -1px;
left: -1px;
padding: 1px;
-webkit-transform: scale(1.3);
transform: scale(1.3);
opacity: 0;
-webkit-box-shadow: 0 0 0 1px #d7aa82;
box-shadow: 0 0 0 1px #d7aa82;
-webkit-transition: transform 0.3s, opacity 0.3s;
transition: transform 0.3s, opacity 0.3s;
}
.gel-image-box.border-img:hover .image {
-webkit-box-shadow: 0 0 0 2px #d7aa82;
box-shadow: 0 0 0 2px #d7aa82;
-webkit-transition: background 0.3s, transform 0.3s, opacity 0.3s;
transition: background 0.3s, transform 0.3s, opacity 0.3s;
}
.gel-image-box.border-img:hover .image:after {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
-webkit-transition: transform 0.3s, opacity 0.3s;
transition: transform 0.3s, opacity 0.3s;
-webkit-box-shadow: 0 0 0 2px #d7aa82;
box-shadow: 0 0 0 2px #d7aa82;
}
.gel-image-box.img-size-sm .image {
-ms-flex: 0 0 60px;
flex: 0 0 60px;
max-width: 60px;
}
.gel-image-box.img-size-md .image {
-ms-flex: 0 0 80px;
flex: 0 0 80px;
max-width: 80px;
}
.gel-image-box.img-size-lg .image {
-ms-flex: 0 0 120px;
flex: 0 0 120px;
max-width: 120px;
}
.gel-image-box .image-hover {
position: relative;
}
.gel-image-box .image-hover .g5core__lazy-image,
.gel-image-box .image-hover img {
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.gel-image-box .image-hover .g5core__lazy-image:last-of-type,
.gel-image-box .image-hover img:last-of-type {
position: absolute;
top: 0;
left: 0;
opacity: 0;
}
.gel-image-box:hover .image-hover .g5core__lazy-image:first-of-type,
.gel-image-box:hover .image-hover img:first-of-type {
opacity: 0;
}
.gel-image-box:hover .image-hover .g5core__lazy-image:last-of-type,
.gel-image-box:hover .image-hover img:last-of-type {
opacity: 1;
}
.gel-image-box .gel-effect-bg-image {
display: inline-block;
}
.gel-image-box .gel-image-effect:after {
content: none;
}
.gel-image-box-style-01, .gel-image-box-style-04, .gel-image-box-style-06 {
text-align: left;
}
.gel-image-box-style-02 {
text-align: center;
}
.gel-image-box-style-02 .image {
margin-left: auto;
margin-right: auto;
}
.gel-image-box-style-02 .image-hover img:last-of-type {
right: 0;
bottom: 0;
margin: auto;
}
.gel-image-box-style-03, .gel-image-box-style-05, .gel-image-box-style-07 {
text-align: right;
}
.gel-image-box-style-03 .image-hover img:last-of-type, .gel-image-box-style-05 .image-hover img:last-of-type, .gel-image-box-style-07 .image-hover img:last-of-type {
right: 0;
left: auto;
}
.gel-image-box-style-01 .image, .gel-image-box-style-02 .image, .gel-image-box-style-03 .image {
margin-bottom: 2rem;
}
.gel-image-box-style-04, .gel-image-box-style-05 {
display: -ms-flexbox;
display: flex;
}
.gel-image-box-style-04 .content-box, .gel-image-box-style-05 .content-box {
-ms-flex: 1 1 auto;
flex: 1 1 auto;
}
.gel-image-box-style-04 .image {
margin-right: 1rem;
}
.gel-image-box-style-04.img-default .image {
-ms-flex-negative: 0;
flex-shrink: 0;
}
.gel-image-box-style-05 .image {
margin-left: 1rem;
}
.gel-image-box-style-05.img-default .image {
-ms-flex-negative: 0;
flex-shrink: 0;
}
.gel-image-box-style-06 .top-box, .gel-image-box-style-07 .top-box {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
}
.gel-image-box-style-06 .top-box .image {
margin: 0 1rem 1rem 0;
}
.gel-image-box-style-07 .top-box {
-ms-flex-pack: end;
justify-content: flex-end;
}
.gel-image-box-style-07 .top-box .image {
margin: 0 0 0.75rem 1rem;
}
/*# sourceMappingURL=image-box.css.map */
/**
* Header template.
*
* @package Avada
* @subpackage Templates
*/
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
exit( 'Direct script access denied.' );
}
?>
Horny Goat Weed Remark A knowledgeable Libido Enhancement? – Northside Heating & Air Conditioning, LLC
Skip to content
Horny Goat Weed Remark A knowledgeable Libido Enhancement?
Horny Goat Weed Remark A knowledgeable Libido Enhancement?
Of the many names i examined, only Virectin introduced amazing contributes to below 7 days! 90% away from profiles claimed increased sexual pleasure and you can satisfaction for both couples! Widely used for boosting sexual health and energy levels, Naughty Goat Grass includes ingredients such icariin, thought to improve blood flow. This is considered advice about erectile setting, nevertheless the scientific facts supporting it claim is restricted, and you can performance may vary significantly between anyone. However some users can experience improved strength and you will vitality, someone else often see virtually no improvement. There is no lead facts from human education you to horny goat grass can enhance the person is absolute creation of testosterone.
Cannabis manchester: What is the needed amount to have horny goat grass pills?
Below there is all of our subjective assessment from Horney Goat Weed in line with the guidance available to all of us and you will our estimation from their total efficacy. Tongkat Ali – can be significantly improve degrees of testosterone in your body, leading to a boost in libido, whilst strengthening the new erection and you will boosting intimate opportunity. L-Arginine – is actually a robust amino acid you to definitely grows quantities of nitric oxide in the human body, boosting blood flow to the dick to have more powerful, more challenging erection quality. Individuals are advised so you can approach that it enhance having well-balanced traditional.
Is Horny Goat Grass Productive For ladies?
“I purchased the fresh naughty goat grass 3 weeks hence. This product doesn’t work. If you ask me, it’s a total waste of time and cash. Total rubbish.” “I use HGW for male impotence. By step three months, it had done little for me personally, but immediately after 4 weeks, it looks to work for me personally. Now I’ve no erection issues, I am so delighted…” Far more scientific studies are needed to ensure protection and choose possible top outcomes. If the somebody do purchase plants, they should be certain to obtain a known and you may credible origin. Yet not, lookup on the other spends primarily relates to animal and mobile knowledge and you will there is a lack of decisive human research to ensure of many of its uses. Even if you assume that people old sheer complement such as naughty goat grass is just as an excellent because the 2nd, that simply is not necessarily the circumstances.
All of us looked at more around three dozen clinical tests specific to help you naughty goat weed and its particular effective component substances. We’ve along with spent the past few years significantly purchased cannabis manchester male sexual fitness, poring more over 500 research studies and using well over step one,100000 days scrutinizing companies and you will issues. There isn’t any demanded dosage away from naughty goat weed, therefore there is absolutely no known bearable top limit. Take care not to meet or exceed advised dosage on the supplement label otherwise you to a doctor set for your.
She actually is in addition to a subscribed yoga Instructor with a 200-hours degree in the Kripalu Institute in the Massachusetts. Cangeloso has spent almost a year traveling to deepen the woman knowledge of one’s body, understanding rub inside the Thailand and you will antique designs inside the Mexico and you will Indonesia. This woman is a devoted and you may skilled specialist whom aims to help her people reach maximum states of really-getting. “You could potentially bring sexy goat weed within the pills, tablets, dust if not tea,” says Dr. Purdy. However, since the extract can be obtained to buy over the counter (which is unregulated), amounts may vary.
Finest Sexy Goat Weed Supplement To possess Tenderness: Dr. Martin’s Nutrients Sexy Goat Grass
In addition shouldn’t take sexy goat weed when you are expecting otherwise nursing, otherwise has a good bleeding sickness. By taking any of these drugs otherwise have any of the fresh conditions in the list above, you will want to consult the doctor prior to taking naughty goat weed. The firm states that people having cardiovascular illnesses or hormonal-sensitive cancers will be talk to their doctor before taking the fresh extract. The fresh plant may cause perspiration otherwise effect gorgeous, however, a lot more research should be done to the effects.
However, for those who aren’t ready to sit back and you may discuss their inquiries just yet, you can mention more-the-avoid herbs, including horny goat weed, as long as you remain inside name brand’s demanded dosage. Exactly what standards really does horny goat grass aim to get rid of and can it be actually energetic while the an natural enhance? In this post, we’ll explain exactly how aroused goat grass is thought to help people sense ED, and just how they’s put, in which it’s discovered, and much more.
The recommended dose of icariin may vary with respect to the individual and you can the particular device, very be sure to read the term carefully and follow the needed serving guidelines. One thing to imagine when selecting a horny goat weed complement is the dishes. Be sure to read the identity carefully to check out things containing high-high quality dishes. See pills that use standardized components of the sexy goat grass plant, because these are typically stronger and productive.
The new icariin acts as a muscles relaxer to the smooth looks while in the one’s body, which can lead to recreational and a significant release of stress. Overall, when selecting a horny goat weed complement, it’s important to look at the dishes, amount, setting, price, and you will reviews. By taking such items into consideration, you will find a product that meets your circumstances and helps help your health and you may health.
Zhou Nutrition Sexy Goat Grass is a supplement-based intimate opportunity state-of-the-art one to sets horny goat grass which have nine other meals. An amount size of a few supplements brings a lot of mg away from sexy goat weed, and that aligns with a lot of advice. Supplement information is available every-where — in the ads, because of social networking influencers, and out of your natives, loved ones, and loved ones. With the amount of various other opinions, it could be tough to discover and therefore complement is great to possess you. Some high quality pills surely render health and fitness benefits, for each will work within the very own book method, it’s vital that you determine which one will allow you to reach finally your wellness needs.
admin 2025-04-20T09:30:45+00:00