name = esc_html__('Logo', 'addons-for-divi'); $this->settings_modal_toggles = array( 'general' => array( 'toggles' => array( 'main_content' => esc_html__('Content', 'addons-for-divi'), ), ), 'advanced' => array( 'toggles' => array( 'tooltip' => esc_html__('Tooltip', 'addons-for-divi'), 'border' => esc_html__('Border', 'addons-for-divi'), ), ), ); } public function get_fields() { $fields = array( 'logo_url' => array( 'label' => esc_html__('Upload Logo', 'addons-for-divi'), 'description' => esc_html__('Upload a logo or type in the URL of the logo you would like to display.', 'addons-for-divi'), 'type' => 'upload', 'option_category' => 'basic_option', 'upload_button_text' => esc_attr__('Upload a Logo', 'addons-for-divi'), 'choose_text' => esc_attr__('Choose a Logo', 'addons-for-divi'), 'update_text' => esc_attr__('Set As Logo', 'addons-for-divi'), 'toggle_slug' => 'main_content', ), 'brand_name' => array( 'label' => esc_html__('Logo Alt Text', 'addons-for-divi'), 'description' => esc_html__('Define alt text for html img tag.', 'addons-for-divi'), 'type' => 'text', 'default' => esc_html__('Brand Name', 'addons-for-divi'), 'toggle_slug' => 'main_content', ), 'use_tooltip' => array( 'type' => 'multiple_checkboxes', 'default' => 'off', 'toggle_slug' => 'main_content', 'options' => array( 'tooltip' => esc_html__('Use Tooltip', 'addons-for-divi'), ), ), 'tooltip_text' => array( 'label' => esc_html__('Tooltip Text', 'addons-for-divi'), 'description' => esc_html__('Here you can define tooltip text for logo image.', 'addons-for-divi'), 'type' => 'text', 'default' => esc_html__('Tooltip!', 'addons-for-divi'), 'toggle_slug' => 'main_content', 'show_if' => array( 'use_tooltip' => 'on', ), ), 'theme' => array( 'label' => esc_html__('Theme', 'addons-for-divi'), 'description' => esc_html__('Select tooltip theme.', 'addons-for-divi'), 'type' => 'select', 'toggle_slug' => 'tooltip', 'tab_slug' => 'advanced', 'default' => 'dark', 'options' => array( 'dark' => esc_html__('Dark', 'addons-for-divi'), 'light' => esc_html__('Light', 'addons-for-divi'), ), 'show_if' => array( 'use_tooltip' => 'on', ), ), 'position' => array( 'label' => esc_html__('Position', 'addons-for-divi'), 'description' => esc_html__('Select tooltip position.', 'addons-for-divi'), 'type' => 'select', 'toggle_slug' => 'tooltip', 'tab_slug' => 'advanced', 'default' => 'top', 'options' => array( 'top' => esc_html__('Top', 'addons-for-divi'), 'bottom' => esc_html__('Bottom', 'addons-for-divi'), 'left' => esc_html__('Left', 'addons-for-divi'), 'right' => esc_html__('Right', 'addons-for-divi'), ), 'show_if' => array( 'use_tooltip' => 'on', ), ), 'animation' => array( 'label' => esc_html__('Animation', 'addons-for-divi'), 'description' => esc_html__('Select tooltip animation.', 'addons-for-divi'), 'type' => 'select', 'toggle_slug' => 'tooltip', 'tab_slug' => 'advanced', 'default' => 'scale', 'options' => array( 'fade' => esc_html__('Fade', 'addons-for-divi'), 'scale' => esc_html__('Scale', 'addons-for-divi'), ), 'show_if' => array( 'use_tooltip' => 'on', ), ), ); $label = array( 'admin_title' => array( 'label' => esc_html__('Admin Label', 'addons-for-divi'), 'type' => 'text', 'description' => esc_html__('This will change the label of the item', 'addons-for-divi'), 'toggle_slug' => 'admin_label', ), ); return array_merge($label, $fields); } public function get_advanced_fields_config() { $advanced_fields = array(); $advanced_fields['text'] = array(); $advanced_fields['fonts'] = array(); $advanced_fields['text_shadow'] = array(); $advanced_fields['max_width'] = array(); $advanced_fields['background'] = array( 'css' => array( 'main' => '%%order_class%% .dtq-logo-grid__item', 'important' => 'all', ), ); $advanced_fields['margin_padding'] = array( 'css' => array( 'main' => '%%order_class%% .dtq-logo-grid__item', 'important' => 'all', ), ); $advanced_fields['borders']['default'] = array( 'label_prefix' => esc_html__('Logo', 'addons-for-divi'), 'toggle_slug' => 'border', 'css' => array( 'main' => array( 'border_radii' => '%%order_class%% .dtq-logo-grid__item', 'border_styles' => '%%order_class%% .dtq-logo-grid__item', ), 'important' => 'all', ), 'defaults' => array( 'border_radii' => 'on|0px|0px|0px|0px', 'border_styles' => array( 'width' => '0px', 'color' => '#333', 'style' => 'solid', ), ), ); return $advanced_fields; } public function render_logo() { $logo_url = $this->props['logo_url']; $brand_name = $this->props['brand_name']; if (!empty($logo_url)) { return sprintf( '%2$s', esc_url($logo_url), esc_attr($brand_name) ); } } public function render($attrs, $content, $render_slug) { $use_tooltip = $this->props['use_tooltip']; $tooltip_text = $this->props['tooltip_text']; $position = $this->props['position']; $animation = $this->props['animation']; $theme = $this->props['theme']; $tippy_opts = ''; // CSS Classes. $this->remove_classname('et_pb_module'); $this->add_classname('ba_et_pb_module'); if ($use_tooltip === 'on') { wp_enqueue_script('divi-torque-lite-popper'); wp_enqueue_script('divi-torque-lite-tippy'); wp_enqueue_style('divi-torque-lite-tippy'); $tippy_opts = sprintf( 'data-tippy-content="%1$s" data-tippy-placement="%2$s" data-tippy-animation="%3$s" data-tippy-theme="%4$s"', $tooltip_text, $position, $animation, $theme ); } return sprintf( '
%1$s
', $this->render_logo(), 'on' === $use_tooltip ? 'dtq-tooltip' : '', $tippy_opts ); } } new DTQ_Logo_Grid_Child();