PATH:
home
/
thebhoeo
/
public_html
/
wp-content
/
themes
/
woodmart
/
inc
/
integrations
/
elementor
/
elements
/
infobox
<?php /** * Banner template function. * * @package woodmart */ if ( ! defined( 'ABSPATH' ) ) { exit; // Direct access not allowed. } if ( ! function_exists( 'woodmart_elementor_infobox_carousel_template' ) ) { /** * Infobox carousel template. * * @param array $settings Element settings. * @param \Elementor\Widget_Base $element Element instance. * * @return void */ function woodmart_elementor_infobox_carousel_template( $settings, $element ) { $default_settings = array( 'content_repeater' => array(), // Carousel. 'slides_per_view' => array( 'size' => 4 ), 'slides_per_view_tablet' => array( 'size' => '' ), 'slides_per_view_mobile' => array( 'size' => '' ), 'slider_spacing' => 30, 'slider_spacing_tablet' => '', 'slider_spacing_mobile' => '', 'custom_sizes' => apply_filters( 'woodmart_info_box_shortcode_custom_sizes', false ), ); $settings = wp_parse_args( $settings, array_merge( woodmart_get_carousel_atts(), $default_settings ) ); $wrapper_classes = ''; $extra_classes = ''; $arrows_hover_style = woodmart_get_opt( 'carousel_arrows_hover_style', '1' ); if ( ! empty( $settings['carousel_arrows_position'] ) ) { $nav_classes = ' wd-pos-' . $settings['carousel_arrows_position']; } else { $nav_classes = ' wd-pos-' . woodmart_get_opt( 'carousel_arrows_position', 'sep' ); } if ( 'disable' !== $arrows_hover_style ) { $nav_classes .= ' wd-hover-' . $arrows_hover_style; } $settings['slides_per_view'] = $settings['slides_per_view']['size']; if ( ! empty( $settings['slides_per_view_tablet']['size'] ) || ! empty( $settings['slides_per_view_mobile']['size'] ) ) { $settings['custom_sizes'] = array( 'desktop' => $settings['slides_per_view'], 'tablet' => $settings['slides_per_view_tablet']['size'], 'mobile' => $settings['slides_per_view_mobile']['size'], ); } if ( 'yes' === $settings['scroll_carousel_init'] ) { $wrapper_classes .= ' scroll-init'; } if ( woodmart_get_opt( 'disable_owl_mobile_devices' ) ) { $extra_classes .= ' wd-carousel-dis-mb wd-off-md wd-off-sm'; } $settings['spacing'] = $settings['slider_spacing']; $settings['spacing_tablet'] = $settings['slider_spacing_tablet']; $settings['spacing_mobile'] = $settings['slider_spacing_mobile']; woodmart_enqueue_js_library( 'swiper' ); woodmart_enqueue_js_script( 'swiper-carousel' ); woodmart_enqueue_inline_style( 'swiper' ); ?> <div class="wd-carousel-container info-box-carousel-wrapper<?php echo esc_attr( $extra_classes ); ?>"> <div class="wd-carousel-inner"> <div class="wd-carousel wd-grid info-box-carousel<?php echo esc_attr( $wrapper_classes ); ?>" <?php echo woodmart_get_carousel_attributes( $settings ); // phpcs:ignore. ?>> <div class="wd-carousel-wrap"> <?php foreach ( $settings['content_repeater'] as $index => $infobox ) : ?> <?php $infobox = $infobox + $settings; $infobox['wrapper_classes'] = ' elementor-repeater-item-' . $infobox['_id']; $infobox['extra_classes'] = ' wd-carousel-item'; ?> <?php woodmart_elementor_infobox_template( $infobox, $element ); ?> <?php endforeach; ?> </div> </div> <?php if ( 'yes' !== $settings['hide_prev_next_buttons'] ) : ?> <?php woodmart_get_carousel_nav_template( $nav_classes ); ?> <?php endif; ?> </div> <?php woodmart_get_carousel_pagination_template( $settings ); ?> <?php woodmart_get_carousel_scrollbar_template( $settings ); ?> </div> <?php } } if ( ! function_exists( 'woodmart_elementor_infobox_template' ) ) { /** * Infobox template. * * @param array $settings Element settings. * @param \Elementor\Widget_Base $element Element instance. * * @return void */ function woodmart_elementor_infobox_template( $settings, $element ) { $default_settings = array( 'link' => '', 'alignment' => 'left', 'image_alignment' => 'top', 'image_vertical_alignment' => 'top', 'style' => '', 'hover' => '', 'woodmart_color_scheme' => '', 'woodmart_hover_color_scheme' => 'light', 'svg_animation' => '', 'bg_hover_color' => '', 'bg_hover_color_gradient' => '', 'bg_hover_colorpicker' => 'colorpicker', // Icon 'icon_bg_color' => '', 'icon_bg_hover_color' => '', 'icon_border_color' => '', 'icon_border_hover_color' => '', 'image' => '', 'icon_type' => 'text', 'icon_style' => 'simple', 'icon_text' => '', 'icon_text_color' => '', 'icon_text_size' => 'default', // Btn 'btn_text' => '', 'btn_position' => 'static', 'btn_color' => 'default', 'btn_style' => 'default', 'btn_shape' => 'rectangle', 'btn_size' => 'default', 'btn_icon_type' => 'icon', 'btn_image' => '', 'btn_image_size' => '', 'btn_image_custom_dimension' => '', 'btn_icon' => '', 'btn_icon_position' => 'right', // Title 'title' => '', 'title_size' => 'default', 'title_style' => 'default', 'title_color' => '', 'title_font_size' => '', 'title_tag' => 'h4', // Subtitle 'subtitle' => '', 'subtitle_color' => 'default', 'subtitle_custom_color' => '', 'subtitle_custom_bg_color' => '', 'subtitle_style' => 'default', // Content 'custom_text_color' => '', // Extra 'wrapper_classes' => '', 'extra_classes' => '', ); $settings = wp_parse_args( $settings, $default_settings ); $wrapper_classes = ''; $subtitle_classes = ''; $title_classes = ''; $content_classes = ''; $icon_classes = ''; $image_output = ''; $title_tag = ! in_array( $settings['title_tag'], array( 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'p', 'div', 'span' ), true ) ? 'h4' : $settings['title_tag']; // Wrapper classes. $wrapper_classes .= ' text-' . $settings['alignment']; $wrapper_classes .= ' box-icon-align-' . $settings['image_alignment']; $wrapper_classes .= ' box-style-' . $settings['style']; $wrapper_classes .= ' color-scheme-' . $settings['woodmart_color_scheme']; $wrapper_classes .= $settings['wrapper_classes'] ? ' ' . $settings['wrapper_classes'] : ''; $render_svg_with_image_tag = apply_filters( 'woodmart_render_svg_with_image_tag', true ); if ( in_array( $settings['image_alignment'], array( 'left', 'right' ), true ) ) { $wrapper_classes .= ' wd-items-' . $settings['image_vertical_alignment']; } if ( 'bg-hover' === $settings['style'] ) { $wrapper_classes .= ' color-scheme-hover-' . $settings['woodmart_hover_color_scheme']; } if ( 'yes' === $settings['svg_animation'] ) { woodmart_enqueue_js_library( 'vivus' ); woodmart_enqueue_js_script( 'infobox-element' ); $wrapper_classes .= ' with-animation'; $render_svg_with_image_tag = false; } if ( $settings['btn_text'] ) { $wrapper_classes .= ' with-btn'; $wrapper_classes .= ' box-btn-' . $settings['btn_position']; } // Title classes. $title_classes .= ' box-title-style-' . $settings['title_style']; if ( woodmart_elementor_is_edit_mode() && ! strstr( $settings['wrapper_classes'], 'elementor-repeater-item' ) ) { $title_classes .= ' elementor-inline-editing'; } $title_classes .= ' ' . woodmart_get_new_size_classes( 'infobox', $settings['title_size'], 'title' ); // Subtitle classes. if ( ! $settings['subtitle_custom_color'] && ! $settings['subtitle_custom_bg_color'] ) { $subtitle_classes .= ' subtitle-color-' . $settings['subtitle_color']; } $subtitle_classes .= ' subtitle-style-' . $settings['subtitle_style']; if ( woodmart_elementor_is_edit_mode() && ! strstr( $settings['wrapper_classes'], 'elementor-repeater-item' ) ) { $subtitle_classes .= ' elementor-inline-editing'; } $subtitle_classes .= ' ' . woodmart_get_new_size_classes( 'infobox', $settings['title_size'], 'subtitle' ); // Content classes. if ( woodmart_elementor_is_edit_mode() && ! strstr( $settings['wrapper_classes'], 'elementor-repeater-item' ) ) { $content_classes .= ' elementor-inline-editing'; } // Text classes. if ( 'icon' === $settings['icon_type'] ) { $icon_classes .= ' box-with-icon'; } else { $icon_classes .= ' box-with-text text-size-' . $settings['icon_text_size']; } $icon_classes .= ' box-icon-' . $settings['icon_style']; // Link settings. if ( $settings['link'] && $settings['link']['url'] && ! $settings['btn_text'] ) { $element->remove_render_attribute( 'link' ); $element->add_link_attributes( 'link', $settings['link'] ); $element->add_render_attribute( 'link', 'class', 'wd-info-box-link wd-fill' ); $element->add_render_attribute( 'link', 'aria-label', esc_html__( 'Infobox link', 'woodmart' ) ); } // Image settings. $rand = 'svg-' . wp_rand( 999, 9999 ); $custom_image_size = isset( $settings['image_custom_dimension']['width'] ) && $settings['image_custom_dimension']['width'] ? $settings['image_custom_dimension'] : array( 'width' => 128, 'height' => 128, ); if ( isset( $settings['image']['id'] ) && $settings['image']['id'] ) { $image_output = woodmart_otf_get_image_html( $settings['image']['id'], $settings['image_size'], $settings['image_custom_dimension'] ); if ( woodmart_is_svg( $settings['image']['url'] ) && apply_filters( 'woodmart_show_infobox_svg_by_tag', true ) ) { if ( $render_svg_with_image_tag ) { $thumb_size = woodmart_get_image_size( $settings['image_size'] ); if ( 'custom' !== $settings['image_size'] && 'full' !== $settings['image_size'] && ! empty( $thumb_size ) ) { $custom_image_size = $settings['image_size']; $style_attr = ' style="width:' . esc_attr( $thumb_size[0] ) . 'px; height:' . esc_attr( $thumb_size[1] ) . 'px;"'; } else { $style_attr = ' style="width:' . esc_attr( $custom_image_size['width'] ) . 'px; height:' . esc_attr( $custom_image_size['height'] ) . 'px;"'; } $image_output = '<div class="info-svg-wrapper"' . $style_attr . '>' . woodmart_get_svg_html( $settings['image']['id'], $custom_image_size ) . '</div>'; } else { $image_output = '<span class="info-svg-wrapper info-icon" style="width:' . esc_attr( $custom_image_size['width'] ) . 'px; height:' . esc_attr( $custom_image_size['height'] ) . 'px;">' . woodmart_get_any_svg( $settings['image']['url'], $rand ) . '</span>'; } } } ?> <div class="info-box-wrapper<?php echo esc_attr( $settings['extra_classes'] ); ?>"> <?php woodmart_enqueue_inline_style( 'info-box' ); if ( 'border' === $settings['style'] ) { woodmart_enqueue_inline_style( 'info-box-style-brd' ); } elseif ( in_array( $settings['style'], array( 'shadow', 'bg-hover' ), true ) ) { woodmart_enqueue_inline_style( 'info-box-style-shadow-and-bg-hover' ); } if ( $settings['btn_text'] && 'hover' === $settings['btn_position'] ) { woodmart_enqueue_inline_style( 'info-box-btn-hover' ); } ?> <div class="wd-info-box<?php echo esc_attr( $wrapper_classes ); ?>"> <?php if ( $image_output || $settings['icon_text'] ) : ?> <div class="box-icon-wrapper <?php echo esc_attr( $icon_classes ); ?>"> <div class="info-box-icon"> <?php if ( 'icon' === $settings['icon_type'] ) : ?> <?php echo $image_output; // phpcs:ignore. ?> <?php else : ?> <?php echo esc_attr( $settings['icon_text'] ); ?> <?php endif; ?> </div> </div> <?php endif; ?> <div class="info-box-content"> <?php if ( $settings['subtitle'] ) : ?> <?php woodmart_enqueue_inline_style( 'el-subtitle-style' ); ?> <div class="info-box-subtitle<?php echo esc_attr( $subtitle_classes ); ?>" data-elementor-setting-key="subtitle"> <?php echo nl2br( $settings['subtitle'] ); // phpcs:ignore. ?> </div> <?php endif; ?> <?php if ( $settings['title'] ) : ?> <<?php echo esc_attr( $title_tag ); ?> class="info-box-title title<?php echo esc_attr( $title_classes ); ?>" data-elementor-setting-key="title"> <?php echo nl2br( $settings['title'] ); // phpcs:ignore. ?> </<?php echo esc_attr( $title_tag ); ?>> <?php endif; ?> <div class="info-box-inner reset-last-child<?php echo esc_attr( $content_classes ); ?>"data-elementor-setting-key="content"><?php echo do_shortcode( wpautop( $settings['content'] ) ); ?></div> <?php if ( $settings['btn_text'] ) : ?> <div class="info-btn-wrapper"> <?php woodmart_elementor_button_template( array( 'title' => $settings['btn_text'], 'color' => $settings['btn_color'], 'style' => $settings['btn_style'], 'size' => $settings['btn_size'], 'align' => $settings['alignment'], 'shape' => $settings['btn_shape'], 'text' => $settings['btn_text'], 'inline_edit' => false, 'icon_type' => $settings['btn_icon_type'], 'image' => $settings['btn_image'], 'icon' => $settings['btn_icon'], 'icon_position' => $settings['btn_icon_position'], 'image_size' => $settings['btn_image_size'], 'image_custom_dimension' => $settings['btn_image_custom_dimension'], ) + $settings ); ?> </div> <?php endif; ?> </div> <?php if ( $settings['link'] && $settings['link']['url'] && ! $settings['btn_text'] ) : ?> <a <?php echo $element->get_render_attribute_string( 'link' ); // phpcs:ignore ?>></a> <?php endif; ?> </div> </div> <?php } }
[-] infobox.php
[edit]
[-] class-infobox-carousel.php
[edit]
[-] class-infobox.php
[edit]
[+]
..