trAvis - MANAGER
Edit File: tp_social_reviews.php
<?php /* Widget Name: Social Reviews Description: Social Reviews Author: Theplus Author URI: http://posimyththemes.com */ namespace TheplusAddons\Widgets; use Elementor\Widget_Base; use Elementor\Controls_Manager; use Elementor\Utils; use Elementor\Core\Schemes\Color; use Elementor\Group_Control_Typography; use Elementor\Group_Control_Text_Shadow; use Elementor\Core\Schemes\Typography; use Elementor\Group_Control_Background; use Elementor\Group_Control_Image_Size; use Elementor\Group_Control_Border; use Elementor\Group_Control_Box_Shadow; use TheplusAddons\Theplus_Element_Load; if (!defined('ABSPATH')) exit; // Exit if accessed directly class ThePlus_Social_Reviews extends Widget_Base { public function get_name() { return 'tp-social-reviews'; } public function get_title() { return esc_html__('Social Reviews', 'theplus'); } public function get_icon() { return 'fa fa-star-o theplus_backend_icon'; } public function get_categories() { return array('plus-essential'); } protected function _register_controls() { /* Content Tab Start */ $this->start_controls_section( 'content_section', [ 'label' => esc_html__( 'Content', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'RType', [ 'label' => esc_html__( 'Type', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'review', 'options' => [ 'review' => esc_html__( 'Reviews', 'theplus' ), 'beach' => esc_html__( 'Badge', 'theplus' ), ], ] ); $this->add_control( 'style', [ 'label' => esc_html__( 'Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'style-1', 'options' => [ 'style-1' => esc_html__( 'Style-1', 'theplus' ), 'style-2' => esc_html__( 'Style-2', 'theplus' ), 'style-3' => esc_html__( 'Style-3', 'theplus' ), ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'layoutstyle2', [ 'label' => esc_html__( 'Style layout', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'layout-1', 'options' => [ 'layout-1' => esc_html__( 'layout-1', 'theplus' ), 'layout-2' => esc_html__( 'layout-2', 'theplus' ), ], 'condition' => [ 'RType' => 'review', 'style' => 'style-2', ], ] ); $this->add_control( 'layout', [ 'label' => esc_html__( 'Layout', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'grid', 'options' => [ 'grid' => esc_html__( 'Grid', 'theplus' ), 'masonry' => esc_html__( 'Masonry', 'theplus' ), 'carousel' => esc_html__( 'Carousel', 'theplus' ), ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'Bstyle', [ 'label' => esc_html__( 'Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'style-1', 'options' => [ 'style-1' => esc_html__( 'Style-1', 'theplus' ), 'style-2' => esc_html__( 'Style-2', 'theplus' ), 'style-3' => esc_html__( 'Style-3', 'theplus' ), ], 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'BType', [ 'label' => esc_html__( 'Source', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'b-facebook', 'options' => [ 'b-facebook' => esc_html__( 'Facebook', 'theplus' ), 'b-google' => esc_html__( 'Google', 'theplus' ), ], 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'BeachFacebookButton', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => '<a class="tp-beach-fb-button" id="tp-beach-fb-button" ><i class="fa fa-facebook-official" aria-hidden="true"></i>Generate Access Token</a>', 'content_classes' => 'tp-beach-fb-btn', 'label_block'=>true, 'condition' => [ 'RType' => 'beach', 'BType' => 'b-facebook', ], ] ); $this->add_control( 'BTypeFacebook', [ 'label' => esc_html__( 'Facebook Review', 'theplus' ), 'type' => Controls_Manager::TEXT, 'rows' => 5, 'default' => esc_html__( 'Facebook Reviews', 'theplus' ), 'placeholder' => esc_html__( 'Enter TEXT', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', 'BType' => 'b-facebook', ], ] ); $this->add_control( 'BTypeGoogle', [ 'label' => esc_html__( 'Google Review', 'theplus' ), 'type' => Controls_Manager::TEXT, 'rows' => 5, 'default' => esc_html__( 'Google Reviews', 'theplus' ), 'placeholder' => esc_html__( 'Enter TEXT', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', 'BType' => 'b-google', ], ] ); $this->add_control( 'BToken', [ 'label' => esc_html__( 'Access Token', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 5, 'default' => '', 'placeholder' => esc_html__( 'Enter Value', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'B_TokenGoogle', [ 'type' => \Elementor\Controls_Manager::RAW_HTML, 'raw' => 'Note : How to <a href="https://console.cloud.google.com/apis/credentials" target="_blank" rel="noopener noreferrer">(Create Token ?)</a>', 'content_classes' => 'tp-widget-description', 'condition' => [ 'RType' => 'beach', 'BType' => 'b-google', ], ] ); $this->add_control( 'BPPId', [ 'label' => esc_html__( 'Page/Place Id', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'B_TokenPlaceId', [ 'type' => \Elementor\Controls_Manager::RAW_HTML, 'raw' => 'Note : How to <a href="https://developers.google.com/places/web-service/place-id" target="_blank" rel="noopener noreferrer">(Place Id ?)</a>', 'content_classes' => 'tp-widget-description', 'condition' => [ 'RType' => 'beach', 'BType' => 'b-google', ], ] ); $repeater = new \Elementor\Repeater(); $repeater->add_control( 'ReviewsType',[ 'label' => esc_html__( 'Source','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'facebook', 'options' => [ 'facebook' => esc_html__( 'Facebook','theplus' ), 'google' => esc_html__( 'Google','theplus' ), 'manual' => esc_html__( 'Manual','theplus' ), ], ] ); $repeater->add_control('GLanguage', [ 'label'=>__('Language','theplus'), 'type'=>Controls_Manager::SELECT, 'default'=>'en', 'options'=>[ 'af'=>__('Afrikaans','theplus'), 'sq'=>__('Albanian','theplus'), 'am'=>__('Amharic','theplus'), 'ar'=>__('Arabic','theplus'), 'hy'=>__('Armenian','theplus'), 'az'=>__('Azerbaijani','theplus'), 'eu'=>__('Basque','theplus'), 'be'=>__('Belarusian','theplus'), 'bn'=>__('Bengali','theplus'), 'bs'=>__('Bosnian','theplus'), 'bg'=>__('Bulgarian','theplus'), 'my'=>__('Burmese','theplus'), 'ca'=>__('Catalan','theplus'), 'zh'=>__('Chinese','theplus'), 'zh-CN'=>__('Chinese (Simplified)','theplus'), 'zh-HK'=>__('Chinese (Hong Kong)','theplus'), 'zh-TW'=>__('Chinese (Traditional)','theplus'), 'hr'=>__('Croatian','theplus'), 'cs'=>__('Czech','theplus'), 'da'=>__('Danish','theplus'), 'nl'=>__('Dutch','theplus'), 'en'=>__('English','theplus'), 'en-AU'=>__('English (Australian)','theplus'), 'en-GB'=>__('English (Great Britain)','theplus'), 'et'=>__('Estonian','theplus'), 'fa'=>__('Farsi','theplus'), 'fi'=>__('Finnish','theplus'), 'fil'=>__('Filipino','theplus'), 'fr'=>__('French','theplus'), 'fr-CA'=>__('French (Canada)','theplus'), 'gl'=>__('Galician','theplus'), 'ka'=>__('Georgian','theplus'), 'de'=>__('German','theplus'), 'el'=>__('Greek','theplus'), 'gu'=>__('Gujarati','theplus'), 'iw'=>__('Hebrew','theplus'), 'hi'=>__('Hindi','theplus'), 'hu'=>__('Hungarian','theplus'), 'is'=>__('Icelandic','theplus'), 'id'=>__('Indonesian','theplus'), 'it'=>__('Italian','theplus'), 'ja'=>__('Japanese','theplus'), 'kn'=>__('Kannada','theplus'), 'kk'=>__('Kazakh','theplus'), 'km'=>__('Khmer','theplus'), 'ko'=>__('Korean','theplus'), 'ky'=>__('Kyrgyz','theplus'), 'lo'=>__('Lao','theplus'), 'lv'=>__('Latvian','theplus'), 'lt'=>__('Lithuanian','theplus'), 'mk'=>__('Macedonian','theplus'), 'ms'=>__('Malay','theplus'), 'ml'=>__('Malayalam','theplus'), 'mr'=>__('Marathi','theplus'), 'mn'=>__('Mongolian','theplus'), 'ne'=>__('Nepali','theplus'), 'no'=>__('Norwegian','theplus'), 'pl'=>__('Polish','theplus'), 'pt'=>__('Portuguese','theplus'), 'pt-BR'=>__('Portuguese (Brazil)','theplus'), 'pt-PT'=>__('Portuguese (Portugal)','theplus'), 'pa'=>__('Punjabi','theplus'), 'ro'=>__('Romanian','theplus'), 'ru'=>__('Russian','theplus'), 'sr'=>__('Serbian','theplus'), 'si'=>__('Sinhalese','theplus'), 'sk'=>__('Slovak','theplus'), 'sl'=>__('Slovenian','theplus'), 'es'=>__('Spanish','theplus'), 'es-419'=>__('Spanish (Latin America)','theplus'), 'sw'=>__('Swahili','theplus'), 'sv'=>__('Swedish','theplus'), 'ta'=>__('Tamil','theplus'), 'te'=>__('Telugu','theplus'), 'th'=>__('Thai','theplus'), 'tr'=>__('Turkish','theplus'), 'uk'=>__('Ukrainian','theplus'), 'ur'=>__('Urdu','theplus'), 'uz'=>__('Uzbek','theplus'), 'vi'=>__('Vietnamese','theplus'), 'zu'=>__('Zulu','theplus'), ], 'condition' => [ 'ReviewsType' => 'google', ], ] ); $repeater->add_control( 'FacebookButton', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => '<a class="tp-review-fb-button" id="tp-review-fb-button" ><i class="fa fa-facebook-official" aria-hidden="true"></i>Generate Access Token</a>', 'content_classes' => 'tp-review-fb-btn', 'label_block'=>true, 'condition' => [ 'ReviewsType' => 'facebook', ], ] ); $repeater->add_control( 'Token', [ 'label' => esc_html__( 'Access Token', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 5, 'default' => '', 'placeholder' => esc_html__( 'Enter Value', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType!' => 'manual', ], ] ); $repeater->add_control( 'FbPageId', [ 'label' => esc_html__( 'Page/Place ID', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'facebook', ], ] ); $repeater->add_control( 'FbRType',[ 'label' => esc_html__( 'Result Type','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'default', 'options' => [ 'default' => esc_html__( 'Default','theplus' ), 'negative' => esc_html__( 'Negative','theplus' ), 'positive' => esc_html__( 'Positive','theplus' ), ], 'condition' => [ 'ReviewsType' => 'facebook', ], ] ); $repeater->add_control( 'TokenGoogle', [ 'type' => \Elementor\Controls_Manager::RAW_HTML, 'raw' => 'Note : How to <a href="https://console.cloud.google.com/apis/credentials" target="_blank" rel="noopener noreferrer">(Create Token ?)</a>', 'content_classes' => 'tp-widget-description', 'condition' => [ 'ReviewsType' => 'google', ], ] ); $repeater->add_control( 'GPlaceID', [ 'label' => esc_html__( 'Page/Place ID', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'google', ], ] ); $repeater->add_control( 'TokenPlaceId', [ 'type' => \Elementor\Controls_Manager::RAW_HTML, 'raw' => 'Note : How to <a href="https://developers.google.com/places/web-service/place-id" target="_blank" rel="noopener noreferrer">(Place Id ?)</a>', 'content_classes' => 'tp-widget-description', 'condition' => [ 'ReviewsType' => 'google', ], ] ); $repeater->add_control( 'CUImg', [ 'label' => esc_html__( 'User Profile Image', 'theplus' ), 'type' => \Elementor\Controls_Manager::GALLERY, 'dynamic' => ['active' => true], 'default' => [ 'url' => \Elementor\Utils::get_placeholder_image_src(), ], 'condition' => [ 'ReviewsType' => 'manual', ], 'separator' => 'after', ] ); $repeater->add_control( 'Cuname', [ 'label' => esc_html__( 'Username', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 2, 'placeholder' => esc_html__( 'Enter Username', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'manual', ], ] ); $repeater->add_control( 'Cmassage', [ 'label' => esc_html__( 'Review Message', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 2, 'placeholder' => esc_html__( 'Enter Message', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'manual', ], ] ); $repeater->add_control( 'CPFname',[ 'label' => esc_html__( 'Platform','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'facebook', 'options' => [ 'facebook' => esc_html__( 'Facebook','theplus' ), 'google' => esc_html__( 'Google','theplus' ), 'manual' => esc_html__( 'Manual','theplus' ), ], 'condition' => [ 'ReviewsType' => 'manual', ], ] ); $repeater->add_control( 'CcuSname', [ 'label' => esc_html__( 'Platform Name', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'manual', 'CPFname' => 'manual', ], ] ); $repeater->add_control( 'CImg', [ 'label' => esc_html__( 'Platform Logo', 'theplus' ), 'type' => Controls_Manager::MEDIA, 'dynamic' => ['active' => true,], 'default' => [ 'url' => '', ], 'condition' => [ 'ReviewsType' => 'manual', 'CPFname' => 'manual', ], ] ); $repeater->add_control( 'Cdate', [ 'label' => esc_html__( 'Date', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 2, 'placeholder' => esc_html__( 'Enter Date', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'manual', ], ] ); $repeater->add_control( 'Cstar', [ 'label' => esc_html__( 'Rating Value (1-5)', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 2, 'placeholder' => esc_html__( 'Enter Value', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ReviewsType' => 'manual', ], ] ); $repeater->add_control( 'icons', [ 'label' => esc_html__( 'Rating Icon', 'theplus' ), 'type' => Controls_Manager::ICONS, 'default' => [ 'value' => 'fas fa-star', 'library' => 'solid', ], ] ); $repeater->add_control( 'RCategory', [ 'label' => esc_html__( 'Category (For Filter)', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'placeholder' => esc_html__( 'e.g. Category1, Category2', 'theplus' ), 'label_block' => true, ] ); $repeater->add_control( 'MaxR', [ 'label' => esc_html__( 'Max Results', 'theplus' ), 'type' => Controls_Manager::NUMBER, 'min' => 1, 'max' => 50, 'step' => 1, 'default' => 6, ] ); $this->add_control( 'Rreviews', [ 'label' => esc_html__( 'Social Reviews', 'theplus' ), 'type' => Controls_Manager::REPEATER, 'default' => [ [ 'ReviewsType' => 'facebook', 'MaxR' => 6, 'CUImg' => ['url' => \Elementor\Utils::get_placeholder_image_src(),], ], ], 'separator' => 'before', 'fields' => $repeater->get_controls(), 'title_field' => '{{{ ReviewsType }}}', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_section(); /*Content Tab End */ /*Reviews Option Start */ $this->start_controls_section( 'review_optn_section', [ 'label' => esc_html__( 'Review Option', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FBNagative',[ 'label' => esc_html__( 'Negative Review Stars','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'options' => [ '1' => esc_html__( '1','theplus' ), '2' => esc_html__( '2','theplus' ), '3' => esc_html__( '3','theplus' ), '4' => esc_html__( '4','theplus' ), ], 'condition' => [ 'RType' => 'review', ], 'description' => 'Note : In Facebook Reviews, You can set value of stars you want to show for negative review you got.' ] ); $this->add_control( 'ShowFeedId', [ 'label' => esc_html__( 'Display Id & Exclude', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => '', ] ); $this->add_control( 'FeedId', [ 'label' => esc_html__( 'Exclude Post Ids', 'theplus' ), 'type' => Controls_Manager::TEXTAREA, 'rows' => 2, 'default' => '', 'placeholder' => esc_html__( 'Add Ids With A Comma To Exclude', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'ShowFeedId' => 'yes', ], ] ); $this->add_control( 'SRExcldPIdsNote', [ 'type' => \Elementor\Controls_Manager::RAW_HTML, 'raw' => 'Note: By Enabling This Option, You Will See The Post Id Of Each In The Back-end, And Then You Can Use Those To Exclude Posts You Want To.', 'content_classes' => 'tp-widget-description', 'condition' => [ 'ShowFeedId' => 'yes', ], ] ); $this->end_controls_section(); /*Reviews Option End */ /*Badge Options Start */ $this->start_controls_section( 'badge_optn_section', [ 'label' => esc_html__( 'Badge Options', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'Btxt1', [ 'label' => esc_html__( 'Postfix Content', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'Recommended By' , 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_control( 'Btxt2', [ 'label' => esc_html__( 'Prefix Content', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'People' , 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', 'Bstyle!' => 'style-3', ], ] ); $this->add_control( 'BRecommend', [ 'label' => esc_html__( 'Show Recommended', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => 'yes', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_control( 'Blinktxt', [ 'label' => esc_html__( 'Prefix Content Text', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'Would You Recommend' , 'theplus' ), 'dynamic' => [ 'active' => true, ], 'label_block' => true, 'condition' => [ 'RType' => 'beach', 'Bstyle' => 'style-1', 'BRecommend' => 'yes', ], ] ); $this->add_control( 'BSButton', [ 'label' => esc_html__( '(Single | Multiple) Button', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => 'yes', 'condition' => [ 'RType' => 'beach', 'Bstyle' => 'style-1', 'BRecommend' => 'yes', ], ] ); $this->add_control( 'BBtnName', [ 'label' => esc_html__( 'First Button', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'YES', 'theplus' ), 'placeholder' => esc_html__( 'Enter Button Name', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => 'style-1', 'BRecommend' => 'yes', ], ] ); $this->add_control( 'BBtnTName', [ 'label' => esc_html__( 'Second Button', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'NO', 'theplus' ), 'placeholder' => esc_html__( 'Enter Button Name', 'theplus' ), 'dynamic' => [ 'active' => true, ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => 'style-1', 'BRecommend' => 'yes', 'BSButton' => 'yes', ], ] ); $this->add_control( 'IconHidden', [ 'label' => esc_html__( 'Show Icon', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => 'yes', 'condition' => [ 'RType' => 'beach', 'Bstyle' => 'style-2', ], ] ); $this->end_controls_section(); /*Badge Options End */ /*columns start*/ $this->start_controls_section( 'columns_manage_section', [ 'label' => esc_html__( 'Columns Manage', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'desktop_column', [ 'label' => esc_html__( 'Desktop Column', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '3', 'options' => theplus_get_columns_list(), 'condition' => [ 'layout!' => 'carousel', ], ] ); $this->add_control( 'tablet_column', [ 'label' => esc_html__( 'Tablet Column', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '4', 'options' => theplus_get_columns_list(), 'condition' => [ 'layout!' => 'carousel', ], ] ); $this->add_control( 'mobile_column', [ 'label' => esc_html__( 'Mobile Column', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '6', 'options' => theplus_get_columns_list(), 'condition' => [ 'layout!' => 'carousel', ], ] ); $this->add_responsive_control( 'columnSpace', [ 'label' => esc_html__( 'Columns Gap/Space Between', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' =>[ 'top' => "15", 'right' => "15", 'bottom' => "15", 'left' => "15", ], 'separator' => 'before', 'condition' => [ 'layout!' => 'carousel', ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .post-inner-loop .grid-item' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->end_controls_section(); /*columns end*/ /*Filters Option Start*/ $this->start_controls_section( 'filters_optn_section', [ 'label' => esc_html__( 'Filter Option', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'review', 'layout!' => 'carousel', ], ] ); $this->add_control( 'filter_category', [ 'label' => esc_html__( 'Category Wise Filter', 'theplus' ), 'type' => \Elementor\Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Show', 'theplus' ), 'label_off' => esc_html__( 'Hide', 'theplus' ), 'default' => 'no', 'condition' => [ 'layout!' => 'carousel', ], ] ); $this->add_control( 'all_filter_category', [ 'label' => esc_html__( 'All Filter Category Text', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'All', 'theplus' ), 'condition' => [ 'filter_category' => 'yes', 'layout!' => 'carousel', ], ] ); $this->add_control( 'filter_style', [ 'label' => esc_html__( 'Category Filter Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'style-1', 'options' => theplus_get_style_list(4), 'condition' => [ 'filter_category' => 'yes', 'layout!' => 'carousel', ], ] ); $this->add_control( 'filter_hover_style', [ 'label' => esc_html__( 'Filter Hover Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'style-1', 'options' => theplus_get_style_list(4), 'condition' => [ 'filter_category' => 'yes', 'layout!' => 'carousel', ], ] ); $this->add_control( 'filter_category_align', [ 'label' => esc_html__( 'Filter Alignment', 'theplus' ), 'type' => Controls_Manager::CHOOSE, 'options' => [ 'left' => [ 'title' => esc_html__( 'Left', 'theplus' ), 'icon' => 'eicon-text-align-left', ], 'center' => [ 'title' => esc_html__( 'Center', 'theplus' ), 'icon' => 'eicon-text-align-center', ], 'right' => [ 'title' => esc_html__( 'Right', 'theplus' ), 'icon' => 'eicon-text-align-right', ], ], 'default' => 'center', 'toggle' => true, 'label_widget' => false, 'condition' => [ 'filter_category' => 'yes', 'layout!' => 'carousel', ], ] ); $this->end_controls_section(); /*Filters Option End*/ /*Load More/Lazy Load Option start*/ $this->start_controls_section( 'loadmore_lazyload_section', [ 'label' => esc_html__( 'Load More/Lazy Load', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'review', 'layout!' => 'carousel', ], ] ); $this->add_control( 'post_extra_option', [ 'label' => esc_html__( 'More Post Loading', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'none', 'options' => [ 'none' => esc_html__( 'Select Options','theplus' ), 'load_more' => esc_html__( 'Load More','theplus' ), 'lazy_load' => esc_html__( 'Lazy Load','theplus' ), ], 'condition' => [ 'RType' => 'review', 'layout!' => ['carousel'], ], ] ); //load more style $this->add_control( 'display_posts', [ 'label' => esc_html__( 'Maximum Posts Display', 'theplus' ), 'type' => Controls_Manager::NUMBER, 'min' => 1, 'max' => 200, 'step' => 1, 'default' => 8, 'separator' => 'before', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => ['load_more','lazy_load'], ], ] ); $this->add_control( 'load_more_post', [ 'label' => esc_html__( 'More Posts On Click/Scroll', 'theplus' ), 'type' => Controls_Manager::NUMBER, 'min' => 1, 'max' => 30, 'step' => 1, 'default' => 4, 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => ['load_more','lazy_load'], ], ] ); $this->add_control( 'load_more_btn_text', [ 'label' => esc_html__( 'Button Text', 'theplus' ), 'type' => \Elementor\Controls_Manager::TEXT, 'default' => esc_html__( 'Load More', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'tp_loading_text', [ 'label' => esc_html__( 'Loading Text', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'Loading...', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => ['load_more','lazy_load'] ], ] ); $this->add_control( 'loaded_posts_text', [ 'label' => esc_html__( 'All Posts Loaded Text', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'All done!', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => ['load_more','lazy_load'] ], ] ); $this->end_controls_section(); /*Load More/Lazy Load Option end*/ /*Extra options review*/ $this->start_controls_section( 'extrabeach_options_section', [ 'label' => esc_html__( 'Extra Options', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'beach_TimeFrq',[ 'label' => esc_html__( 'Refresh Time','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '86400', 'options' => [ '3600' => esc_html__( '1 hour','theplus' ), '7200' => esc_html__( '2 hour','theplus' ), '21600' => esc_html__( '6 hour','theplus' ), '86400' => esc_html__( '1 day','theplus' ), '604800' => esc_html__( '1 Week','theplus' ), ], 'condition' => [ 'RType' => 'beach', ], ] ); $this->end_controls_section(); /*Extra options review*/ $this->start_controls_section( 'extra_options_section', [ 'label' => esc_html__( 'Extra Options', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'TimeFrq',[ 'label' => esc_html__( 'Refresh Time','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '86400', 'options' => [ '3600' => esc_html__( '1 hour','theplus' ), '7200' => esc_html__( '2 hour','theplus' ), '21600' => esc_html__( '6 hour','theplus' ), '86400' => esc_html__( '1 day','theplus' ), '604800' => esc_html__( '1 Week','theplus' ), ], ] ); $this->add_control( 'TextLimit', [ 'label' => esc_html__( 'Text Limit', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => 'yes', 'separator' => 'before', ] ); $this->add_control( 'TextType',[ 'label' => esc_html__( 'Limit On','theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'char', 'options' => [ 'char' => esc_html__( 'Character','theplus' ), 'word' => esc_html__( 'Word','theplus' ), ], 'condition' => [ 'TextLimit' => 'yes', ], ] ); $this->add_control( 'TextMore', [ 'label' => esc_html__( 'More Text', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'Show More', 'theplus' ), 'condition' => [ 'TextLimit' => 'yes', ], ] ); $this->add_control( 'TextLess', [ 'label' => esc_html__( 'Less Text', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => esc_html__( 'Show Less', 'theplus' ), 'condition' => [ 'TextLimit' => 'yes', ], ] ); $this->add_control( 'TextCount', [ 'label' => esc_html__( 'Limit Count', 'theplus' ), 'type' => Controls_Manager::NUMBER, 'min' => 1, 'max' => 2000, 'step' => 1, 'default' => 100, 'condition' => [ 'TextLimit' => 'yes', ], ] ); $this->add_control( 'TextDots', [ 'label' => esc_html__( 'Display Dots', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => 'yes', 'condition' => [ 'TextLimit' => 'yes', ], ] ); $this->add_control( 'CURLOPT_SSL_VERIFYPEER', [ 'label' => esc_html__( 'Curl SSL Verify Peer', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => 'yes', 'separator' => 'before', ] ); $this->add_control( 'ScrollOn', [ 'label' => esc_html__( 'Content Scrolling Bar', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => '', 'separator' => 'before', ] ); $this->add_responsive_control( 'ScrollHgt', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Height', 'theplus'), 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 1, 'max' => 500, 'step' => 10, ], ], 'default' => [ 'unit' => 'px', 'size' => 100, ], 'render_type' => 'ui', 'condition' => [ 'ScrollOn' => 'yes', ], ] ); $this->end_controls_section(); /* Extra options end*/ /*Performance Start*/ $this->start_controls_section( 'performance_options_section', [ 'label' => esc_html__( 'Performance', 'theplus' ), 'tab' => Controls_Manager::TAB_CONTENT, ] ); $this->add_control( 'perf_manage', [ 'label' => esc_html__( 'Performance', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Enable', 'theplus' ), 'label_off' => esc_html__( 'Disable', 'theplus' ), 'default' => '', ] ); $this->add_control( 'SF_delete_transient', [ 'type' => Controls_Manager::RAW_HTML, 'raw' => '<span>Delete All Transient </span><a class="tp-SReview-delete-transient" id="tp-SReview-delete-transient" > Delete </a>', 'content_classes' => 'tp-SReview-delete-transient-btn', 'label_block' => true, ] ); $this->end_controls_section(); /*Performance End*/ /*Universal Options Start*/ $this->start_controls_section( 'Unisl_optn_stl_section', [ 'label' => esc_html__( 'Universal', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'UnnameTypo', 'label' => esc_html__( 'Username Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-username a', 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'UnMsgTypo', 'label' => esc_html__( 'Message Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-content', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'UnPostOnTypo', 'label' => esc_html__( 'Post On Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-logotext', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'UnTimeTypo', 'label' => esc_html__( 'Time Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-time', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'UnTitleTypo', 'label' => esc_html__( 'Title Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .tp-SR-title', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->start_controls_tabs( 'unisl_color_style' ); $this->start_controls_tab( 'unisl_optn_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-logotext .tp-newline:nth-child(n)' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'UnTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnTitleNCr', [ 'label' => esc_html__( 'Title Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'BoxNlable', [ 'label' => esc_html__( 'Box Background Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_responsive_control( 'BgBoxNpd', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .grid-item .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'UnNBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'UnB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'UnNBRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'UnNBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'unisl_optn_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnHnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item:hover .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnHMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item:hover .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnHPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item:hover .tp-SR-logotext .tp-newline:nth-child(n)' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'UnHTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item:hover .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'UnTitleHCr', [ 'label' => esc_html__( 'Title text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item:hover .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'BoxHlable', [ 'label' => esc_html__( 'Box Background Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_responsive_control( 'BgBoxHpd', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .grid-item:hover .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'UnHBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review:hover', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'UnHB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review:hover', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'UnHBRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-review:hover' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'UnHBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review:hover', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->start_controls_tabs( 'unitop_color_style' ); $this->start_controls_tab( 'unisl_optnR_top', [ 'label' => esc_html__( 'Top', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'topBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-header', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'topB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-header', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'unisl_optnR_btm', [ 'label' => esc_html__( 'Bottom', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'BottomBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-bottom', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'BottomB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-bottom', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'BottomPostCr', [ 'label' => esc_html__( 'Posted On Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-newline:nth-child(1)' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'BottomPltCr', [ 'label' => esc_html__( 'Platform Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-newline:nth-child(2)' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'unisl_optn_Icon', [ 'label' => esc_html__( 'Icon', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'Starpadding', [ 'label' => esc_html__( 'Star Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-star' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'StarIconCr', [ 'label' => esc_html__( 'Icon Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-star .SR-star' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'StarIconspace', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Icon space', 'theplus'), 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], ], 'default' => [ 'unit' => 'px', 'size' => '', ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-star .SR-star' => 'width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'StarIconsize', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Icon size', 'theplus'), 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], ], 'default' => [ 'unit' => 'px', 'size' => '', ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-star .SR-star' => 'font-size: {{SIZE}}{{UNIT}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_control( 'UserNameArea', [ 'label' => esc_html__( 'Username Area', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_responsive_control( 'Unnamemargin', [ 'label' => esc_html__( 'Username Margin', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-username' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'Unnamepadding', [ 'label' => esc_html__( 'Username Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-username' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'ProfileArea', [ 'label' => esc_html__( 'Profile Image', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'OverlayImage', [ 'label' => esc_html__( 'Overlay Image', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'OverlayImgLeft', [ 'label' => __( 'Image Position', 'plugin-domain' ), 'type' => Controls_Manager::SLIDER, 'size_units' => [ 'px', '%' ], 'range' => [ 'px' => [ 'min' => -100, 'max' => 100, 'step' => 5, ], '%' => [ 'min' => -100, 'max' => 100, ], ], 'default' => [ 'unit' => 'px', 'size' => '', ], 'selectors' => [ '{{WRAPPER}} .social-reviews-style-1.overlayimage img.tp-SR-profile' => 'left: {{SIZE}}{{UNIT}};', '{{WRAPPER}} .social-reviews-style-2.overlayimage .tp-SR-profile' => 'top: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', 'OverlayImage' => 'yes', ], ] ); $this->add_group_control( \Elementor\Group_Control_Border::get_type(), [ 'name' => 'border', 'label' => __( 'Profile Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-profile', ] ); $this->add_responsive_control( 'BgPRs', [ 'label' => esc_html__( 'Profile Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-profile' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( \Elementor\Group_Control_Box_Shadow::get_type(), [ 'name' => 'box_shadow', 'label' => __( 'Profile Box Shadow', 'plugin-domain' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-SR-profile', ] ); $this->add_responsive_control( 'BgHpd', [ 'label' => esc_html__( 'Header Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-header' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'BgBpd', [ 'label' => esc_html__( 'Content Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'BgFpd', [ 'label' => esc_html__( 'Footer Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-SR-bottom' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], 'separator' => 'before', ] ); $this->end_controls_section(); /* Universal options end */ /* Show More Text Start */ $this->start_controls_section( 'ShW_MTxt_stl_section', [ 'label' => esc_html__( 'Show More Text', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'SmTxtTypo', 'label' => esc_html__( 'Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-message a.readbtn', 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->start_controls_tabs( 'ShW_MTxt_style' ); $this->start_controls_tab( 'ShW_MTxt_NMl', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_control( 'SmTxtNCr', [ 'label' => esc_html__( 'Show More', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-message a.readbtn' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_control( 'SlTxtNCr', [ 'label' => esc_html__( 'Show Less', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-message.show-less a.readbtn' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_control( 'DotTxtNCr', [ 'label' => esc_html__( 'Dot Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-message .sf-dots' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'ShW_MTxt_Hvr', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_control( 'SmTxtHCr', [ 'label' => esc_html__( 'Show More', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-message a.readbtn:hover' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_control( 'SlTxtHCr', [ 'label' => esc_html__( 'Show Less', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-message.show-less a.readbtn:hover' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->add_control( 'DotTxtHCr', [ 'label' => esc_html__( 'Dot Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-message:hover .sf-dots' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'TextLimit' => 'yes', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); /* Show More Text End*/ /* Scroll Text Start*/ $this->start_controls_section( 'scroll_section', [ 'label' => esc_html__( 'Scroll Text', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->start_controls_tabs( 'scrollC_style' ); $this->start_controls_tab( 'scrollC_Bar', [ 'label' => esc_html__( 'Scrollbar', 'theplus' ), 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'ScrollBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar', 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_responsive_control( 'ScrollWidth', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Width', 'theplus'), 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 1, 'max' => 100, 'step' => 1, ], ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar' => 'width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'scrollC_Tmb', [ 'label' => esc_html__( 'Thumb', 'theplus' ), 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'ThumbBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar-thumb', 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_responsive_control( 'ThumbBrs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar-thumb' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'ThumbBsw', 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar-thumb', 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'scrollC_Trk', [ 'label' => esc_html__( 'Track', 'theplus' ), 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'TrackBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar-track', 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_responsive_control( 'TrackBRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar-track' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'TrackBsw', 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-normal-scroll::-webkit-scrollbar-track', 'condition' => [ 'RType' => 'review', 'ScrollOn' => 'yes', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); /* Scroll Text End */ /* Load More/Lazy Load Start*/ $this->start_controls_section( 'LoadMore_style_section', [ 'label' => esc_html__( 'Load More/Lazy Load', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', 'layout!' => 'carousel', 'post_extra_option' => ['load_more','lazy_load'] ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'load_more_typography', 'label' => esc_html__( 'Load More Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .ajax_load_more .post-load-more', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'loaded_posts_typo', 'label' => esc_html__( 'Loaded All Posts Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .plus-all-posts-loaded', 'separator' => 'before', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => ['load_more','lazy_load'], ], ] ); $this->add_control( 'load_more_border', [ 'label' => esc_html__( 'Load More Border', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'Show', 'theplus' ), 'label_off' => esc_html__( 'Hide', 'theplus' ), 'default' => 'no', 'separator' => 'before', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'load_more_border_style', [ 'label' => esc_html__( 'Border Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'solid', 'options' => theplus_get_border_style(), 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more' => 'border-style: {{VALUE}};', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->add_responsive_control( 'load_more_border_width', [ 'label' => esc_html__( 'Border Width', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'default' => [ 'top' => 1, 'right' => 1, 'bottom' => 1, 'left' => 1, ], 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->start_controls_tabs( 'tabs_load_more_border_style' ); $this->start_controls_tab( 'tab_load_more_border_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->add_control( 'load_more_border_color', [ 'label' => esc_html__( 'Border Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#252525', 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more' => 'border-color: {{VALUE}};', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->add_responsive_control( 'load_more_border_radius', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'after', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_load_more_border_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->add_control( 'load_more_border_hover_color', [ 'label' => esc_html__( 'Border Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#252525', 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more:hover' => 'border-color: {{VALUE}};', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->add_responsive_control( 'load_more_border_hover_radius', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more:hover' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'after', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', 'load_more_border' => 'yes', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->start_controls_tabs( 'tabs_load_more_style' ); $this->start_controls_tab( 'tab_load_more_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'load_more_color', [ 'label' => esc_html__( 'Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more' => 'color: {{VALUE}}', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'loaded_posts_color', [ 'label' => esc_html__( 'Loaded Posts Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .plus-all-posts-loaded' => 'color: {{VALUE}}', ], 'separator' => 'after', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => ['load_more','lazy_load'], ], ] ); $this->add_control( 'loading_spin_heading', [ 'label' => esc_html__( 'Loading Spinner ', 'theplus' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'lazy_load', ], ] ); $this->add_control( 'loading_spin_color', [ 'label' => esc_html__( 'Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .ajax_lazy_load .post-lazy-load .tp-spin-ring div' => 'border-color: {{VALUE}} transparent transparent transparent', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'lazy_load', ], ] ); $this->add_responsive_control( 'loading_spin_size', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Size', 'theplus'), 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 1, 'max' => 200, 'step' => 1, ], ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .ajax_lazy_load .post-lazy-load .tp-spin-ring div' => 'width: {{SIZE}}{{UNIT}};height: {{SIZE}}{{UNIT}}', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'lazy_load', ], ] ); $this->add_responsive_control( 'loading_spin_border_size', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Border Size', 'theplus'), 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 1, 'max' => 20, 'step' => 1, ], ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .ajax_lazy_load .post-lazy-load .tp-spin-ring div' => 'border-width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'lazy_load', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'load_more_background', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .ajax_load_more .post-load-more', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'load_more_shadow_options', [ 'label' => esc_html__( 'Box Shadow Options', 'theplus' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'load_more_shadow', 'selector' => '{{WRAPPER}} .ajax_load_more .post-load-more', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_load_more_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'load_more_color_hover', [ 'label' => esc_html__( 'Text Hover Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .ajax_load_more .post-load-more:hover' => 'color: {{VALUE}}', ], 'separator' => 'after', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'load_more_hover_background', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .ajax_load_more .post-load-more:hover', 'separator' => 'after', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_control( 'load_more_shadow_hover_options', [ 'label' => esc_html__( 'Hover Shadow Options', 'theplus' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'load_more_hover_shadow', 'selector' => '{{WRAPPER}} .ajax_load_more .post-load-more:hover', 'condition' => [ 'layout!' => ['carousel'], 'post_extra_option' => 'load_more', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); /* Load More/Lazy Load End */ /* carousel option */ $this->start_controls_section( 'section_carousel_options_styling', [ 'label' => esc_html__('Carousel', 'theplus'), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', 'layout' => 'carousel', ], ] ); $this->add_control( 'slider_direction', [ 'label' => esc_html__( 'Slider Mode', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'horizontal', 'options' => [ 'horizontal' => esc_html__( 'Horizontal', 'theplus' ), 'vertical' => esc_html__( 'Vertical', 'theplus' ), ], ] ); $this->add_control( 'slide_speed', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Slide Speed', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0, 'max' => 10000, 'step' => 100, ], ], 'default' => [ 'unit' => '', 'size' => 1500, ], ] ); $this->start_controls_tabs( 'tabs_carousel_style' ); $this->start_controls_tab( 'tab_carousel_desktop', [ 'label' => esc_html__( 'Desktop', 'theplus' ), ] ); $this->add_control( 'slider_desktop_column', [ 'label' => esc_html__( 'Desktop Columns', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '4', 'options' => theplus_carousel_desktop_columns(), ] ); $this->add_control( 'steps_slide', [ 'label' => esc_html__( 'Next Previous', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'description' => esc_html__( 'Select option of column scroll on previous or next in carousel.','theplus' ), 'options' => [ '1' => esc_html__( 'One Column', 'theplus' ), '2' => esc_html__( 'All Visible Columns', 'theplus' ), ], ] ); $this->add_responsive_control( 'slider_padding', [ 'label' => esc_html__( 'Slide Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' =>[ 'top' => "0", 'right' => "15", 'bottom' => "0", 'left' => "15", ], 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-initialized .slick-slide' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_control( 'slider_draggable', [ 'label' => esc_html__( 'Draggable', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', ] ); $this->add_control( 'slider_infinite', [ 'label' => esc_html__( 'Infinite Mode', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', ] ); $this->add_control( 'slider_pause_hover', [ 'label' => esc_html__( 'Pause On Hover', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', ] ); $this->add_control( 'slider_adaptive_height', [ 'label' => esc_html__( 'Adaptive Height', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', ] ); $this->add_control( 'slider_animation', [ 'label' => esc_html__( 'Animation Type', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'ease', 'options' => [ 'ease' => esc_html__( 'With Hold', 'theplus' ), 'linear' => esc_html__( 'Continuous', 'theplus' ), ], ] ); $this->add_control( 'slider_autoplay', [ 'label' => esc_html__( 'Autoplay', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', ] ); $this->add_control( 'autoplay_speed', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Autoplay Speed', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 500, 'max' => 10000, 'step' => 200, ], ], 'default' => [ 'unit' => '', 'size' => 3000, ], 'condition' => [ 'slider_autoplay' => 'yes', ], ] ); $this->add_control( 'slider_dots', [ 'label' => esc_html__( 'Show Dots', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'separator' => 'before', ] ); $this->add_control( 'slider_dots_style', [ 'label' => esc_html__( 'Dots Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'style-1', 'options' => [ 'style-1' => esc_html__( 'Style 1', 'theplus' ), 'style-2' => esc_html__( 'Style 2', 'theplus' ), 'style-3' => esc_html__( 'Style 3', 'theplus' ), 'style-4' => esc_html__( 'Style 4', 'theplus' ), 'style-5' => esc_html__( 'Style 5', 'theplus' ), 'style-6' => esc_html__( 'Style 6', 'theplus' ), 'style-7' => esc_html__( 'Style 7', 'theplus' ), ], 'condition' => [ 'slider_dots' => ['yes'], ], ] ); $this->add_control( 'dots_border_color', [ 'label' => esc_html__( 'Dots Border Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#252525', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-dots.style-1 li button,{{WRAPPER}} .list-carousel-slick .slick-dots.style-6 li button' => '-webkit-box-shadow:inset 0 0 0 8px {{VALUE}};-moz-box-shadow: inset 0 0 0 8px {{VALUE}};box-shadow: inset 0 0 0 8px {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-dots.style-1 li.slick-active button' => '-webkit-box-shadow:inset 0 0 0 1px {{VALUE}};-moz-box-shadow: inset 0 0 0 1px {{VALUE}};box-shadow: inset 0 0 0 1px {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-dots.style-2 li button' => 'border-color:{{VALUE}};', '{{WRAPPER}} .list-carousel-slick ul.slick-dots.style-3 li button' => '-webkit-box-shadow: inset 0 0 0 1px {{VALUE}};-moz-box-shadow: inset 0 0 0 1px {{VALUE}};box-shadow: inset 0 0 0 1px {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-dots.style-3 li.slick-active button' => '-webkit-box-shadow: inset 0 0 0 8px {{VALUE}};-moz-box-shadow: inset 0 0 0 8px {{VALUE}};box-shadow: inset 0 0 0 8px {{VALUE}};', '{{WRAPPER}} .list-carousel-slick ul.slick-dots.style-4 li button' => '-webkit-box-shadow: inset 0 0 0 0px {{VALUE}};-moz-box-shadow: inset 0 0 0 0px {{VALUE}};box-shadow: inset 0 0 0 0px {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-dots.style-1 li button:before' => 'color: {{VALUE}};', ], 'condition' => [ 'slider_dots_style' => ['style-1','style-2','style-3','style-5'], 'slider_dots' => 'yes', ], ] ); $this->add_control( 'dots_bg_color', [ 'label' => esc_html__( 'Dots Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#fff', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-dots.style-2 li button,{{WRAPPER}} .list-carousel-slick ul.slick-dots.style-3 li button,{{WRAPPER}} .list-carousel-slick .slick-dots.style-4 li button:before,{{WRAPPER}} .list-carousel-slick .slick-dots.style-5 button,{{WRAPPER}} .list-carousel-slick .slick-dots.style-7 button' => 'background: {{VALUE}};', ], 'condition' => [ 'slider_dots_style' => ['style-2','style-3','style-4','style-5','style-7'], 'slider_dots' => 'yes', ], ] ); $this->add_control( 'dots_active_border_color', [ 'label' => esc_html__( 'Dots Active Border Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#000', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-dots.style-2 li::after' => 'border-color: {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-dots.style-4 li.slick-active button' => '-webkit-box-shadow: inset 0 0 0 1px {{VALUE}};-moz-box-shadow: inset 0 0 0 1px {{VALUE}};box-shadow: inset 0 0 0 1px {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-dots.style-6 .slick-active button:after' => 'color: {{VALUE}};', ], 'condition' => [ 'slider_dots_style' => ['style-2','style-4','style-6'], 'slider_dots' => 'yes', ], ] ); $this->add_control( 'dots_active_bg_color', [ 'label' => esc_html__( 'Dots Active Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#000', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-dots.style-2 li::after,{{WRAPPER}} .list-carousel-slick .slick-dots.style-4 li.slick-active button:before,{{WRAPPER}} .list-carousel-slick .slick-dots.style-5 .slick-active button,{{WRAPPER}} .list-carousel-slick .slick-dots.style-7 .slick-active button' => 'background: {{VALUE}};', ], 'condition' => [ 'slider_dots_style' => ['style-2','style-4','style-5','style-7'], 'slider_dots' => 'yes', ], ] ); $this->add_control( 'dots_top_padding', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Dots Top Padding', 'theplus'), 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 0, 'max' => 500, 'step' => 2, ], ], 'default' => [ 'unit' => 'px', 'size' => 0, ], 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-slider.slick-dotted' => 'padding-bottom: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'slider_dots' => 'yes', ], ] ); $this->add_control( 'hover_show_dots', [ 'label' => esc_html__( 'On Hover Dots', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'condition' => [ 'slider_dots' => 'yes', ], ] ); $this->add_control( 'slider_arrows', [ 'label' => esc_html__( 'Show Arrows', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'separator' => 'before', ] ); $this->add_control( 'slider_arrows_style', [ 'label' => esc_html__( 'Arrows Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'style-1', 'options' => [ 'style-1' => esc_html__( 'Style 1', 'theplus' ), 'style-2' => esc_html__( 'Style 2', 'theplus' ), 'style-3' => esc_html__( 'Style 3', 'theplus' ), 'style-4' => esc_html__( 'Style 4', 'theplus' ), 'style-5' => esc_html__( 'Style 5', 'theplus' ), 'style-6' => esc_html__( 'Style 6', 'theplus' ), ], 'condition' => [ 'slider_arrows' => ['yes'], ], ] ); $this->add_control( 'arrows_position', [ 'label' => esc_html__( 'Arrows Style', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'top-right', 'options' => [ 'top-right' => esc_html__( 'Top-Right', 'theplus' ), 'bottm-left' => esc_html__( 'Bottom-Left', 'theplus' ), 'bottom-center' => esc_html__( 'Bottom-Center', 'theplus' ), 'bottom-right' => esc_html__( 'Bottom-Right', 'theplus' ), ], 'condition' => [ 'slider_arrows' => ['yes'], 'slider_arrows_style' => ['style-3','style-4'], ], ] ); $this->add_control( 'arrow_bg_color', [ 'label' => esc_html__( 'Arrow Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#c44d48', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-nav.slick-prev.style-1,{{WRAPPER}} .list-carousel-slick .slick-nav.slick-next.style-1,{{WRAPPER}} .list-carousel-slick .slick-nav.style-3:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-3:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-6:before,{{WRAPPER}} .list-carousel-slick .slick-next.style-6:before' => 'background: {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-prev.style-4:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-4:before' => 'border-color: {{VALUE}};', ], 'condition' => [ 'slider_arrows_style' => ['style-1','style-3','style-4','style-6'], 'slider_arrows' => 'yes', ], ] ); $this->add_control( 'arrow_icon_color', [ 'label' => esc_html__( 'Arrow Icon Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#fff', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-nav.slick-prev.style-1:before,{{WRAPPER}} .list-carousel-slick .slick-nav.slick-next.style-1:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-3:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-3:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-4:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-4:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-6 .icon-wrap' => 'color: {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-prev.style-2 .icon-wrap:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-2 .icon-wrap:after,{{WRAPPER}} .list-carousel-slick .slick-next.style-2 .icon-wrap:before,{{WRAPPER}} .list-carousel-slick .slick-next.style-2 .icon-wrap:after,{{WRAPPER}} .list-carousel-slick .slick-prev.style-5 .icon-wrap:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-5 .icon-wrap:after,{{WRAPPER}} .list-carousel-slick .slick-next.style-5 .icon-wrap:before,{{WRAPPER}} .list-carousel-slick .slick-next.style-5 .icon-wrap:after' => 'background: {{VALUE}};', ], 'condition' => [ 'slider_arrows_style' => ['style-1','style-2','style-3','style-4','style-5','style-6'], 'slider_arrows' => 'yes', ], ] ); $this->add_control( 'arrow_hover_bg_color', [ 'label' => esc_html__( 'Arrow Hover Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#fff', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-nav.slick-prev.style-1:hover,{{WRAPPER}} .list-carousel-slick .slick-nav.slick-next.style-1:hover,{{WRAPPER}} .list-carousel-slick .slick-prev.style-2:hover::before,{{WRAPPER}} .list-carousel-slick .slick-next.style-2:hover::before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-3:hover:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-3:hover:before' => 'background: {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-prev.style-4:hover:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-4:hover:before' => 'border-color: {{VALUE}};', ], 'condition' => [ 'slider_arrows_style' => ['style-1','style-2','style-3','style-4'], 'slider_arrows' => 'yes', ], ] ); $this->add_control( 'arrow_hover_icon_color', [ 'label' => esc_html__( 'Arrow Hover Icon Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '#c44d48', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-nav.slick-prev.style-1:hover:before,{{WRAPPER}} .list-carousel-slick .slick-nav.slick-next.style-1:hover:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-3:hover:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-3:hover:before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-4:hover:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-4:hover:before,{{WRAPPER}} .list-carousel-slick .slick-nav.style-6:hover .icon-wrap' => 'color: {{VALUE}};', '{{WRAPPER}} .list-carousel-slick .slick-prev.style-2:hover .icon-wrap::before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-2:hover .icon-wrap::after,{{WRAPPER}} .list-carousel-slick .slick-next.style-2:hover .icon-wrap::before,{{WRAPPER}} .list-carousel-slick .slick-next.style-2:hover .icon-wrap::after,{{WRAPPER}} .list-carousel-slick .slick-prev.style-5:hover .icon-wrap::before,{{WRAPPER}} .list-carousel-slick .slick-prev.style-5:hover .icon-wrap::after,{{WRAPPER}} .list-carousel-slick .slick-next.style-5:hover .icon-wrap::before,{{WRAPPER}} .list-carousel-slick .slick-next.style-5:hover .icon-wrap::after' => 'background: {{VALUE}};', ], 'condition' => [ 'slider_arrows_style' => ['style-1','style-2','style-3','style-4','style-5','style-6'], 'slider_arrows' => 'yes', ], ] ); $this->add_control( 'outer_section_arrow', [ 'label' => esc_html__( 'Outer Content Arrow', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'condition' => [ 'slider_arrows' => 'yes', 'slider_arrows_style' => ['style-1','style-2','style-5','style-6'], ], ] ); $this->add_control( 'hover_show_arrow', [ 'label' => esc_html__( 'On Hover Arrow', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'condition' => [ 'slider_arrows' => 'yes', ], ] ); $this->add_control( 'slider_center_mode', [ 'label' => esc_html__( 'Center Mode', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'separator' => 'before', ] ); $this->add_control( 'center_padding', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Center Padding', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0, 'max' => 500, 'step' => 2, ], ], 'default' => [ 'unit' => '', 'size' => 0, ], 'condition' => [ 'slider_center_mode' => ['yes'], ], ] ); $this->add_control( 'slider_center_effects', [ 'label' => esc_html__( 'Center Slide Effects', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => 'none', 'options' => theplus_carousel_center_effects(), 'condition' => [ 'slider_center_mode' => ['yes'], ], ] ); $this->add_control( 'scale_center_slide', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Center Slide Scale', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0.3, 'max' => 2, 'step' => 0.02, ], ], 'default' => [ 'unit' => '', 'size' => 1, ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-slide.slick-current.slick-active.slick-center, {{WRAPPER}} .list-carousel-slick .slick-slide.scc-animate' => '-webkit-transform: scale({{SIZE}});-moz-transform: scale({{SIZE}});-ms-transform: scale({{SIZE}});-o-transform: scale({{SIZE}});transform:scale({{SIZE}});opacity:1;', ], 'condition' => [ 'slider_center_mode' => 'yes', 'slider_center_effects' => 'scale', ], ] ); $this->add_control( 'scale_normal_slide', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Normal Slide Scale', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0.3, 'max' => 2, 'step' => 0.02, ], ], 'default' => [ 'unit' => '', 'size' => 0.8, ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-slide' => '-webkit-transform: scale({{SIZE}});-moz-transform: scale({{SIZE}});-ms-transform: scale({{SIZE}});-o-transform: scale({{SIZE}});transform:scale({{SIZE}});transition: .3s all linear;', ], 'condition' => [ 'slider_center_mode' => 'yes', 'slider_center_effects' => 'scale', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'shadow_active_slide', 'selector' => '{{WRAPPER}} .list-carousel-slick .slick-slide.slick-current.slick-active.slick-center .blog-list-content', 'condition' => [ 'slider_center_mode' => 'yes', 'slider_center_effects' => 'shadow', ], ] ); $this->add_control( 'opacity_normal_slide', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Normal Slide Opacity', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0.1, 'max' => 1, 'step' => 0.1, ], ], 'default' => [ 'unit' => '', 'size' => 0.7, ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .list-carousel-slick .slick-slide' => 'opacity:{{SIZE}}', ], 'condition' => [ 'slider_center_mode' => 'yes', 'slider_center_effects!' => 'none', ], ] ); $this->add_control( 'slider_rows', [ 'label' => esc_html__( 'Number Of Rows', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'options' => [ "1" => esc_html__("1 Row", 'theplus'), "2" => esc_html__("2 Rows", 'theplus'), "3" => esc_html__("3 Rows", 'theplus'), ], 'separator' => 'before', ] ); $this->add_control( 'slide_row_top_space', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Row Top Space', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0, 'max' => 500, 'step' => 2, ], ], 'default' => [ 'unit' => '', 'size' => 15, ], 'selectors' => [ '{{WRAPPER}} .list-carousel-slick[data-slider_rows="2"] .slick-slide > div:last-child,{{WRAPPER}} .list-carousel-slick[data-slider_rows="3"] .slick-slide > div:nth-last-child(-n+2)' => 'padding-top:{{SIZE}}px', ], 'condition' => [ 'slider_rows' => ['2','3'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_carousel_tablet', [ 'label' => esc_html__( 'Tablet', 'theplus' ), ] ); $this->add_control( 'slider_tablet_column', [ 'label' => esc_html__( 'Tablet Columns', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '3', 'options' => theplus_carousel_tablet_columns(), ] ); $this->add_control( 'tablet_steps_slide', [ 'label' => esc_html__( 'Next Previous', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'description' => esc_html__( 'Select option of column scroll on previous or next in carousel.','theplus' ), 'options' => [ '1' => esc_html__( 'One Column', 'theplus' ), '2' => esc_html__( 'All Visible Columns', 'theplus' ), ], ] ); $this->add_control( 'slider_responsive_tablet', [ 'label' => esc_html__( 'Responsive Tablet', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', ] ); $this->add_control( 'tablet_slider_draggable', [ 'label' => esc_html__( 'Draggable', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_slider_infinite', [ 'label' => esc_html__( 'Infinite Mode', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_slider_autoplay', [ 'label' => esc_html__( 'Autoplay', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_autoplay_speed', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Autoplay Speed', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 500, 'max' => 10000, 'step' => 200, ], ], 'default' => [ 'unit' => '', 'size' => 1500, ], 'condition' => [ 'slider_responsive_tablet' => 'yes', 'tablet_slider_autoplay' => 'yes', ], ] ); $this->add_control( 'tablet_slider_dots', [ 'label' => esc_html__( 'Show Dots', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_slider_arrows', [ 'label' => esc_html__( 'Show Arrows', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_slider_rows', [ 'label' => esc_html__( 'Number Of Rows', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'options' => [ "1" => esc_html__("1 Row", 'theplus'), "2" => esc_html__("2 Rows", 'theplus'), "3" => esc_html__("3 Rows", 'theplus'), ], 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_center_mode', [ 'label' => esc_html__( 'Center Mode', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'separator' => 'before', 'condition' => [ 'slider_responsive_tablet' => 'yes', ], ] ); $this->add_control( 'tablet_center_padding', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Center Padding', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0, 'max' => 500, 'step' => 2, ], ], 'default' => [ 'unit' => '', 'size' => 0, ], 'condition' => [ 'slider_responsive_tablet' => 'yes', 'tablet_center_mode' => ['yes'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_carousel_mobile', [ 'label' => esc_html__( 'Mobile', 'theplus' ), ] ); $this->add_control( 'slider_mobile_column', [ 'label' => esc_html__( 'Mobile Columns', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '2', 'options' => theplus_carousel_mobile_columns(), ] ); $this->add_control( 'mobile_steps_slide', [ 'label' => esc_html__( 'Next Previous', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'description' => esc_html__( 'Select option of column scroll on previous or next in carousel.','theplus' ), 'options' => [ '1' => esc_html__( 'One Column', 'theplus' ), '2' => esc_html__( 'All Visible Columns', 'theplus' ), ], ] ); $this->add_control( 'slider_responsive_mobile', [ 'label' => esc_html__( 'Responsive Mobile', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', ] ); $this->add_control( 'mobile_slider_draggable', [ 'label' => esc_html__( 'Draggable', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_slider_infinite', [ 'label' => esc_html__( 'Infinite Mode', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_slider_autoplay', [ 'label' => esc_html__( 'Autoplay', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_autoplay_speed', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Autoplay Speed', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 500, 'max' => 10000, 'step' => 200, ], ], 'default' => [ 'unit' => '', 'size' => 1500, ], 'condition' => [ 'slider_responsive_mobile' => 'yes', 'mobile_slider_autoplay' => 'yes', ], ] ); $this->add_control( 'mobile_slider_dots', [ 'label' => esc_html__( 'Show Dots', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'yes', 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_slider_arrows', [ 'label' => esc_html__( 'Show Arrows', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_slider_rows', [ 'label' => esc_html__( 'Number Of Rows', 'theplus' ), 'type' => Controls_Manager::SELECT, 'default' => '1', 'options' => [ "1" => esc_html__("1 Row", 'theplus'), "2" => esc_html__("2 Rows", 'theplus'), "3" => esc_html__("3 Rows", 'theplus'), ], 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_center_mode', [ 'label' => esc_html__( 'Center Mode', 'theplus' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => esc_html__( 'On', 'theplus' ), 'label_off' => esc_html__( 'Off', 'theplus' ), 'default' => 'no', 'separator' => 'before', 'condition' => [ 'slider_responsive_mobile' => 'yes', ], ] ); $this->add_control( 'mobile_center_padding', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Center Padding', 'theplus'), 'size_units' => '', 'range' => [ '' => [ 'min' => 0, 'max' => 500, 'step' => 2, ], ], 'default' => [ 'unit' => '', 'size' => 0, ], 'condition' => [ 'slider_responsive_mobile' => 'yes', 'mobile_center_mode' => ['yes'], ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_control( 'carousel_unique_id', [ 'label' => esc_html__( 'Unique Carousel ID', 'theplus' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'separator' => 'after', 'description' => esc_html__('Keep this blank or Setup Unique id for carousel which you can use with "Carousel Remote" widget.','theplus'), ] ); $this->end_controls_section(); /*carousel option*/ /*Filter Category style*/ $this->start_controls_section( 'section_filter_category_styling', [ 'label' => esc_html__('Filter Category', 'theplus'), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', 'layout!' => 'carousel', 'filter_category' => 'yes', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'filter_category_typography', 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters li a,{{WRAPPER}} .pt-plus-filter-post-category .category-filters.style-1 li a.all span.all_post_count', 'separator' => 'after', ] ); $this->add_responsive_control( 'filter_category_padding', [ 'label' => esc_html__( 'Inner Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-1 li a span:not(.all_post_count),{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count),{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)::before,{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-3 li a,{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-4 li a' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'filter_category_marign', [ 'label' => esc_html__( 'Margin', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters li' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'after', ] ); $this->add_control( 'filters_text_color', [ 'label' => esc_html__( 'Filters Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'separator' => 'after', 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .post-filter-data.style-4 .filters-toggle-link' => 'color: {{VALUE}}', '{{WRAPPER}} .pt-plus-filter-post-category .post-filter-data.style-4 .filters-toggle-link line,{{WRAPPER}} .pt-plus-filter-post-category .post-filter-data.style-4 .filters-toggle-link circle,{{WRAPPER}} .pt-plus-filter-post-category .post-filter-data.style-4 .filters-toggle-link polyline' => 'stroke: {{VALUE}}', ], 'condition' => [ 'filter_style' => ['style-4'], ], ] ); $this->start_controls_tabs( 'tabs_filter_color_style' ); $this->start_controls_tab( 'tab_filter_category_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), ] ); $this->add_control( 'filter_category_color', [ 'label' => esc_html__( 'Category Filter Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'separator' => 'after', 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters li a' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'filter_category_4_border_color', [ 'label' => esc_html__( 'Border Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'separator' => 'after', 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-4 li a:before' => 'border-top-color: {{VALUE}}', ], 'condition' => [ 'filter_hover_style' => ['style-4'], ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'filter_category_background', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count),{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-4 li a:after', 'separator' => 'before', 'condition' => [ 'filter_hover_style' => ['style-2','style-4'], ], ] ); $this->add_responsive_control( 'filter_category_radius', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', 'condition' => [ 'filter_hover_style' => 'style-2', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'filter_category_shadow', 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)', 'separator' => 'before', 'condition' => [ 'filter_hover_style' => 'style-2', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_filter_category_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), ] ); $this->add_control( 'filter_category_hover_color', [ 'label' => esc_html__( 'Category Filter Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters:not(.hover-style-2) li a:hover,{{WRAPPER}} .pt-plus-filter-post-category .category-filters:not(.hover-style-2) li a:focus,{{WRAPPER}} .pt-plus-filter-post-category .category-filters:not(.hover-style-2) li a.active,{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)::before' => 'color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'filter_category_hover_background', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)::before', 'separator' => 'before', 'condition' => [ 'filter_hover_style' => 'style-2', ], ] ); $this->add_responsive_control( 'filter_category_hover_radius', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)::before' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', 'condition' => [ 'filter_hover_style' => 'style-2', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'filter_category_hover_shadow', 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-2 li a span:not(.all_post_count)::before', 'separator' => 'before', 'condition' => [ 'filter_hover_style' => 'style-2', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_control( 'filter_border_hover_color', [ 'label' => esc_html__( 'Hover Border Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.hover-style-1 li a::after' => 'background: {{VALUE}};', ], 'separator' => 'before', 'condition' => [ 'filter_hover_style' => 'style-1', ], ] ); $this->add_control( 'count_filter_category_options', [ 'label' => esc_html__( 'Count Filter Category', 'theplus' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_control( 'category_count_color', [ 'label' => esc_html__( 'Category Count Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters li a span.all_post_count' => 'color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'category_count_background', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.style-1 li a.all span.all_post_count', 'condition' => [ 'filter_style' => ['style-1'], ], ] ); $this->add_control( 'category_count_bg_color', [ 'label' => esc_html__( 'Count Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => [ '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.style-3 a span.all_post_count' => 'background: {{VALUE}}', '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.style-3 a span.all_post_count:before' => 'border-top-color: {{VALUE}}', ], 'condition' => [ 'filter_style' => ['style-3'], ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'filter_category_count_shadow', 'selector' => '{{WRAPPER}} .pt-plus-filter-post-category .category-filters.style-1 li a.all span.all_post_count', 'separator' => 'before', 'condition' => [ 'filter_style' => ['style-1'], ], ] ); $this->end_controls_section(); /*Filter Category style*/ /*Facebook Options Start*/ $this->start_controls_section( 'Fb_optn_stl_section', [ 'label' => esc_html__( 'Facebook', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'FbnameTypo', 'label' => esc_html__( 'Username Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-username a', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'FbMsgTypo', 'label' => esc_html__( 'Message Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-content', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'FbPostOnTypo', 'label' => esc_html__( 'Post On Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-logotext', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'FbTimeTypo', 'label' => esc_html__( 'Time Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-time', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'FbTitleTypo', 'label' => esc_html__( 'Title Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .facebook .tp-SR-title', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->start_controls_tabs( 'fb_color_style' ); $this->start_controls_tab( 'fb_optn_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item.facebook .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item.facebook .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item.facebook .tp-SR-logotext .tp-newline:nth-child(n)' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'FbTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .grid-item.facebook .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbTitleNCr', [ 'label' => esc_html__( 'Title Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .grid-item.facebook .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'BoxFblable', [ 'label' => esc_html__( 'Box Background Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_responsive_control( 'FbBpadding', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'FbNBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'FbNB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'FbCRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'FbBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'fb_optn_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbHnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbHMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbHPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-SR-logotext .tp-newline:nth-child(n)' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'FbHTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'FbTitleHCr', [ 'label' => esc_html__( 'Title text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .facebook:hover .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_responsive_control( 'FbBHpadding', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .grid-item.facebook:hover .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'FbHBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'FbHB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'FbBHRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'FbHBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .facebook:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_responsive_control( 'FbPRs', [ 'label' => esc_html__( 'Profile Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-profile' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'FbHpd', [ 'label' => esc_html__( 'Header Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-header' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'FbBpd', [ 'label' => esc_html__( 'Content Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'FbFpd', [ 'label' => esc_html__( 'Footer Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .facebook .tp-SR-bottom' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->end_controls_section(); /*Facebook Options End*/ /*Google Options Start*/ $this->start_controls_section( 'google_optn_stl_section', [ 'label' => esc_html__( 'Google', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'GnameTypo', 'label' => esc_html__( 'Username Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-SR-username a', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'GMsgTypo', 'label' => esc_html__( 'Message Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-SR-content', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'GPostOnTypo', 'label' => esc_html__( 'Post On Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-SR-logotext', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'GTimeTypo', 'label' => esc_html__( 'Time Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-SR-time', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'GTitleTypo', 'label' => esc_html__( 'Title Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .google .tp-SR-title', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->start_controls_tabs( 'google_color_style' ); $this->start_controls_tab( 'google_optn_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GNnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GNMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GNPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-SR-logotext' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'GNTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GNTitleNCr', [ 'label' => esc_html__( 'Title text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .google .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'BoxGGlable', [ 'label' => esc_html__( 'Box Background Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_responsive_control( 'GNBpadding', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'GNBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'GNBr', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'GNRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'GNBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .google .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'google_optn_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GHnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google:hover .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GHMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google:hover .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GHPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google:hover .tp-SR-logotext' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'GHTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google:hover .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'GNTitleHCr', [ 'label' => esc_html__( 'Title text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .google:hover .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_responsive_control( 'GHBpadding', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google:hover .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'GHBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .google:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'GHBr', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .google:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'GHRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google:hover .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'GHBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .google:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_responsive_control( 'GPRs', [ 'label' => esc_html__( 'Profile Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-SR-profile' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'GHpd', [ 'label' => esc_html__( 'Header Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .grid-item.google .tp-SR-header' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'GBpd', [ 'label' => esc_html__( 'Content Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .grid-item.google .tp-SR-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'GFpd', [ 'label' => esc_html__( 'Footer Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .google .tp-SR-bottom' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->end_controls_section(); /*Google Options End*/ /*manual Options Start*/ $this->start_controls_section( 'cstm_optn_stl_section', [ 'label' => esc_html__( 'Manual', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'CnameTypo', 'label' => esc_html__( 'Username Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-username a', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'CMsgTypo', 'label' => esc_html__( 'Message Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-content', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'CPostOnTypo', 'label' => esc_html__( 'Post On Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-logotext', 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'CTimeTypo', 'label' => esc_html__( 'Time Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-time', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'CTitleTypo', 'label' => esc_html__( 'Title Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .custom .tp-SR-title', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->start_controls_tabs( 'cstm_color_style' ); $this->start_controls_tab( 'cstm_optn_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-logotext' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'CTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CNTitleCr', [ 'label' => esc_html__( 'Title text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .custom .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'content_CBBg_opt', [ 'label' => esc_html__( 'Bottom Background', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'CBBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-header', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'BoxCustomlable', [ 'label' => esc_html__( 'Box Background Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', ] ); $this->add_responsive_control( 'CusNBpadding', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'CNBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'CusNBr', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'CusNCRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'CusNBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .custom .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'cstm_optn_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CHnameCr', [ 'label' => esc_html__( 'Username Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-SR-username a' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CHMassageCr', [ 'label' => esc_html__( 'Message Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-SR-content' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CHPostONCr', [ 'label' => esc_html__( 'Post On Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-SR-logotext' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style!' => 'style-3', ], ] ); $this->add_control( 'CHTimeCr', [ 'label' => esc_html__( 'Time Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-SR-time' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_control( 'CHTitleCr', [ 'label' => esc_html__( 'Title text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-reviews-style-3 .custom:hover .tp-SR-title' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_control( 'content_CHBBg_opt', [ 'label' => esc_html__( 'Bottom Background', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'CHBBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-SR-header', 'condition' => [ 'RType' => 'review', 'style' => 'style-3', ], ] ); $this->add_responsive_control( 'CusHBpadding', [ 'label' => esc_html__( 'Box Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'CHBg', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'CusHBr', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'CusHCRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'CusHBs', 'selector' => '{{WRAPPER}} .tp-social-reviews .custom:hover .tp-review', 'condition' => [ 'RType' => 'review', ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_responsive_control( 'CusPRs', [ 'label' => esc_html__( 'Profile Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-profile' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', 'condition' => [ 'RType' => 'review', ], ] ); $this->add_responsive_control( 'CusHpd', [ 'label' => esc_html__( 'Header Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-header' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'CusBpd', [ 'label' => esc_html__( 'Content Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->add_responsive_control( 'CusFpd', [ 'label' => esc_html__( 'Footer Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .custom .tp-SR-bottom' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'review', ], 'separator' => 'before', ] ); $this->end_controls_section(); /*Custom Options End*/ /*Main Area Options Start*/ $this->start_controls_section( 'bg_optn_stl_section', [ 'label' => esc_html__( 'Main Area', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_responsive_control( 'Bboxwidth', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Box Width', 'theplus'), 'size_units' => ['%'], 'range' => [ '%' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], ], 'default' => [ 'unit' => '%', 'size' => 100, ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-review' => 'width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_control( 'alignmentbeach', [ 'label' => esc_html__( 'Alignment', 'theplus' ), 'type' => Controls_Manager::CHOOSE, 'options' => [ 'left' => [ 'title' => esc_html__( 'Left', 'theplus' ), 'icon' => 'eicon-text-align-left', ], 'center' => [ 'title' => esc_html__( 'Center', 'theplus' ), 'icon' => 'eicon-text-align-center', ], 'right' => [ 'title' => esc_html__( 'Right', 'theplus' ), 'icon' => 'eicon-text-align-right', ], ], 'selectors' => [ '{{WRAPPER}} .social-RB-style-2 .tp-batch-top,{{WRAPPER}} .social-RB-style-2 .tp-batch-rating, {{WRAPPER}} .social-RB-style-2 .tp-batch-contant' => 'text-align: {{VALUE}}', ], 'default' => 'center', 'toggle' => true, 'label_widget' => false, 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'BTypo', 'label' => esc_html__( 'Title Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .social-RB-style-1.tp-review .tp-batch-user, {{WRAPPER}} .social-RB-style-2.tp-review .tp-batch-user, {{WRAPPER}} .social-RB-style-3.tp-review .tp-batch-user', 'conditions' => [ 'terms' => [ [ 'relation' => 'or', 'terms' => [ [ 'name' => 'RType','operator' => '==','value' => 'beach', ], [ 'name' => 'RType','operator' => '==','value' => 'beach', 'name' => 'Bstyle','operator' => '==','value' => 'style-2', ], ], ], ], ], ] ); $this->add_control( 'TCr', [ 'label' => esc_html__( 'Title Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .social-RB-style-1.tp-review .tp-batch-user, {{WRAPPER}} .social-RB-style-2.tp-review .tp-batch-user, {{WRAPPER}} .social-RB-style-3.tp-review .tp-batch-user' => 'color: {{VALUE}}', ], 'conditions' => [ 'terms' => [ [ 'relation' => 'or', 'terms' => [ [ 'name' => 'RType','operator' => '==','value' => 'beach', ], [ 'name' => 'RType','operator' => '==','value' => 'beach', 'name' => 'Bstyle','operator' => '==','value' => 'style-2', ], ], ], ], ], 'separator' => 'after', ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'BRbyCr', 'label' => esc_html__( 'Extra Title Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-review .tp-batch-total', 'condition' => [ 'RType' => 'beach', ], ] ); $this->add_control( 'TRbyCr', [ 'label' => esc_html__( 'Extra Title Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-review .tp-batch-total' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'beach', ], ] ); $this->start_controls_tabs( 'bdg_imgR_style' ); $this->start_controls_tab( 'bdg_Iimg', [ 'label' => esc_html__( 'Images', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1'], ], ] ); $this->add_responsive_control( 'Imgsize', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Size', 'theplus'), 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], ], 'default' => [ 'unit' => 'px', 'size' => '', ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-RB-style-1 .tp-batch-Img' => 'width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1'], ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'ImgBorder', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-1 .tp-batch-Img', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1'], ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'ImgBS', 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-1 .tp-batch-Img', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'bdg_Icicn', [ 'label' => esc_html__( 'Icon', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->add_responsive_control( 'BSISize', [ 'label' => esc_html__( 'Social Icon Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-RB-style-2 .tp-SR-logo' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->add_responsive_control( 'BSITopB', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Social Icon Top-Bottom', 'theplus'), 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => -100, 'max' => 100, 'step' => 1, ], ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-RB-style-2 .tp-SR-logo' => 'top: {{SIZE}}{{UNIT}}', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'bdg_AavgR', [ 'label' => esc_html__( 'Average', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-3'], ], ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'AvrageTxtTypo', 'label' => esc_html__( 'Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-batch-number span', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-3'], ], ] ); $this->add_control( 'AvrageTxtCr', [ 'label' => esc_html__( 'Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-number span' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-3'], ], ] ); $this->add_control( 'AvrageCr', [ 'label' => esc_html__( 'Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-number span' => 'background-color: {{VALUE}}', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-3'], ], ] ); $this->add_responsive_control( 'AvragePadding', [ 'label' => esc_html__( 'Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'default' => [ 'px' => [ 'top' => '', 'right' => '', 'bottom' => '', 'left' => '', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-number span' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-3'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'bdg_Rrating', [ 'label' => esc_html__( 'Rating', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_control( 'BDyIcon', [ 'label' => esc_html__( 'Icon', 'theplus' ), 'type' => Controls_Manager::ICONS, 'default' => [ 'value' => 'fas fa-star', 'library' => 'solid', ], ] ); $this->add_control( 'BstarCr', [ 'label' => esc_html__( 'Icon Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-start' => 'color: {{VALUE}}', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_responsive_control( 'BstarIsize', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Icon Size', 'theplus'), 'size_units' => ['px'], 'range' => [ 'px' => [ 'min' => 0, 'max' => 100, 'step' => 1, ], ], 'default' => [ 'unit' => 'px', 'size' => '', ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-start' => 'font-size: {{SIZE}}{{UNIT}}', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_responsive_control( 'BstarIwidth', [ 'type' => Controls_Manager::SLIDER, 'label' => esc_html__('Icon Space', 'theplus'), 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 1, 'max' => 100, 'step' => 1, ], ], 'render_type' => 'ui', 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .b-star' => 'width: {{SIZE}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'BstarBgCr', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-2 .tp-batch-start', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'BstarBr', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-2 .tp-batch-start', 'separator' => 'before', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->add_responsive_control( 'BstarRsBr', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-RB-style-2 .tp-batch-start' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->add_responsive_control( 'BiconPadd', [ 'label' => esc_html__( 'Icon Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-RB-style-2 .tp-batch-start' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2'], ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_control( 'bdg_InnerContent_opt', [ 'label' => esc_html__( 'Badge Inner Content Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_responsive_control( 'bdg_InnerContent_Padd', [ 'label' => esc_html__( 'Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-review .tp-batch-contant' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->start_controls_tabs( 'bdg_InnerContent_style' ); $this->start_controls_tab( 'bdg_InnerContent_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'bdg_InnerContent_BGN', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-2.tp-review .tp-batch-contant,{{WRAPPER}} .tp-social-reviews .social-RB-style-3.tp-review .tp-batch-top', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'bdg_InnerContent_BrN', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-2.tp-review .tp-batch-contant,{{WRAPPER}} .tp-social-reviews .social-RB-style-3.tp-review .tp-batch-top', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_responsive_control( 'bdg_InnerContent_BDRsN', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .social-RB-style-2.tp-review .tp-batch-contant' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', '{{WRAPPER}} .tp-social-reviews .social-RB-style-3.tp-review .tp-batch-top' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'bdg_InnerContent_BswN', 'selector' => '{{WRAPPER}} .tp-social-reviews .social-RB-style-2.tp-review .tp-batch-contant,{{WRAPPER}} .tp-social-reviews .social-RB-style-3.tp-review .tp-batch-top', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'bdg_InnerContent_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'bdg_InnerContent_BGH', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-2.tp-review .tp-batch-contant,{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-3.tp-review .tp-batch-top', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'bdg_InnerContent_BrH', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-2.tp-review .tp-batch-contant,{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-3.tp-review .tp-batch-top', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-2','style-3'], ], ] ); $this->add_responsive_control( 'bdg_InnerContent_BDRsH', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-2.tp-review .tp-batch-contant' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', '{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-3.tp-review .tp-batch-top' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'bdg_InnerContent_BswH', 'selector' => '{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-2.tp-review .tp-batch-contant,{{WRAPPER}} .tp-social-reviews:hover .social-RB-style-3.tp-review .tp-batch-top', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->add_control( 'bdg_Bgoutr_opt', [ 'label' => esc_html__( 'Badge Outer Background Options', 'theplus' ), 'type' => \Elementor\Controls_Manager::HEADING, 'separator' => 'before', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_responsive_control( 'bdg_Bgoutr_Padd', [ 'label' => esc_html__( 'Padding', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-review' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->start_controls_tabs( 'bdg_Bgoutr_style' ); $this->start_controls_tab( 'bdg_Bgoutr_normal', [ 'label' => esc_html__( 'Normal', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'bdg_Bgoutr_BGN', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'bdg_Bgoutr_BrN', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_responsive_control( 'bdg_Bgoutr_BDRsN', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'bdg_Bgoutr_BswN', 'selector' => '{{WRAPPER}} .tp-social-reviews .tp-review', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->end_controls_tab(); $this->start_controls_tab( 'bdg_Bgoutr_hover', [ 'label' => esc_html__( 'Hover', 'theplus' ), 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Background::get_type(), [ 'name' => 'bdg_Bgoutr_BGH', 'types' => [ 'classic', 'gradient' ], 'selector' => '{{WRAPPER}} .tp-social-reviews:hover .tp-review', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'bdg_Bgoutr_BrH', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews:hover .tp-review', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_responsive_control( 'bdg_Bgoutr_BDRsH', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews:hover .tp-review' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), [ 'name' => 'bdg_Bgoutr_BswH', 'selector' => '{{WRAPPER}} .tp-social-reviews:hover .tp-review', 'condition' => [ 'RType' => 'beach', 'Bstyle' => ['style-1','style-2','style-3'], ], ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); /*Main Area Options Start*/ /*Sub Area Options Start*/ $this->start_controls_section( 'rcmnd_optn_stl_section', [ 'label' => esc_html__( 'Sub Area', 'theplus' ), 'tab' => Controls_Manager::TAB_STYLE, 'condition' => [ 'RType' => 'beach', 'Bstyle' => 'style-1', ], ] ); $this->add_control( 'RBalignment', [ 'label' => esc_html__( 'Alignment', 'theplus' ), 'type' => Controls_Manager::CHOOSE, 'options' => [ 'space-around' => [ 'title' => esc_html__( 'Space Around', 'theplus' ), 'icon' => 'eicon-text-align-justify', ], 'flex-start' => [ 'title' => esc_html__( 'Left', 'theplus' ), 'icon' => 'eicon-text-align-left', ], 'center' => [ 'title' => esc_html__( 'Center', 'theplus' ), 'icon' => 'eicon-text-align-center', ], 'flex-end' => [ 'title' => esc_html__( 'Right', 'theplus' ), 'icon' => 'eicon-text-align-right', ], 'space-between' => [ 'title' => esc_html__( 'Space Between', 'theplus' ), 'icon' => 'eicon-text-align-justify', ], ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-recommend' => 'justify-content: {{VALUE}}', ], 'default' => 'center', 'toggle' => true, 'label_widget' => false, ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'RBTypo', 'label' => esc_html__( 'Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-batch-recommend .tp-batch-recommend-text', ] ); $this->add_control( 'RTCr', [ 'label' => esc_html__( 'Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-batch-recommend' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'RBCr', [ 'label' => esc_html__( 'Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-recommend' => 'background-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'RBr', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-batch-recommend', ] ); $this->add_responsive_control( 'RRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-batch-recommend' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->start_controls_tabs( 'rcmnd_btn_style' ); $this->start_controls_tab( 'rcmnd_optn_btnone', [ 'label' => esc_html__( 'First Button', 'theplus' ), ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'BtnOtypo', 'label' => esc_html__( 'Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .batch-btn-yes', ] ); $this->add_control( 'BtnOCr', [ 'label' => esc_html__( 'Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .batch-btn-yes' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'BtnOBg', [ 'label' => esc_html__( 'Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .batch-btn-yes' => 'background-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'BtnOB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .batch-btn-yes', ] ); $this->add_responsive_control( 'BtnOBRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .batch-btn-yes' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'BtnOMargin', [ 'label' => esc_html__( 'Margin', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-recommend a.batch-btn-yes' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', ] ); $this->end_controls_tab(); $this->start_controls_tab( 'rcmnd_optn_btntwo', [ 'label' => esc_html__( 'Second Button', 'theplus' ), ] ); $this->add_group_control( Group_Control_Typography::get_type(), [ 'name' => 'BtnTtypo', 'label' => esc_html__( 'Text Typography', 'theplus' ), 'scheme' => Typography::TYPOGRAPHY_1, 'selector' => '{{WRAPPER}} .tp-social-reviews .batch-btn-no', ] ); $this->add_control( 'BtnTCr', [ 'label' => esc_html__( 'Text Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .batch-btn-no' => 'color: {{VALUE}}', ], ] ); $this->add_control( 'BtnTBg', [ 'label' => esc_html__( 'Background Color', 'theplus' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .batch-btn-no' => 'background-color: {{VALUE}}', ], ] ); $this->add_group_control( Group_Control_Border::get_type(), [ 'name' => 'BtnTB', 'label' => esc_html__( 'Border', 'theplus' ), 'selector' => '{{WRAPPER}} .tp-social-reviews .batch-btn-no', ] ); $this->add_responsive_control( 'BtnTBRs', [ 'label' => esc_html__( 'Border Radius', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .batch-btn-no' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], ] ); $this->add_responsive_control( 'BtnTMargin', [ 'label' => esc_html__( 'Margin', 'theplus' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => [ 'px', '%', 'em' ], 'selectors' => [ '{{WRAPPER}} .tp-social-reviews .tp-batch-recommend .batch-btn-no' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ], 'separator' => 'before', ] ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); /*Sub Area Options End*/ } protected function render() { $settings = $this->get_settings_for_display(); $WidgetUID = $this->get_unique_selector(); $uid_socirw = uniqid("tp-socirw"); $layout = !empty($settings['layout']) ? $settings['layout'] : 'grid'; $RType = !empty($settings['RType']) ? $settings['RType'] : 'review'; $style = !empty($settings['style']) ? $settings['style'] : 'style-1'; $Repeater = !empty($settings['Rreviews']) ? $settings['Rreviews'] : []; $RefreshTime = !empty($settings['TimeFrq']) ? $settings['TimeFrq'] : '3600'; $TimeFrq = array( 'TimeFrq' => $RefreshTime ); $OverlayImage = !empty($settings['OverlayImage'] == 'yes') ? 'overlayimage' : ''; $UserFooter = !empty($settings['layoutstyle2']) ? $settings['layoutstyle2'] : 'layout-1'; $FeedId = !empty($settings['FeedId']) ? preg_split("/\,/", $settings['FeedId']) : []; $CategoryWF = !empty($settings['filter_category']) ? $settings['filter_category'] : 'no'; $Postdisplay = !empty($settings['display_posts']) ? (int)$settings['display_posts'] : ''; $postLodop = !empty($settings['post_extra_option']) ? $settings['post_extra_option'] : ''; $postview = !empty($settings['load_more_post']) ? (int)$settings['load_more_post'] : ''; $loadbtnText = !empty($settings['load_more_btn_text']) ? $settings['load_more_btn_text'] : ''; $loadingtxt = !empty($settings['tp_loading_text']) ? $settings['tp_loading_text'] : ''; $allposttext = !empty($settings['loaded_posts_text']) ? $settings['loaded_posts_text'] : ''; $txtLimt = !empty($settings['TextLimit'] == 'yes') ? true : false; $TextCount = !empty($settings['TextCount']) ? $settings['TextCount'] : 100 ; $TextType = !empty($settings['TextType']) ? $settings['TextType'] : 'char' ; $TextMore = !empty($settings['TextMore']) ? $settings['TextMore'] : 'Show More' ; $TextLess = !empty($settings['TextLess']) ? $settings['TextLess'] : 'Show Less' ; $TextDots = !empty($settings['TextDots'] == 'yes') ? '...' : '' ; $ShowFeedId = !empty($settings['ShowFeedId']) ? $settings['ShowFeedId'] : false; $Performance = !empty($settings['perf_manage']) ? $settings['perf_manage'] : false; //layout $layout_attr=$data_class=''; if(!empty($layout)){ $data_class .= theplus_get_layout_list_class($layout); $layout_attr = theplus_get_layout_list_attr($layout); }else{ $data_class .= ' list-isotope'; } //columns $desktop_class=$tablet_class=$mobile_class=''; if($layout != 'carousel'){ $desktop_class .= 'tp-col-12'; $desktop_class = ' tp-col-lg-'.esc_attr($settings['desktop_column']); $tablet_class = ' tp-col-md-'.esc_attr($settings['tablet_column']); $mobile_class = ' tp-col-sm-'.esc_attr($settings['mobile_column']); $mobile_class .= ' tp-col-'.esc_attr($settings['mobile_column']); } $output=$data_attr=''; //carousel if($layout == 'carousel'){ if(!empty($settings["hover_show_dots"]) && $settings["hover_show_dots"]=='yes'){ $data_class .=' hover-slider-dots'; } if(!empty($settings["hover_show_arrow"]) && $settings["hover_show_arrow"]=='yes'){ $data_class .=' hover-slider-arrow'; } if(!empty($settings["outer_section_arrow"]) && $settings["outer_section_arrow"]=='yes' && ($settings["slider_arrows_style"]=='style-1' || $settings["slider_arrows_style"]=='style-2' || $settings["slider_arrows_style"]=='style-5' || $settings["slider_arrows_style"]=='style-6')){ $data_class .=' outer-slider-arrow'; } $data_attr .=$this->get_carousel_options(); if($settings["slider_arrows_style"]=='style-3' || $settings["slider_arrows_style"]=='style-4'){ $data_class .=' '.$settings["arrows_position"]; } if(($settings["slider_rows"] > 1) || ($settings["tablet_slider_rows"] > 1) || ($settings["mobile_slider_rows"] > 1)){ $data_class .= ' multi-row'; } } if($CategoryWF == 'yes'){ $data_class .=' pt-plus-filter-post-category '; } $ji=1;$ij=''; $uid_socirw = uniqid("post"); if(!empty($settings["carousel_unique_id"])){ $uid_socirw = "tpca_".$settings["carousel_unique_id"]; } $data_attr .=' data-id="'.esc_attr($uid_socirw).'"'; $data_attr .=' data-style="'.esc_attr($style).'"'; $NormalScroll=""; $ScrollOn = !empty($settings['ScrollOn']) ? true : false; if( !empty($ScrollOn)){ $ScrollData = array( 'className' => 'tp-normal-scroll', 'ScrollOn' => $ScrollOn, 'Height' => !empty($settings['ScrollHgt']['SIZE']) ? (int)$settings['ScrollHgt']['SIZE'] : 100, 'TextLimit' => $txtLimt, ); $NormalScroll = json_encode($ScrollData, true); } $txtlimitData=''; if(!empty($txtLimt)){ $txtlimitDataa = array( 'showmoretxt' => $TextMore, 'showlesstxt' => $TextLess, ); $txtlimitData = json_encode($txtlimitDataa, true); } $output .= '<div id="'.esc_attr($uid_socirw).'" class="'.esc_attr($uid_socirw).' tp-social-reviews '.esc_attr($data_class).'" '.$layout_attr.' '.$data_attr.' data-enable-isotope="1" data-scroll-normal="'.esc_attr($NormalScroll).'" data-textlimit="'.esc_attr($txtlimitData).'">'; if($RType == "review"){ $FinalData = []; $Perfo_transient = get_transient("SR-Performance-$WidgetUID"); if( ($Performance == false) || ($Performance == true && $Perfo_transient === false) ){ $AllData = []; foreach ($Repeater as $index => $R) { $RRT = !empty($R['ReviewsType']) ? $R['ReviewsType'] : 'facebook'; $R = array_merge($TimeFrq, $R); if($RRT == 'facebook'){ $AllData[] = $this->Facebook_Reviews($R); }else if($RRT == 'google'){ $AllData[] = $this->Google_Reviews($R); }else if($RRT == 'manual'){ $AllData[] = $this->Custom_Reviews($R); } } if(!empty($AllData)){ foreach($AllData as $key => $val){ foreach($val as $key => $vall){ $FinalData[] = $vall; } } } $Reviews_Index = array_column($FinalData, 'Reviews_Index'); array_multisort($Reviews_Index, SORT_ASC, $FinalData); set_transient("SR-Performance-$WidgetUID", $FinalData, $RefreshTime); }else { $FinalData = get_transient("SR-Performance-$WidgetUID"); } if(!empty($FinalData)){ foreach ($FinalData as $index => $data) { $PostId = !empty($data['PostId']) ? $data['PostId'] : []; if(in_array($PostId, $FeedId)){ unset($FinalData[$index]); } } if($CategoryWF == 'yes' && $layout != 'carousel'){ $FilterTotal=''; if($postLodop=='load_more' || $postLodop=='lazy_load'){ $FilterTotal = $Postdisplay; }else{ $FilterTotal = count($FinalData); } $output .= $this->get_filter_category($FilterTotal, $FinalData); } if($postLodop == 'load_more' || $postLodop == 'lazy_load'){ $totalReviews = count($FinalData); $remindata = array_slice($FinalData, $Postdisplay); $RemingC = count($remindata); $FinalData = array_slice($FinalData, 0, $Postdisplay); if(get_transient("SR-LoadMore-$uid_socirw") === false){ set_transient("SR-LoadMore-$uid_socirw", $remindata , $RefreshTime); } $postattr = [ 'load_class' => esc_attr($uid_socirw), 'layout' => esc_attr($layout), 'style' => esc_attr($style), 'desktop_column' => esc_attr($settings['desktop_column']), 'tablet_column' => esc_attr($settings['tablet_column']), 'mobile_column' => esc_attr($settings['mobile_column']), 'DesktopClass' => esc_attr($desktop_class), 'TabletClass' => esc_attr($tablet_class), 'MobileClass' => esc_attr($mobile_class), 'TimeFrq' => esc_attr($RefreshTime), 'FeedId' => $FeedId, 'categorytext' => esc_attr($CategoryWF), 'TextLimit' => esc_attr($txtLimt), 'TextCount' => esc_attr($TextCount), 'TextType' => esc_attr($TextType), 'TextMore' => esc_attr($TextMore), 'TextLess' => esc_attr($TextLess), 'TextDots' => esc_attr($TextDots), 'loadingtxt' => esc_attr($loadingtxt), 'allposttext' => esc_attr($allposttext), 'TotalReview' => esc_attr($totalReviews), 'postview' => esc_attr((int)$postview), 'display' => esc_attr($Postdisplay), 'FilterStyle' => esc_attr($settings['filter_style']), 'loadview' => esc_attr($postview), 'theplus_nonce' => wp_create_nonce("theplus-addons"), ]; $data_loadkey = tp_plus_simple_decrypt( json_encode($postattr), 'ey' ); } $output .= '<div id="'.esc_attr($uid_socirw).'" class="tp-row post-inner-loop '.esc_attr($uid_socirw).' social-reviews-'.esc_attr($style).' '.esc_attr($OverlayImage).'" >'; foreach ($FinalData as $F_index => $Review) { $RKey = !empty($Review['RKey']) ? $Review['RKey'] : ''; $RIndex = !empty($Review['Reviews_Index']) ? $Review['Reviews_Index'] : ''; $PostId = !empty($Review['PostId']) ? $Review['PostId'] : ''; $Type = !empty($Review['Type']) ? $Review['Type'] : ''; $Time = !empty($Review['CreatedTime']) ? $Review['CreatedTime'] : ''; $UName = !empty($Review['UserName']) ? $Review['UserName'] : ''; $UImage = !empty($Review['UserImage']) ? $Review['UserImage'] : ''; $ULink = !empty($Review['UserLink']) ? $Review['UserLink'] : ''; $PageLink = !empty($Review['PageLink']) ? $Review['PageLink'] : ''; $Massage = !empty($Review['Massage']) ? $Review['Massage'] : ''; $Icon = !empty($Review['Icon']['value']) ? $Review['Icon']['value'] : 'fas fa-star'; $Logo = !empty($Review['Logo']) ? $Review['Logo'] : ''; $rating = !empty($Review['rating']) ? $Review['rating'] : ''; $CategoryText = !empty($Review['FilterCategory']) ? $Review['FilterCategory'] : ''; $ErrClass = !empty($Review['ErrorClass']) ? $Review['ErrorClass'] : ''; $ReviewClass = !empty($Review['selectType']) ? ' '.$Review['selectType'] : ''; $PlatformName = !empty($ReviewClass) ? ucwords(str_replace('custom', '', $ReviewClass)) : ''; $category_filter = $loop_category = ''; if( !empty($CategoryWF == 'yes') && !empty($CategoryText) && $layout != 'carousel' ){ $loop_category = explode(',', $CategoryText); foreach( $loop_category as $category ) { $category = $this->Reviews_Media_createSlug($category); $category_filter .= ' '.esc_attr($category).' '; } } if(!in_array($PostId, $FeedId)){ ob_start(); include THEPLUS_PATH. 'includes/social-reviews/social-review-'.esc_attr($style).'.php'; $output .= ob_get_contents(); ob_end_clean(); } } $output .='</div>'; if( !empty($totalReviews) && $totalReviews > $Postdisplay ){ if($postLodop == 'load_more' && $layout != 'carousel'){ $output .= '<div class="ajax_load_more">'; $output .= '<a class="post-load-more" data-loadingtxt="'.esc_attr($loadingtxt).'" data-layout="'.esc_attr($layout).'" data-loadclass="'.esc_attr($uid_socirw).'" data-loadview="'.esc_attr($postview).'" data-loadattr= \'' . $data_loadkey . '\'>'; $output .= $loadbtnText; $output .= '</a>'; $output .= '</div>'; }else if($postLodop == 'lazy_load' && $layout != 'carousel'){ $output .= '<div class="ajax_lazy_load">'; $output .= '<a class="post-lazy-load" data-loadingtxt="'.esc_attr($loadingtxt).'" data-lazylayout="'.esc_attr($layout).'" data-lazyclass="'.esc_attr($uid_socirw).'" data-lazyview="'.esc_attr($postview).'" data-lazyattr= \'' . $data_loadkey . '\'>'; $output .= '<div class="tp-spin-ring"><div></div><div></div><div></div></div>'; $output .= '</a>'; $output .= '</div>'; } } }else{ $output .= '<div class="error-handal"> All Social Feed </div>'; } }else if($RType == "beach"){ $Bstyle = !empty($settings['Bstyle']) ? $settings['Bstyle'] : 'style-1'; $BRecommend = !empty($settings['BRecommend']) ? $settings['BRecommend'] : ''; $BSButton = !empty($settings['BSButton']) ? $settings['BSButton'] : ''; $BBtnName = !empty($settings['BBtnName']) ? $settings['BBtnName'] : ''; $Btxt1 = !empty($settings['Btxt1']) ? $settings['Btxt1'] : '' ; $Btxt2 = !empty($settings['Btxt2']) ? $settings['Btxt2'] : '' ; $Blinktxt = !empty($BRecommend) && !empty($settings['Blinktxt']) ? $settings['Blinktxt'] : ''; $Btn2NO = !empty($BRecommend) && !empty($settings['BBtnTName']) ? $settings['BBtnTName'] : ''; $BIcon = !empty($settings['BDyIcon']['value']) ? $settings['BDyIcon']['value'] : "fas fa-star" ; $BIconHidden2 = !empty($settings['IconHidden']) ? $settings['IconHidden'] : '' ; $BeachData = $this->Beach_Reviews($settings); $Beach = !empty($BeachData[0]) ? $BeachData[0] : []; $BTotal = !empty($Beach['Total']) ? $Beach['Total'] : ''; $BLink = !empty($Beach['UserLink']) ? $Beach['UserLink'] : ''; $BLogo = !empty($Beach['Logo']) ? $Beach['Logo'] : ''; $BType = !empty($Beach['Type']) ? $Beach['Type'] : ''; $BUname = !empty($Beach['Username']) ? $Beach['Username'] : ''; $BUImage = !empty($Beach['UserImage']) ? $Beach['UserImage'] : []; $BRating = !empty($Beach['Rating']) ? $Beach['Rating'] : ''; $BErrClass = !empty($Beach['ErrorClass']) ? $Beach['ErrorClass'] : ''; $BMassage = !empty($Beach['Massage']) ? $Beach['Massage'] : ''; ob_start(); include THEPLUS_PATH. 'includes/social-reviews/social-review-b-'.esc_attr($Bstyle).'.php'; $output .= ob_get_contents(); ob_end_clean(); } $output .='</div>'; echo $output; } protected function Facebook_Reviews($RData){ $settings = $this->get_settings_for_display(); $Key = !empty($RData['_id']) ? $RData['_id'] : ''; $Token = !empty($RData['Token']) ? $RData['Token'] : ''; $PageId = !empty($RData['FbPageId']) ? $RData['FbPageId'] : ''; $RType = !empty($RData['FbRType']) ? $RData['FbRType'] : 'default'; $MaxR = !empty($RData['MaxR']) ? $RData['MaxR'] : 6; $Ricon = !empty($RData['icons']) ? $RData['icons'] : 'fas fa-star'; $TimeFrq = !empty($RData['TimeFrq']) ? $RData['TimeFrq'] : ''; $FBNagative = !empty($settings['FBNagative']) ? $settings['FBNagative'] : 1; $RCategory = !empty($RData['RCategory']) ? $RData['RCategory'] : ''; $ReviewsType = !empty($RData['ReviewsType']) ? $RData['ReviewsType'] : ''; $Fb_Icon = THEPLUS_ASSETS_URL.'images/social-review/facebook.svg'; $API = "https://graph.facebook.com/v9.0/{$PageId}?access_token={$Token}&fields=ratings.fields(reviewer{id,name,picture.width(120).height(120)},created_time,rating,recommendation_type,review_text,open_graph_story{id}).limit($MaxR),overall_star_rating,rating_count"; $Fbdata = []; $FbArr = []; $GetAPI = get_transient("Fb-R-Url-$Key"); $GetTime = get_transient("Fb-R-Time-$Key"); if( $GetAPI != $API || $GetTime != $TimeFrq ){ $Fbdata = $this->Review_Api($API); set_transient("Fb-R-Url-$Key", $API, $TimeFrq); set_transient("Fb-R-Data-$Key", $Fbdata, $TimeFrq); set_transient("Fb-R-Time-$Key", $TimeFrq, $TimeFrq); }else{ $Fbdata = get_transient("Fb-R-Data-$Key"); } $facebook_status = !empty($Fbdata['HTTP_CODE']) ? $Fbdata['HTTP_CODE'] : 400; if($facebook_status == 200){ $Rating = !empty($Fbdata['ratings']) && !empty($Fbdata['ratings']['data']) ? $Fbdata['ratings']['data'] : []; foreach ($Rating as $index => $Data){ $FB = !empty($Data['reviewer']) ? $Data['reviewer'] : ''; $RT = !empty($Data['recommendation_type']) ? $Data['recommendation_type'] : ''; $Userlink = (!empty($Data['open_graph_story']) && !empty($Data['open_graph_story']['id']) ?$Data['open_graph_story']['id'] : ''); $FType = ''; if($RType == "default"){ $FType = $RT; }else{ $FType = $RType; } $rating = 5; if($RT == "negative"){ $rating = $FBNagative; } if($FType == $RT){ $FbArr[] = array( "Reviews_Index" => $index, "PostId" => !empty($FB['id']) ? $FB['id'] : '', "Type" => $RT, "CreatedTime" => !empty($Data['created_time']) ? $this->Review_Time($Data['created_time']) : '', "UserName" => !empty($FB['name']) ? $FB['name'] : '', "UserImage" => (!empty($FB['picture']) && !empty($FB['picture']['data']['url']) ? $FB['picture']['data']['url'] : THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg'), "UserLink" => "https://facebook.com/$Userlink", "PageLink" => "https://www.facebook.com/{$PageId}/reviews", "Massage" => !empty($Data['review_text']) ? $Data['review_text'] : '', "Icon" => $Ricon, "rating" => $rating, "Logo" => $Fb_Icon, "selectType" => $ReviewsType, "FilterCategory"=> $RCategory, "RKey" => "tp-repeater-item-$Key", ); } } }else{ $FbArr[] = $this->Review_Error_array( $Fbdata, $Key, $Fb_Icon, $ReviewsType, $RCategory ); } return $FbArr; } protected function Google_Reviews($RData){ $Key = !empty($RData['_id']) ? $RData['_id'] : ''; $Token = !empty($RData['Token']) ? $RData['Token'] : ''; $GPlace = !empty($RData['GPlaceID']) ? $RData['GPlaceID'] : ''; $TimeFrq = !empty($RData['TimeFrq']) ? $RData['TimeFrq'] : ''; $Ricon = !empty($RData['icons']) ? $RData['icons'] : 'fas fa-star'; $MaxR = !empty($RData['MaxR']) ? $RData['MaxR'] : ''; $ReviewsType = !empty($RData['ReviewsType']) ? $RData['ReviewsType'] : ''; $RCategory = !empty($RData['RCategory']) ? $RData['RCategory'] : ''; $GG_Icon = THEPLUS_ASSETS_URL.'images/social-review/google.webp'; $GLanguage = !empty($RData['GLanguage']) ? $RData['GLanguage'] : 'en'; $Gdata = []; $GArr = []; $API = "https://maps.googleapis.com/maps/api/place/details/json?placeid={$GPlace}&key={$Token}&language={$GLanguage}"; $GetAPI = get_transient("G-R-Url-$Key"); $GetTime = get_transient("G-R-Time-$Key"); if( $GetAPI != $API || $GetTime != $TimeFrq ){ $Gdata = $this->Review_Api($API); set_transient("G-R-Url-$Key", $API, $TimeFrq); set_transient("G-R-Time-$Key", $TimeFrq, $TimeFrq); set_transient("G-R-Data-$Key", $Gdata, $TimeFrq); }else{ $Gdata = get_transient("G-R-Data-$Key"); } $G_status = (!empty($Gdata['HTTP_CODE']) ? $Gdata['HTTP_CODE'] : 400); if($G_status == 200 && empty($Gdata['error_message'])){ $GR = !empty($Gdata['result']['reviews']) ? $Gdata['result']['reviews'] : []; $PlaceName = strtolower(str_replace(' ', '_', $Gdata['result']['name'])); $PlaceURL = !empty($Gdata['result']['url']) ? $Gdata['result']['url'] : ''; $GG_Databash = get_option("elementor_google_review_{$PlaceName}"); if ( !empty($GR) && (empty($GG_Databash) || $GG_Databash == false) ) { add_option( "elementor_google_review_{$PlaceName}", $GR, "", "yes" ); }else if( !empty($GR) && !empty($GG_Databash) ) { $AarayTemp = []; foreach ($GG_Databash as $i1 => $Gdata){ $AarayTemp[] = $Gdata['author_url']; } foreach ($GR as $i1 => $DataOne){ $AuthorUrlOne = !empty($DataOne['author_url']) ? $DataOne['author_url'] : []; foreach ($GG_Databash as $i2 => $DataTwo){ $AuthorUrlTwo = !empty($DataTwo['author_url']) ? $DataTwo['author_url'] : []; if( $AuthorUrlOne != $AuthorUrlTwo ){ if( !in_array( $AuthorUrlOne, $AarayTemp ) ){ $AarayTemp[] = $DataOne['author_url']; $GG_Databash[] = array( "author_name" => !empty($DataOne['author_name']) ? $DataOne['author_name'] : '', "author_url" => !empty($DataOne['author_url']) ? $DataOne['author_url'] : '', "language" => !empty($DataOne['language']) ? $DataOne['language'] : 'en', "profile_photo_url" => !empty($DataOne['profile_photo_url']) ? $DataOne['profile_photo_url'] : '', "rating" => !empty($DataOne['rating']) ? $DataOne['rating'] : '', "relative_time_description" => !empty($DataOne['relative_time_description']) ? $DataOne['relative_time_description'] : '', "text" => !empty($DataOne['text']) ? $DataOne['text'] : '', "time" => !empty($DataOne['time']) ? $DataOne['time'] : '', ); update_option( "elementor_google_review_{$PlaceName}", $GG_Databash); } } } } $GR = $GG_Databash; } foreach ($GR as $index => $G){ if($index < $MaxR){ $UnqURl = explode('/', trim($G['author_url'])); $UnqName = explode(' ', trim($G['author_name'])); $Time = (!empty($G['relative_time_description']) ? $G['relative_time_description'] : ''); $GArr[] = array( "Reviews_Index" => $index, "PostId" => (!empty($UnqName[0]) && !empty($UnqURl[5]) ? $UnqName[0].'-'.substr($UnqURl[5], 0, 10) : ''), "Type" => "", "CreatedTime" => $Time, "UserName" => !empty($G['author_name']) ? $G['author_name'] : '', "UserImage" => !empty($G['profile_photo_url']) ? $G['profile_photo_url'] : '', "UserLink" => !empty($G['author_url']) ? $G['author_url'] : '', "PageLink" => $PlaceURL, "Massage" => !empty($G['text']) ? $G['text'] : '', "Icon" => $Ricon, "rating" => !empty($G['rating']) ? $G['rating'] : '', "Logo" => $GG_Icon, "selectType" => $ReviewsType, "FilterCategory"=> $RCategory, "RKey" => "tp-repeater-item-$Key", ); } } }else{ $GArr[] = $this->Review_Error_array( $Gdata, $Key, $GG_Icon, $ReviewsType, $RCategory ); } return $GArr; } protected function Custom_Reviews($RData){ $Key = !empty($RData['_id']) ? $RData['_id'] : ''; $MaxR = !empty($RData['MaxR']) ? $RData['MaxR'] : ''; $CType = !empty($RData['CPFname']) ? $RData['CPFname'] : 'facebook'; $Ricon = !empty($RData['icons']) ? $RData['icons'] : 'fas fa-star'; $Name=[]; if(!empty($RData['Cuname'])){ $Cuname = explode('|', $RData['Cuname']); foreach ($Cuname as $D){ $Name[] = array("Name"=> $D); } }else{ $Name[] = array("Name"=> "Gabriel"); } $Massage=[]; if(!empty($RData['Cmassage'])){ $Cmassage = explode('|', $RData['Cmassage']); foreach ($Cmassage as $D){ $Massage[] = array("Message"=> $D); } } $Date=[]; if(!empty($RData['Cdate'])){ $Cdate = explode('|', $RData['Cdate']); foreach ($Cdate as $D){ $Date[] = array("Date"=>$D); } } $Star=[]; if(!empty($RData['Cstar'])){ $Cstar = explode('|', $RData['Cstar']); foreach ($Cstar as $D){ $Star[] = array("Star"=>$D); } } $Platform=$logo=""; if($CType == 'manual'){ $Platform = (!empty($RData['CcuSname']) ? $RData['CcuSname'] : ''); $logo = ((!empty($RData['CImg']) && !empty($RData['CImg']['url'])) ? $RData['CImg']['url'] : THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg'); }else if($CType == 'facebook'){ $Platform = $CType; $logo = THEPLUS_ASSETS_URL.'images/social-review/facebook.svg'; }else if($CType == 'google'){ $Platform = $CType; $logo = THEPLUS_ASSETS_URL.'images/social-review/google.webp'; } $PImg=[]; if(!empty($RData['CUImg'])){ foreach ($RData['CUImg'] as $D){ $csturl = !empty($D['url']) ? $D['url'] : THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg'; $PImg[] = array("Profile" => $csturl); } } $All = []; foreach ($Name as $key => $value){ $FImg = !empty($PImg[$key]) ? $PImg[$key] : array("Profile" => THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg') ; $FMsg = !empty($Massage[$key]) ? $Massage[$key] : array("Message"=> "Good") ; $FStar = !empty($Star[$key]) ? $Star[$key] : array("Star"=> "3") ; $FDate = !empty($Date[$key]) ? $Date[$key] : array("Date"=> "3 day ago") ; $All[] = array_merge( (array)$value,$FMsg,$FDate,$FStar,$FImg ); } if($CType == 'manual'){ $Platform = "custom $Platform"; } $Arr=[]; if(!empty($All)){ foreach ($All as $i => $v){ if($i < $MaxR){ $C_Name = explode(' ', trim($v['Name'])); $C_MSG = explode(' ', trim($v['Message'])); $Arr[] = array( "Reviews_Index" => $i, "PostId" => (!empty($C_Name[0]) && !empty($C_MSG[0]) ? $C_Name[0].$C_MSG[0] : ''), "UserName" => !empty($v['Name']) ? $v['Name'] : '', "UserImage" => !empty($v['Profile']) ? $v['Profile'] : THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg', "Massage" => $v['Message'], "CreatedTime" => $v['Date'], "Icon" => $Ricon, "rating" => $v['Star'], "selectType" => $Platform, "FilterCategory" => !empty($RData['RCategory']) ? $RData['RCategory'] : '', "Logo" => $logo, "RKey" => "tp-repeater-item-$Key", ); } } } return $Arr; } protected function Beach_Reviews($attr){ $settings = $this->get_settings_for_display(); $WidgetID = $this->get_unique_selector(); $BTypeFacebook = !empty($settings['BTypeFacebook']) ? $settings['BTypeFacebook'] : ''; $BTypeGoogle = !empty($settings['BTypeGoogle']) ? $settings['BTypeGoogle'] : ''; $BTimeFrq = !empty($settings['beach_TimeFrq']) ? $settings['beach_TimeFrq'] : '3600' ; $BType = !empty($attr['BType']) ? $attr['BType'] : 'b-facebook'; $BToken = !empty($attr['BToken']) ? $attr['BToken'] : ''; $BPPId = !empty($attr['BPPId']) ? $attr['BPPId'] : ''; $API = ""; $Arr = []; if($BType == "b-facebook"){ $API = "https://graph.facebook.com/v9.0/{$BPPId}?access_token={$BToken}&fields=ratings.fields(reviewer{id,name,picture.width(120).height(120)},created_time,rating,recommendation_type,review_text,open_graph_story{id}).limit(100),overall_star_rating,rating_count,username"; $Type = $BTypeFacebook; $Logo = THEPLUS_ASSETS_URL.'images/social-review/facebook.svg'; }else if($BType == "b-google"){ $API = "https://maps.googleapis.com/maps/api/place/details/json?placeid={$BPPId}&key={$BToken}"; $Type = $BTypeGoogle; $Logo = THEPLUS_ASSETS_URL.'images/social-review/google.webp'; } $Data=[]; $BGetAPI = get_transient("Beach-Url-$WidgetID"); $BGetTime = get_transient("Beach-Time-$WidgetID"); if( $BGetAPI != $API || $BGetTime != $BTimeFrq ){ $Data = $this->Review_Api($API); set_transient("Beach-Url-$WidgetID", $API, $BTimeFrq); set_transient("Beach-Time-$WidgetID", $BTimeFrq, $BTimeFrq); set_transient("Beach-Data-$WidgetID", $Data, $BTimeFrq); }else{ $Data = get_transient("Beach-Data-$WidgetID"); } $Beach_CODE = !empty($Data['HTTP_CODE']) ? $Data['HTTP_CODE'] : 400; if($Beach_CODE == 200 && empty($Data['error_message'])){ $Image = []; if($BType == "b-facebook"){ $uname = !empty($Data['username']) ? $Data['username'] : ''; // $Rating = !empty($Data['rating_count']) ? $Data['rating_count'] : 5; $Rating = !empty($Data['overall_star_rating']) ? $Data['overall_star_rating'] : ''; $link = "https://www.facebook.com/$BPPId"; $RatingImg = !empty($Data['ratings']) && !empty($Data['ratings']['data']) ? $Data['ratings']['data'] : []; foreach ($RatingImg as $index => $Bdata){ if($index > 3){ break; } $FB = !empty($Bdata['reviewer']) ? $Bdata['reviewer'] : ''; $Image[] = (!empty($FB['picture']) && !empty($FB['picture']['data']['url']) ? $FB['picture']['data']['url'] : THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg'); } } if($BType == "b-google"){ $uname = !empty($Data['result']['name']) ? $Data['result']['name'] : ''; $Rating = !empty($Data['result']['rating']) ? $Data['result']['rating'] : ''; $link = "https://www.google.com/search?q=$uname"; $GR = !empty($Data['result']) ? $Data['result']['reviews'] : []; foreach ($GR as $index => $GI){ if($index > 3){ break; } $Image[] = (!empty($GI['profile_photo_url']) ? $GI['profile_photo_url'] : THEPLUS_ASSETS_URL.'images/tp-placeholder.jpg'); } } if( ($BType == "b-facebook" && !empty($Rating)) || $BType == "b-google" ){ $Arr[] = array( "Total" => count($Data), "Username" => $uname, "UserImage" => $Image, "UserLink" => $link, "Type" => $Type, "Logo" => $Logo, "Rating" => $Rating, ); }else{ $Arr[] = array( "Total" => 0, "Type" => 'Oops', "Massage" => "Error : Your facebook account doesn't provide overall ratings due to insufficient reviews on your page. ", "UserImage" => array($Logo,$Logo,$Logo,$Logo), "ErrorClass" => "danger-error", "Logo" => $Logo, ); } }else{ $Error = !empty($Data['error']) ? $Data['error'] : []; if($BType == "b-facebook"){ $Etype = !empty($Error['type']) ? $Error['type'] : ''; if( !empty($Error['message']) ){ $message = str_replace( ". ", "<br/>", $Error['message'] ); }else if( !empty($Error['Message_Errorcurl']) ){ $message = $Error['Message_Errorcurl']; }else{ $message = 'Something Wrong'; } } if($BType == "b-google"){ $Etype = !empty($Data['status']) ? $Data['status'] : ''; $message = !empty($Data['error_message']) ? str_replace(", ","<br/>", $Data['error_message']) : 'Something wrong'; } $Arr[] = array( "Total" => $Etype, "Type" => !empty($Data['HTTP_CODE']) ? "Error No : ".$Data['HTTP_CODE'] : 400, "Massage" => $message, "UserImage" => array($Logo,$Logo,$Logo,$Logo), "ErrorClass" => "danger-error", "Logo" => $Logo, ); } return $Arr; } protected function Review_Time($datetime, $full = false) { $now = new \DateTime; $ago = new \DateTime($datetime); $diff = $now->diff($ago); $diff->w = floor($diff->d / 7); $diff->d -= $diff->w * 7; $string = array( 'y' => 'year', 'm' => 'month', 'w' => 'week', 'd' => 'day', 'h' => 'hour', 'i' => 'minute', 's' => 'second', ); foreach ($string as $k => &$v) { if ($diff->$k) { $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? 's' : ''); } else { unset($string[$k]); } } if (!$full) $string = array_slice($string, 0, 1); return $string ? implode(', ', $string) . ' ago' : 'just now'; } protected function Review_Api($API){ $settings = $this->get_settings_for_display(); $CURLOPT_SSL_VERIFYPEER = !empty($settings['CURLOPT_SSL_VERIFYPEER']) ? TRUE : FALSE; $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $API, CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_SSL_VERIFYPEER => $CURLOPT_SSL_VERIFYPEER, )); $response = json_decode( curl_exec($curl), true ); $Final=$statuscode=[]; if( empty($response) && curl_errno($curl) ){ $Final = array( "HTTP_CODE" => "400", "error" => array( "Message_Errorcurl" => curl_error($curl) ) ); } else { $statuscode = array( "HTTP_CODE" => curl_getinfo($curl, CURLINFO_HTTP_CODE) ); if(is_array($statuscode) && is_array($response)){ $Final = array_merge($statuscode, $response); } } curl_close($curl); return $Final; } protected function get_carousel_options() { $settings = $this->get_settings_for_display(); $data_slider =''; $slider_direction = ($settings['slider_direction']=='vertical') ? 'true' : 'false'; $data_slider .=' data-slider_direction="'.esc_attr($slider_direction).'"'; $data_slider .=' data-slide_speed="'.esc_attr($settings["slide_speed"]["size"]).'"'; $data_slider .=' data-slider_desktop_column="'.esc_attr($settings['slider_desktop_column']).'"'; $data_slider .=' data-steps_slide="'.esc_attr($settings['steps_slide']).'"'; $slider_draggable= ($settings["slider_draggable"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_draggable="'.esc_attr($slider_draggable).'"'; $slider_infinite= ($settings["slider_infinite"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_infinite="'.esc_attr($slider_infinite).'"'; $slider_pause_hover= ($settings["slider_pause_hover"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_pause_hover="'.esc_attr($slider_pause_hover).'"'; $slider_adaptive_height= ($settings["slider_adaptive_height"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_adaptive_height="'.esc_attr($slider_adaptive_height).'"'; $slider_animation=$settings['slider_animation']; $data_slider .=' data-slider_animation="'.esc_attr($slider_animation).'"'; $slider_autoplay= ($settings["slider_autoplay"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_autoplay="'.esc_attr($slider_autoplay).'"'; $data_slider .=' data-autoplay_speed="'.(isset($settings["autoplay_speed"]["size"]) ? esc_attr($settings["autoplay_speed"]["size"]) : 3000).'"'; //tablet $data_slider .=' data-slider_tablet_column="'.esc_attr($settings['slider_tablet_column']).'"'; $data_slider .=' data-tablet_steps_slide="'.esc_attr($settings['tablet_steps_slide']).'"'; $slider_responsive_tablet=$settings['slider_responsive_tablet']; $data_slider .=' data-slider_responsive_tablet="'.esc_attr($slider_responsive_tablet).'"'; if(!empty($settings['slider_responsive_tablet']) && $settings['slider_responsive_tablet']=='yes'){ $tablet_slider_draggable= ($settings["tablet_slider_draggable"]=='yes') ? 'true' : 'false'; $data_slider .=' data-tablet_slider_draggable="'.esc_attr($tablet_slider_draggable).'"'; $tablet_slider_infinite= ($settings["tablet_slider_infinite"]=='yes') ? 'true' : 'false'; $data_slider .=' data-tablet_slider_infinite="'.esc_attr($tablet_slider_infinite).'"'; $tablet_slider_autoplay= ($settings["tablet_slider_autoplay"]=='yes') ? 'true' : 'false'; $data_slider .=' data-tablet_slider_autoplay="'.esc_attr($tablet_slider_autoplay).'"'; $data_slider .=' data-tablet_autoplay_speed="'.esc_attr($settings["tablet_autoplay_speed"]["size"]).'"'; $tablet_slider_dots= ($settings["tablet_slider_dots"]=='yes') ? 'true' : 'false'; $data_slider .=' data-tablet_slider_dots="'.esc_attr($tablet_slider_dots).'"'; $tablet_slider_arrows= ($settings["tablet_slider_arrows"]=='yes') ? 'true' : 'false'; $data_slider .=' data-tablet_slider_arrows="'.esc_attr($tablet_slider_arrows).'"'; $data_slider .=' data-tablet_slider_rows="'.esc_attr($settings["tablet_slider_rows"]).'"'; $tablet_center_mode= ($settings["tablet_center_mode"]=='yes') ? 'true' : 'false'; $data_slider .=' data-tablet_center_mode="'.esc_attr($tablet_center_mode).'" '; $data_slider .=' data-tablet_center_padding="'.esc_attr(!empty($settings["tablet_center_padding"]["size"]) ? $settings["tablet_center_padding"]["size"] : 0).'" '; } //mobile $data_slider .=' data-slider_mobile_column="'.esc_attr($settings['slider_mobile_column']).'"'; $data_slider .=' data-mobile_steps_slide="'.esc_attr($settings['mobile_steps_slide']).'"'; $slider_responsive_mobile=$settings['slider_responsive_mobile']; $data_slider .=' data-slider_responsive_mobile="'.esc_attr($slider_responsive_mobile).'"'; if(!empty($settings['slider_responsive_mobile']) && $settings['slider_responsive_mobile']=='yes'){ $mobile_slider_draggable= ($settings["mobile_slider_draggable"]=='yes') ? 'true' : 'false'; $data_slider .=' data-mobile_slider_draggable="'.esc_attr($mobile_slider_draggable).'"'; $mobile_slider_infinite= ($settings["mobile_slider_infinite"]=='yes') ? 'true' : 'false'; $data_slider .=' data-mobile_slider_infinite="'.esc_attr($mobile_slider_infinite).'"'; $mobile_slider_autoplay= ($settings["mobile_slider_autoplay"]=='yes') ? 'true' : 'false'; $data_slider .=' data-mobile_slider_autoplay="'.esc_attr($mobile_slider_autoplay).'"'; $data_slider .=' data-mobile_autoplay_speed="'.esc_attr($settings["mobile_autoplay_speed"]["size"]).'"'; $mobile_slider_dots= ($settings["mobile_slider_dots"]=='yes') ? 'true' : 'false'; $data_slider .=' data-mobile_slider_dots="'.esc_attr($mobile_slider_dots).'"'; $mobile_slider_arrows= ($settings["mobile_slider_arrows"]=='yes') ? 'true' : 'false'; $data_slider .=' data-mobile_slider_arrows="'.esc_attr($mobile_slider_arrows).'"'; $data_slider .=' data-mobile_slider_rows="'.esc_attr($settings["mobile_slider_rows"]).'"'; $mobile_center_mode= ($settings["mobile_center_mode"]=='yes') ? 'true' : 'false'; $data_slider .=' data-mobile_center_mode="'.esc_attr($mobile_center_mode).'" '; $data_slider .=' data-mobile_center_padding="'.esc_attr($settings["mobile_center_padding"]["size"]).'" '; } $slider_dots= ($settings["slider_dots"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_dots="'.esc_attr($slider_dots).'"'; $data_slider .=' data-slider_dots_style="slick-dots '.esc_attr($settings["slider_dots_style"]).'"'; $slider_arrows= ($settings["slider_arrows"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_arrows="'.esc_attr($slider_arrows).'"'; $data_slider .=' data-slider_arrows_style="'.esc_attr($settings["slider_arrows_style"]).'" '; $data_slider .=' data-arrows_position="'.esc_attr($settings["arrows_position"]).'" '; $data_slider .=' data-arrow_bg_color="'.esc_attr($settings["arrow_bg_color"]).'" '; $data_slider .=' data-arrow_icon_color="'.esc_attr($settings["arrow_icon_color"]).'" '; $data_slider .=' data-arrow_hover_bg_color="'.esc_attr($settings["arrow_hover_bg_color"]).'" '; $data_slider .=' data-arrow_hover_icon_color="'.esc_attr($settings["arrow_hover_icon_color"]).'" '; $slider_center_mode= ($settings["slider_center_mode"]=='yes') ? 'true' : 'false'; $data_slider .=' data-slider_center_mode="'.esc_attr($slider_center_mode).'" '; $data_slider .=' data-center_padding="'.esc_attr((!empty($settings["center_padding"]["size"])) ? $settings["center_padding"]["size"] :0).'" '; $data_slider .=' data-scale_center_slide="'.esc_attr((!empty($settings["scale_center_slide"]["size"])) ? $settings["scale_center_slide"]["size"] : 1).'" '; $data_slider .=' data-scale_normal_slide="'.esc_attr((!empty($settings["scale_normal_slide"]["size"])) ? $settings["scale_normal_slide"]["size"] : 0.8).'" '; $data_slider .=' data-opacity_normal_slide="'.esc_attr((!empty($settings["opacity_normal_slide"]["size"])) ? $settings["opacity_normal_slide"]["size"] : 0.7).'" '; $data_slider .=' data-slider_rows="'.esc_attr($settings["slider_rows"]).'" '; return $data_slider; } Protected function get_filter_category($count, $allreview){ $settings = $this->get_settings_for_display(); $CategoryWF = !empty($settings['filter_category']) ? $settings['filter_category'] : ''; $category_filter=''; $TeamMemberR = !empty($settings['Rreviews']) ? $settings['Rreviews'] : []; if($CategoryWF == 'yes'){ $filter_style = $settings["filter_style"]; $filter_hover_style = $settings["filter_hover_style"]; $all_filter_category = !empty($settings["all_filter_category"]) ? $settings["all_filter_category"] : esc_html__('All','theplus'); $loop_category = []; foreach ( $TeamMemberR as $TMFilter ) { $TMCategory = !empty($TMFilter['RCategory']) ? $TMFilter['RCategory'] : ''; if(!empty($TMCategory)){ $loop_category[] = $TMCategory; } } $loop_category = array_unique($loop_category); $loop_category = $this->Reviews_Split_Array_Category($loop_category); $count_category = array_count_values($loop_category); $all_category=$category_post_count=''; if($filter_style == 'style-1'){ $all_category='<span class="all_post_count">'.esc_html($count).'</span>'; } if($filter_style == 'style-2' || $filter_style == 'style-3'){ $category_post_count = '<span class="all_post_count">'.esc_attr($count).'</span>'; } $category_filter .= '<div class="post-filter-data '.esc_attr($filter_style).' text-'.esc_attr($settings['filter_category_align']).'">'; if($filter_style == 'style-4'){ $category_filter .= '<span class="filters-toggle-link">'.esc_html__('Filters','theplus').'<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 64 64" style="enable-background:new 0 0 64 64;" xml:space="preserve"><g><line x1="0" y1="32" x2="63" y2="32"></line></g><polyline points="50.7,44.6 63.3,32 50.7,19.4 "></polyline><circle cx="32" cy="32" r="31"></circle></svg></span>'; } $category_filter .='<ul class="category-filters '.esc_attr($filter_style).' hover-'.esc_attr($filter_hover_style).'">'; $category_filter .= '<li><a href="#" class="filter-category-list active all" data-filter="*" >'.$category_post_count.'<span data-hover="'.esc_attr($all_filter_category).'">'.esc_html($all_filter_category).'</span>'.$all_category.'</a></li>'; foreach ( $loop_category as $i => $key ) { $slug = $this->Reviews_Media_createSlug($key) ; $category_post_count = ''; if($filter_style == 'style-2' || $filter_style == 'style-3'){ $CategoryCount=0; foreach ($allreview as $index => $value) { $CategoryName = !empty($value['FilterCategory']) ? $value['FilterCategory'] : ''; if($CategoryName == $key && $index < $count){ $CategoryCount++; } } $category_post_count = '<span class="all_post_count">'.esc_html($CategoryCount).'</span>'; } $category_filter .= '<li>'; $category_filter .= '<a href="#" class="filter-category-list" data-filter=".'.esc_attr($slug).'">'; $category_filter .= $category_post_count; $category_filter .= '<span data-hover="'.esc_attr($key).'">'; $category_filter .= esc_html($key); $category_filter .= '</span>'; $category_filter .= '</a>'; $category_filter .= '</li>'; } $category_filter .= '</ul>'; $category_filter .= '</div>'; } return $category_filter; } protected function Reviews_Split_Array_Category($array){ if (!is_array($array)) { return FALSE; } $result = array(); foreach ($array as $key => $value) { if (is_array($value)) { $result = array_merge($result, $this->Reviews_Split_Array_Category($value)); } else { $result[$key] = $value; } } return $result; } protected function Reviews_Media_createSlug($str, $delimiter = '-'){ $slug = preg_replace('/[^A-Za-z0-9-]+/', $delimiter, $str); return $slug; } protected function Review_Error_array( $Data, $RKey, $Icon, $ReviewsType, $RCategory ){ if( !empty($Data) && !empty($Data['error_message']) ){ $Message = $Data['error_message']; }else if( !empty($Data) && !empty($Data['error']) && !empty($Data['error']['Message_Errorcurl']) ){ $Message = $Data['error']['Message_Errorcurl']; }else{ $Message = 'Something Wrong'; } return array( "Reviews_Index" => 1, "ErrorClass" => "danger-error", "CreatedTime" => !empty($Data['status']) ? $Data['status'] : '', "Massage" => $Message, "UserName" => !empty($Data['HTTP_CODE']) ? 'Error No : '.$Data['HTTP_CODE'] : '', "UserImage" => $Icon, "Logo" => $Icon, "selectType" => $ReviewsType, "FilterCategory"=> $RCategory, "RKey" => "tp-repeater-item-{$RKey}", ); } protected function content_template() { } }