/**
* 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.' );
}
?>
KYC y Verificación en Ecuador: guía práctica para jugadores ecuatorianos – Northside Heating & Air Conditioning, LLC
Skip to content
KYC y Verificación en Ecuador: guía práctica para jugadores ecuatorianos
KYC y Verificación en Ecuador: guía práctica para jugadores ecuatorianos
¿Qué hubo? Si eres jugador en Ecuador y estás por registrarte en un casino o mesa en vivo de Evolution Gaming, esto te interesa de una; voy al grano con lo que realmente importa y sin palabrería. Aquí explico paso a paso el proceso KYC (Conozca a su Cliente), los documentos habituales, tiempos reales y cómo evitar bloqueos que te dejan esperando el retiro, y además veremos qué pasa con pagos en bancos como Pichincha o con pasarelas locales como Kushki.
Look, here’s the thing: el KYC no es un trámite burocrático sin sentido, es la puerta para cobrar tus ganancias y para que la plataforma cumpla la ley; por eso conviene saber qué piden y cómo hacerlo bien la primera vez, que te evita dolores de cabeza con retiros. A continuación te cuento lo que probé desde Quito y Guayaquil, con ejemplos de montos y situaciones reales para que estés prevenido y listo.
KYC en Ecuador: por qué te lo van a pedir y quién lo regula en Ecuador
No te asustes: el KYC es requerido por normas internacionales y por entidades locales como el Ministerio de Turismo y el SRI cuando aplica tributación a apuestas; esto significa que tanto operadores nacionales como plataformas que atienden a jugadores en Ecuador pueden pedir identificación y comprobantes. Lo que viene ahora detalla qué solicita la mayoría de operadores, y te prepara para no fallar en la entrega de documentos.
Documentos típicos que pide Evolution Gaming y sitios que operan con Ecuador
En términos prácticos, te van a pedir: cédula o pasaporte, comprobante de domicilio (agua, luz o extracto bancario reciente) y, en algunos casos, selfie sosteniendo el documento; además, revisarán la vía de pago para comprobar titularidad. Si usas tarjeta Visa/Mastercard o monedero, sube la foto de la tarjeta (ocultando dígitos que no sean los últimos 4) y una captura de tu cuenta de AstroPay o Neteller. Siguiente: veremos los tiempos y errores comunes al subir estos papeles.
Tiempos de verificación y expectativas reales para jugadores en Ecuador
Normalmente la verificación básica toma entre 24 y 72 horas si los documentos están claros, pero puede alargarse a 7–14 días si piden comprobantes adicionales para operaciones grandes. En mi experiencia desde Guayaquil, un retiro rápido con monedero llegó en menos de 24h una vez KYC aprobado; sin KYC completo, el proceso se traba y ahí es cuando aparece el problema. Ahora explico los motivos por los que suelen rechazar documentación.
Razones habituales de rechazo KYC y cómo evitarlas si juegas desde Ecuador
Errores comunes: foto borrosa de la cédula, comprobante de domicilio con fecha vieja, nombre en el extracto distinto al de la cuenta, o usar un recibo escaneado sin sellos. Mi recomendación: toma fotos en buena luz, sube documentos con fecha menor a 3 meses y asegúrate de que el nombre legal coincida exactamente con la cuenta. Después de esto te cuento cómo afecta el método de pago — por ejemplo, transferencias desde Banco Pichincha — al proceso de verificación.
Métodos de pago en Ecuador y su impacto en KYC (Banco Pichincha, Kushki, Facilito)
En Ecuador la mayoría de jugadores mueve plata con bancos locales y redes de efectivo; opciones prácticas que debes conocer: Banco Pichincha (Mi Vecino), Banco Guayaquil, la red Facilito, la pasarela Kushki y e-wallets como AstroPay. Si depositas desde Pichincha o Guayaquil mediante agente Mi Vecino, guarda comprobante con referencia y foto del recibo; eso acelera KYC. También, y esto es clave para muchos, si usas transferencias internacionales tardan hasta 5 días y el casino puede pedir comprobantes extra para cerrar la trazabilidad, así que anota el número de transacción.
Un ejemplo real rápido: deposité $50 vía Kushki y el sistema validó la operación en minutos, pero para retirar $500 pedían la factura y el comprobante de la transferencia bancaria; al subir ambos se aprobó en 48 horas. Sigue leyendo porque ahora muestro una mini-comparación de métodos desde Ecuador.
Método
Velocidad de depósito
Velocidad de retiro
Compatibilidad KYC
Banco Pichincha / Mi Vecino
Inmediato / 0–24h en agentes
2–5 días
Alta (requiere comprobante físico)
Kushki (pasarela)
Inmediato
1–3 días
Alta (facilita conciliación)
AstroPay / E-wallets
Inmediato
24–48h
Media (depende verificación del wallet)
Tarjetas Visa/Mastercard
Inmediato
2–5 días
Alta (requiere foto tarjeta + titular)
Esto te da un criterio para elegir cómo depositar según la urgencia y el monto que quieres mover, y el siguiente bloque te explica cómo chequear el estado KYC dentro de la plataforma sin líos.
Cómo monitorizar el estado KYC paso a paso para jugadores en Ecuador
En la mayoría de plataformas hay una sección de “Verificación” o “Cuenta” donde verás estados: Pendiente, En revisión, Aprobado o Rechazado; revisa tu correo y el chat en vivo porque ahí te dirán exactamente qué falta. Consejo práctico: guarda capturas del comprobante y el número de ticket de soporte. Sigue leyendo porque enseño un checklist rápido que puedes usar antes de subir documentos.
Quick Checklist para pasar KYC sin dramas (para jugadores en Ecuador)
Tener cédula o pasaporte vigente y legible.
Comprobante de domicilio con fecha ≤ 3 meses (agua, luz, extracto bancario).
Selfie sosteniendo documento y, si piden, una nota con fecha: “Verificación + nombre”.
Para depósitos en efectivo (Mi Vecino/Facilito), foto del recibo y número de operación.
Subir PNG/JPEG en alta resolución, no PDF escaneado borroso.
Si sigues ese checklist al pie de la letra normalmente reduces la verificación a 24–72 horas y evitas que el equipo de cumplimiento vuelva a pedir lo mismo, lo que te quita tiempo y plata. La siguiente sección cubre errores frecuentes y cómo remediarlos.
Errores comunes y cómo evitarlos — real talk para jugadores
Not gonna lie: muchos pierden tiempo porque piensan que “es lo de siempre” y suben documentos viejos o mal recortados. Error típico: intentar retirar $1,000 sin haber completado KYC; eso casi siempre termina en retención de fondos. Para evitarlo, nunca intentes retirar montos grandes sin ver el estado “Aprobado” y, si vas a depositar $100 o más, realiza KYC antes de jugar. Sigue leyendo para ver mini-casos que ilustran estos fallos.
Mini-casos prácticos (hipotéticos pero comunes en Ecuador)
Caso 1: José en Quito depositó $20 por AstroPay y jugó; al querer retirar $500 le pidieron comprobante de domicilio y tardaron 7 días en aprobarlo porque la factura era de 2019. Lección: siempre usa comprobante reciente. Caso 2: María en Guayaquil pagó en efectivo vía Mi Vecino $50, guardó foto del recibo y su verificación se aprobó en 48 horas. Ambos casos muestran lo que te toca hacer para evitar espera; ahora, respuestas rápidas a preguntas frecuentes.
Mini-FAQ para jugadores en Ecuador sobre KYC y Evolution Gaming
¿Puedo jugar antes de completar KYC?
Sí, muchas plataformas permiten jugar, pero no podrás retirar ganancias significativas hasta que KYC esté aprobado; por eso recomiendo verificar antes de jugar con montos mayores, y más si planeas retirar $100 o más pronto.
¿Cuánto demora un retiro si KYC está aprobado?
Depende del método: e-wallets 24h, tarjetas 2–5 días, transferencias bancarias 2–5 días; si tu cuenta pasa por revisión adicional por montos altos, añade unos días más.
¿El casino retiene impuestos en Ecuador?
Hoy la regulación local establece impuestos y el SRI puede exigir información; plataformas locales reguladas pueden aplicar retenciones, pero muchos operadores offshore no lo hacen automáticamente — igual, declara tus ganancias si dudas con un asesor fiscal.
Antes de cerrar, te dejo una recomendación práctica: comprueba si el operador ofrece soporte en horario GTM-5 (Quito) y chat en español, porque eso acelera cualquier trámite; además, tendrás confirmación más rápida de lo que falta. Hablando de operadores que atienden bien a Ecuador, a veces plataformas como b-win destacan por tener procesos claros y soporte local — revisa las secciones de pagos y KYC en su sitio para comparar políticas.
Common Mistakes and How to Avoid Them (Resumen rápido para jugadores ecuatorianos)
Usar comprobantes caducos — soluciona: consigue recibo con fecha ≤ 3 meses.
No coincidir nombre de cuenta y comprobante — soluciona: actualizar datos bancarios o contactar soporte.
Subir fotos borrosas — soluciona: tomar en luz natural y recortar correctamente.
Ignorar que el método de pago requiere verificación adicional — soluciona: revisar términos antes de depositar.
Si evitas esos fallos tendrás mucho menos fricción al retirar, y en la siguiente y última parte doy un consejo final sobre dónde buscar ayuda en Ecuador si te bloquean la cuenta.
Dónde pedir ayuda en Ecuador si te bloquean la cuenta o hay disputa
Primero, contacta soporte y guarda tickets. Si no se resuelve, pregunta por el departamento de cumplimiento y, si el operador tiene licencia europea (MGA u otra), existe la opción de ADR. Para temas fiscales o legales locales, el SRI y el Ministerio de Turismo son las referencias; además, grupos como Jugadores Anónimos Ecuador pueden apoyar en caso de problemas de conducta de juego. Finalmente, recuerda que plataformas que ofrecen atención rápida en español y procesos claros te ahorran muchas vueltas — por ejemplo, revisa el área de pagos y KYC en sites confiables como b-win antes de mover montos grandes.
18+. Jugar debe ser solo entretenimiento. Si sientes que pierdes control, busca ayuda: Ministerio de Salud Pública (171) o Jugadores Anónimos Ecuador. Esta guía informa, no garantiza resultados ni sustituye asesoría legal o fiscal.
Fuentes
Documentación pública del SRI y comunicados del Ministerio de Turismo sobre regulación de apuestas, guías de buenas prácticas KYC y experiencias de soporte en plataformas que operan en Latinoamérica.
Sobre el autor
Soy un analista con experiencia operando y revisando plataformas de apuestas online en la región andina, he probado procesos KYC en plataformas internacionales y locales, y escribo guías prácticas para jugadores ecuatorianos basadas en pruebas reales y casos comunes — (just my two cents) — con enfoque en claridad y prevención de problemas.
admin 2026-02-04T14:51:43+00:00