PATH:
home
/
letacommog
/
le-panoramique
/
wp-content
/
plugins
/
el-fb-you-vimeo-twit-insta-stream
/
inc
<?php namespace Elementor; if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly class Widget_My_social_stream_grid extends Widget_Base { public function get_name() { return 'social-stream-grid'; } public function get_title() { return __( 'Social Stream Grid', 'elementor' ); } public function get_icon() { // Icon name from the Elementor font file, as per http://dtbaker.net/web-development/creating-your-own-custom-elementor-widgets/ return 'eicon-social-icons'; } public function get_categories() { return [ 'social-stream' ]; // category of the widget } protected function _register_controls() { $animations = array( 'None' => '', 'bounce' => 'bounce', 'flash' => 'flash', 'pulse' => 'pulse', 'rubberBand' => 'rubberBand', 'shake' => 'shake', 'swing' => 'swing', 'tada' => 'tada', 'bounce' => 'bounce', 'wobble' => 'wobble', 'bounceIn' => 'bounceIn', 'bounceInDown' => 'bounceInDown', 'bounceInLeft' => 'bounceInLeft', 'bounceInRight' => 'bounceInRight', 'bounceInUp' => 'bounceInUp', 'fadeIn' => 'fadeIn', 'fadeInDown' => 'fadeInDown', 'fadeInDownBig' => 'fadeInDownBig', 'fadeInLeft' => 'fadeInLeft', 'fadeInLeftBig' => 'fadeInLeftBig', 'fadeInRight' => 'fadeInRight', 'fadeInRightBig' => 'fadeInRightBig', 'fadeInUp' => 'fadeInUp', 'fadeInUpBig' => 'fadeInUpBig', 'flip' => 'flip', 'flipInX' => 'flipInX', 'flipInY' => 'flipInY', 'lightSpeedIn' => 'lightSpeedIn', 'rotateIn' => 'rotateIn', 'rotateInDownLeft' => 'rotateInDownLeft', 'rotateInDownRight' => 'rotateInDownRight', 'rotateInUpLeft' => 'rotateInUpLeft', 'rotateInUpRight' => 'rotateInUpRight', 'slideInUp' => 'slideInUp', 'slideInDown' => 'slideInDown', 'slideInLeft' => 'slideInLeft', 'slideInRight' => 'slideInRight', 'zoomIn' => 'zoomIn', 'zoomInDown' => 'zoomInDown', 'zoomInLeft' => 'zoomInLeft', 'zoomInRight' => 'zoomInRight', 'zoomInUp' => 'zoomInUp', 'rollIn' => 'rollIn', 'twisterInDown' => 'twisterInDown', 'twisterInUp' => 'twisterInUp', 'swap' => 'swap', 'puffIn' => 'puffIn', 'vanishIn' => 'vanishIn', 'openDownLeftRetourn' => 'openDownLeftRetourn', 'openDownRightRetourn' => 'openDownRightRetourn', 'openUpLeftRetourn' => 'openUpLeftRetourn', 'openUpRightRetourn' => 'openUpRightRetourn', 'perspectiveDownRetourn' => 'perspectiveDownRetourn', 'perspectiveUpRetourn' => 'perspectiveUpRetourn', 'perspectiveLeftRetourn' => 'perspectiveLeftRetourn', 'perspectiveRightRetourn' => 'perspectiveRightRetourn', 'slideDownRetourn' => 'slideDownRetourn', 'slideUpRetourn' => 'slideUpRetourn', 'slideLeftRetourn' => 'slideLeftRetourn', 'slideRightRetourn' => 'slideRightRetourn', 'swashIn' => 'swashIn', 'foolishIn' => 'foolishIn', 'tinRightIn' => 'tinRightIn', 'tinLeftIn' => 'tinLeftIn', 'tinUpIn' => 'tinUpIn', 'tinDownIn' => 'tinDownIn', 'boingInUp' => 'boingInUp', 'spaceInUp' => 'spaceInUp', 'spaceInRight' => 'spaceInRight', 'spaceInDown' => 'spaceInDown', 'spaceInLeft' => 'spaceInLeft' ); $this->start_controls_section( 'social_section', [ 'label' => esc_html__( 'Message', 'elementor' ), ] ); $this->add_control( 'refer_wp_org', [ 'raw' => __( 'Please add Social Credential in Social Setting. <a href="'.get_site_url().'/wp-admin/admin.php?page=fb-you-vimeo-twit-insta-content-social-setting">Setup here</a>', 'elementor' ), 'type' => Controls_Manager::RAW_HTML, 'classes' => 'elementor-descriptor', ] ); $this->end_controls_section(); //start facebook $this->start_controls_section( 'social_section1', [ 'label' => esc_html__( 'Facebook', 'elementor' ), ] ); $this->add_control( 'fb_type', [ 'label' => __( 'Select Type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '@', 'options' => [ '@' => __( 'For Page/User', 'elementor' ), '#' => __( 'For Group', 'elementor' ) ], 'description' => __( 'Select facebook User,page and group feed type.', 'elementor' ), ] ); $this->add_control( 'fb_id', [ 'label' => __( 'Page Username', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Facebook Page/Username or Group. Example : https://www.facebook.com/VinDiesel/ only add <strong>VinDiesel</strong> in field', 'elementor' ), ] ); $this->add_control( 'fb_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start youtube //start facebook $this->start_controls_section( 'social_section2', [ 'label' => esc_html__( 'YouTube', 'elementor' ), ] ); $this->add_control( 'youtube_id', [ 'label' => __( 'User ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Youtube User id. Example : https://www.youtube.com/user/vevo only add <strong>vevo</strong> in field. please add only one field for youtube feed. User ID Or Playlist ID or Channel ID. not need 3 field fillup.', 'elementor' ), ] ); $this->add_control( 'youtube_playlist_id', [ 'label' => __( 'Enter Playlist ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Youtube Playlist id. Example : https://www.youtube.com/watch?v=9Pc81i6XOz0&list=LL2pmfLm7iq6Ov1UwYrWYkZA&spfreload=10 only add <strong>LL2pmfLm7iq6Ov1UwYrWYkZA</strong> in field', 'elementor' ), ] ); $this->add_control( 'youtube_channel_id', [ 'label' => __( 'Enter Channel ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Youtube Channel id. Example : https://www.youtube.com/channel/UCY14-R0pMrQzLne7lbTqRvA?spfreload=10 only add <strong>UCY14-R0pMrQzLne7lbTqRvA</strong> in field', 'elementor' ), ] ); $this->add_control( 'youtube_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start vimeo $this->start_controls_section( 'social_section3', [ 'label' => esc_html__( 'Vimeo', 'elementor' ), ] ); $this->add_control( 'vimeo_id', [ 'label' => __( 'User ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Vimeo User id.Example : https://vimeo.com/sonyprofessional only add <strong>sonyprofessional</strong> in field', 'elementor' ), ] ); $this->add_control( 'vimeo_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start twitter $this->start_controls_section( 'social_section4', [ 'label' => esc_html__( 'Twitter', 'elementor' ), ] ); $this->add_control( 'twitter_type', [ 'label' => __( 'Select Type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '@', 'options' => [ '@' => __( 'For User', 'elementor' ), '#' => __( 'For Hashtag', 'elementor' ) ], 'description' => __( 'Select Twitter User feed type.', 'elementor' ), ] ); $this->add_control( 'twitter_id', [ 'label' => __( 'Username / Hashtag', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Twitter Username for user and hashtag for search feed.', 'elementor' ), ] ); $this->add_control( 'twitter_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start instagram $this->start_controls_section( 'social_section5', [ 'label' => esc_html__( 'Instagram', 'elementor' ), ] ); $this->add_control( 'instagram_id', [ 'label' => __( 'User ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Instagram UserID.It is only numeric id. create User ID <a href="https://smashballoon.com/instagram-feed/find-instagram-user-id/" target="_blank">here</a>.', 'elementor' ), ] ); $this->add_control( 'instagram_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); $this->start_controls_section( 'layout', [ 'label' => esc_html__( 'Layout', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'skin_type', [ 'label' => __( 'Skin type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'template', 'options' => [ 'template' => __( 'Style1', 'elementor' ), 'template1' => __( 'Style2', 'elementor' ), 'template2' => __( 'Style3', 'elementor' ), 's1' => __( 'Style4', 'elementor' ), 's2' => __( 'Style5', 'elementor' ), 's3' => __( 'Style6', 'elementor' ) ], 'description' => __( 'Choose skin type for Social feed layout.', 'elementor' ), ] ); $this->add_control( 'grid_columns_count_for_desktop', [ 'label' => __( 'Desktop Columns Count', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'vcfti-col-md-3', 'options' => [ 'vcfti-col-md-12' => __( '1 Column', 'elementor' ), 'vcfti-col-md-6' => __( '2 Columns', 'elementor' ), 'vcfti-col-md-4' => __( '3 Columns', 'elementor' ), 'vcfti-col-md-3' => __( '4 Columns', 'elementor' ), 'vcfti-col-md-15' => __( '5 Columns', 'elementor' ) ], 'description' => __( 'Choose Desktop(PC Mode) Columns Count', 'elementor' ), ] ); $this->add_control( 'grid_columns_count_for_tablet', [ 'label' => __( 'Tablet Columns Count', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'vcfti-col-sm-4', 'options' => [ 'vcfti-col-sm-12' => __( '1 Column', 'elementor' ), 'vcfti-col-sm-6' => __( '2 Columns', 'elementor' ), 'vcfti-col-sm-4' => __( '3 Columns', 'elementor' ), 'vcfti-col-sm-3' => __( '4 Columns', 'elementor' ), 'vcfti-col-sm-15' => __( '5 Columns', 'elementor' ) ], 'description' => __( 'Choose Tablet Columns Count', 'elementor' ), ] ); $this->add_control( 'grid_columns_count_for_mobile', [ 'label' => __( 'Mobile Columns Count', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'vcfti-col-xs-12', 'options' => [ 'vcfti-col-xs-12' => __( '1 Column', 'elementor' ), 'vcfti-col-xs-6' => __( '2 Columns', 'elementor' ), 'vcfti-col-xs-4' => __( '3 Columns', 'elementor' ), 'vcfti-col-xs-3' => __( '4 Columns', 'elementor' ), 'vcfti-col-xs-15' => __( '5 Columns', 'elementor' ) ], 'description' => __( 'Choose Mobile Columns Count', 'elementor' ), ] ); $this->add_control( 'excerpt_length', [ 'label' => esc_html__( 'Description Length', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '150', 'description' => __( 'set Description length.default:150.If you set 0 no display Discription in fronted site', 'elementor' ) ] ); $this->add_control( 'hide_media', [ 'label' => __( 'Hide Media', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'If you check not display Media Image in feed.', 'elementor' ) ] ); $this->add_control( 'filter', [ 'label' => __( 'Show filter', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'Add Social Filter to top of the page.', 'elementor' ) ] ); $this->add_control( 'sort_filter', [ 'label' => __( 'Show Sorting Filter', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'Display Sorting Filter.', 'elementor' ), 'condition' => array( 'filter' => 'yes', ), ] ); $this->add_control( 'popup', [ 'label' => __( 'Popup Content Style', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'p1', 'options' => [ 'p1' => __( 'Style1', 'elementor' ), 'p2' => __( 'Style1', 'elementor' ) ], 'description' => __( 'Choose popup type for Social feed layout.', 'elementor' ), ] ); $this->add_control( 'loadmore', [ 'label' => __( 'Show more', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'yes', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'add Show more feed button.', 'elementor' ) ] ); $this->add_control( 'loadmore_text', [ 'label' => __( 'Show more text', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => 'Show More', 'description' => __( 'add Show more button text.Default:Show More', 'elementor' ), 'condition' => array( 'loadmore' => 'yes', ), ] ); $this->add_control( 'date_sorting', [ 'label' => __( 'Onload Date sorting', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'set Onload feed Date sorting.', 'elementor' ) ] ); $this->add_control( 'effect', [ 'label' => __( 'Feed load Effect', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'slideInUp', 'options' => $animations, 'description' => __( 'Select Feed load effect.', 'elementor' ), ] ); $this->add_control( 'cache_time', [ 'label' => esc_html__( 'Cache Time', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '360', 'description' => __( 'Set Cache Time for Reducing the number of API calls.', 'elementor' ) ] ); $this->add_control( 'cache_id', [ 'label' => __( 'Add Rendom key For Cache', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => el_fb_social_stream_generateRandomString(), 'description' => __( 'Add Rendom key For Cache. if update page name so please change this random key for remove cache', 'elementor' ), ] ); $this->add_control( 'pbgcolor', [ 'label' => esc_html__( 'Post Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_margin_container' => 'background: {{VALUE}} !important;', ], 'description' => __( 'set post background color.', 'elementor' ), ] ); $this->add_control( 'pbghcolor', [ 'label' => esc_html__( 'Post hover Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_margin_container:hover' => 'background: {{VALUE}} !important;', ], 'description' => __( 'set Post hover Background Color.', 'elementor' ), ] ); $this->add_control( 'tcolor', [ 'label' => esc_html__( 'Title Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc-author-title,{{WRAPPER}} .svc-text-title' => 'color: {{VALUE}} !important;', ], 'description' => __( 'set Title Color.', 'elementor' ), ] ); $this->add_control( 'ftcolor', [ 'label' => esc_html__( 'Filter text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_social_filter_ul li a' => 'color: {{VALUE}} !important;', '{{WRAPPER}} .svc_social_filter_ul li' => 'border: 1px solid {{VALUE}} !important;', ], 'description' => __( 'set Filter text Color.', 'elementor' ), ] ); $this->add_control( 'ftacolor', [ 'label' => esc_html__( 'Filter text Active Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_social_filter_ul li.active a' => 'color: {{VALUE}} !important;', ], 'description' => __( 'set Filter text Active Color.', 'elementor' ), ] ); $this->add_control( 'ftabgcolor', [ 'label' => esc_html__( 'Filter text Active Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_social_filter_ul li.active' => 'background: {{VALUE}} !important; border:1px solid {{VALUE}} !important;', ], 'description' => __( 'set Filter text Active Background Color.', 'elementor' ), ] ); $this->add_control( 'loder_color', [ 'label' => esc_html__( 'Load more Loader and Text Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} nav#svc_infinite div.loading-spinner .ui-spinner .side .fill' => 'background: {{VALUE}} !important;', '{{WRAPPER}} .svc_carousel_loadmore' => 'color: {{VALUE}} !important;', ], 'description' => __( 'set Load more Loader and Text Color.', 'elementor' ), ] ); $this->end_controls_section(); } protected function render( $instance = [] ) { $grid = $this->get_settings(); // get our input from the widget settings. echo do_shortcode('[fb_you_vimeo_twit_insta fb_type="'.$grid["fb_type"].'" fb_id="'.$grid["fb_id"].'" fb_num="'.$grid["fb_num"].'" youtube_id="'.$grid["youtube_id"].'" youtube_playlist_id="'.$grid["youtube_playlist_id"].'" youtube_num="'.$grid["youtube_num"].'" vimeo_id="'.$grid["vimeo_id"].'" vimeo_num="'.$grid["vimeo_num"].'" twitter_type="'.$grid["twitter_type"].'" twitter_id="'.$grid["twitter_id"].'" twitter_num="'.$grid["twitter_num"].'" instagram_id="'.$grid["instagram_id"].'" instagram_num="'.$grid["instagram_num"].'" post_type="post_layout" skin_type="'.$grid["skin_type"].'" car_display_item="'.$grid["car_display_item"].'" car_pagination="'.$grid["car_pagination"].'" car_pagination_num="'.$grid["car_pagination_num"].'" car_navigation="'.$grid["car_navigation"].'" car_autoplay="'.$grid["car_autoplay"].'" car_autoplay_time="'.$grid["car_autoplay_time"].'" grid_columns_count_for_desktop="'.$grid["grid_columns_count_for_desktop"].'" grid_columns_count_for_tablet="'.$grid["grid_columns_count_for_tablet"].'" grid_columns_count_for_mobile="'.$grid["grid_columns_count_for_mobile"].'" excerpt_length="'.$grid["excerpt_length"].'" hide_media="'.$grid["hide_media"].'" filter="'.$grid["filter"].'" sort_filter="'.$grid["sort_filter"].'" loadmore="'.$grid["loadmore"].'" date_sorting="'.$grid["date_sorting"].'" loadmore_text="'.$grid["loadmore_text"].'" effect="'.$grid["effect"].'" cache_time="'.$grid["cache_time"].'" cache_id="'.$grid["cache_id"].'" svc_class="'.$grid["svc_class"].'" pbgcolor="'.$grid["pbgcolor"].'" pbghcolor="'.$grid["pbghcolor"].'" tcolor="'.$grid["tcolor"].'" popup="'.$grid["popup"].'" ftcolor="'.$grid["ftcolor"].'" ftacolor="'.$grid["ftacolor"].'" ftabgcolor="'.$grid["ftabgcolor"].'" loder_color="'.$grid["loder_color"].'" car_navigation_color="'.$grid["car_navigation_color"].'"]'); } protected function content_template() {} public function render_plain_content( $instance = [] ) {} } class Widget_My_social_stream_carousel extends Widget_Base { public function get_name() { return 'social-stream-carousel'; } public function get_title() { return __( 'Social Stream Carousel', 'elementor' ); } public function get_icon() { // Icon name from the Elementor font file, as per http://dtbaker.net/web-development/creating-your-own-custom-elementor-widgets/ return 'eicon-social-icons'; } public function get_categories() { return [ 'social-stream' ]; // category of the widget } protected function _register_controls() { $animations = array( 'None' => '', 'bounce' => 'bounce', 'flash' => 'flash', 'pulse' => 'pulse', 'rubberBand' => 'rubberBand', 'shake' => 'shake', 'swing' => 'swing', 'tada' => 'tada', 'bounce' => 'bounce', 'wobble' => 'wobble', 'bounceIn' => 'bounceIn', 'bounceInDown' => 'bounceInDown', 'bounceInLeft' => 'bounceInLeft', 'bounceInRight' => 'bounceInRight', 'bounceInUp' => 'bounceInUp', 'fadeIn' => 'fadeIn', 'fadeInDown' => 'fadeInDown', 'fadeInDownBig' => 'fadeInDownBig', 'fadeInLeft' => 'fadeInLeft', 'fadeInLeftBig' => 'fadeInLeftBig', 'fadeInRight' => 'fadeInRight', 'fadeInRightBig' => 'fadeInRightBig', 'fadeInUp' => 'fadeInUp', 'fadeInUpBig' => 'fadeInUpBig', 'flip' => 'flip', 'flipInX' => 'flipInX', 'flipInY' => 'flipInY', 'lightSpeedIn' => 'lightSpeedIn', 'rotateIn' => 'rotateIn', 'rotateInDownLeft' => 'rotateInDownLeft', 'rotateInDownRight' => 'rotateInDownRight', 'rotateInUpLeft' => 'rotateInUpLeft', 'rotateInUpRight' => 'rotateInUpRight', 'slideInUp' => 'slideInUp', 'slideInDown' => 'slideInDown', 'slideInLeft' => 'slideInLeft', 'slideInRight' => 'slideInRight', 'zoomIn' => 'zoomIn', 'zoomInDown' => 'zoomInDown', 'zoomInLeft' => 'zoomInLeft', 'zoomInRight' => 'zoomInRight', 'zoomInUp' => 'zoomInUp', 'rollIn' => 'rollIn', 'twisterInDown' => 'twisterInDown', 'twisterInUp' => 'twisterInUp', 'swap' => 'swap', 'puffIn' => 'puffIn', 'vanishIn' => 'vanishIn', 'openDownLeftRetourn' => 'openDownLeftRetourn', 'openDownRightRetourn' => 'openDownRightRetourn', 'openUpLeftRetourn' => 'openUpLeftRetourn', 'openUpRightRetourn' => 'openUpRightRetourn', 'perspectiveDownRetourn' => 'perspectiveDownRetourn', 'perspectiveUpRetourn' => 'perspectiveUpRetourn', 'perspectiveLeftRetourn' => 'perspectiveLeftRetourn', 'perspectiveRightRetourn' => 'perspectiveRightRetourn', 'slideDownRetourn' => 'slideDownRetourn', 'slideUpRetourn' => 'slideUpRetourn', 'slideLeftRetourn' => 'slideLeftRetourn', 'slideRightRetourn' => 'slideRightRetourn', 'swashIn' => 'swashIn', 'foolishIn' => 'foolishIn', 'tinRightIn' => 'tinRightIn', 'tinLeftIn' => 'tinLeftIn', 'tinUpIn' => 'tinUpIn', 'tinDownIn' => 'tinDownIn', 'boingInUp' => 'boingInUp', 'spaceInUp' => 'spaceInUp', 'spaceInRight' => 'spaceInRight', 'spaceInDown' => 'spaceInDown', 'spaceInLeft' => 'spaceInLeft' ); $this->start_controls_section( 'social_section', [ 'label' => esc_html__( 'Message', 'elementor' ), ] ); $this->add_control( 'refer_wp_org', [ 'raw' => __( 'Please add Social Credential in Social Setting. <a href="'.get_site_url().'/wp-admin/admin.php?page=fb-you-vimeo-twit-insta-content-social-setting">Setup here</a>', 'elementor' ), 'type' => Controls_Manager::RAW_HTML, 'classes' => 'elementor-descriptor', ] ); $this->end_controls_section(); //start facebook $this->start_controls_section( 'social_section1', [ 'label' => esc_html__( 'Facebook', 'elementor' ), ] ); $this->add_control( 'fb_type', [ 'label' => __( 'Select Type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '@', 'options' => [ '@' => __( 'For Page/User', 'elementor' ), '#' => __( 'For Group', 'elementor' ) ], 'description' => __( 'Select facebook User,page and group feed type.', 'elementor' ), ] ); $this->add_control( 'fb_id', [ 'label' => __( 'Page Username', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Facebook Page/Username or Group. Example : https://www.facebook.com/VinDiesel/ only add <strong>VinDiesel</strong> in field', 'elementor' ), ] ); $this->add_control( 'fb_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start youtube //start facebook $this->start_controls_section( 'social_section2', [ 'label' => esc_html__( 'YouTube', 'elementor' ), ] ); $this->add_control( 'youtube_id', [ 'label' => __( 'User ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Youtube User id. Example : https://www.youtube.com/user/vevo only add <strong>vevo</strong> in field. please add only one field for youtube feed. User ID Or Playlist ID or Channel ID. not need 3 field fillup.', 'elementor' ), ] ); $this->add_control( 'youtube_playlist_id', [ 'label' => __( 'Enter Playlist ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Youtube Playlist id. Example : https://www.youtube.com/watch?v=9Pc81i6XOz0&list=LL2pmfLm7iq6Ov1UwYrWYkZA&spfreload=10 only add <strong>LL2pmfLm7iq6Ov1UwYrWYkZA</strong> in field', 'elementor' ), ] ); $this->add_control( 'youtube_channel_id', [ 'label' => __( 'Enter Channel ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Youtube Channel id. Example : https://www.youtube.com/channel/UCY14-R0pMrQzLne7lbTqRvA?spfreload=10 only add <strong>UCY14-R0pMrQzLne7lbTqRvA</strong> in field', 'elementor' ), ] ); $this->add_control( 'youtube_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start vimeo $this->start_controls_section( 'social_section3', [ 'label' => esc_html__( 'Vimeo', 'elementor' ), ] ); $this->add_control( 'vimeo_id', [ 'label' => __( 'User ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Vimeo User id.Example : https://vimeo.com/sonyprofessional only add <strong>sonyprofessional</strong> in field', 'elementor' ), ] ); $this->add_control( 'vimeo_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start twitter $this->start_controls_section( 'social_section4', [ 'label' => esc_html__( 'Twitter', 'elementor' ), ] ); $this->add_control( 'twitter_type', [ 'label' => __( 'Select Type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => '@', 'options' => [ '@' => __( 'For User', 'elementor' ), '#' => __( 'For Hashtag', 'elementor' ) ], 'description' => __( 'Select Twitter User feed type.', 'elementor' ), ] ); $this->add_control( 'twitter_id', [ 'label' => __( 'Username / Hashtag', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Twitter Username for user and hashtag for search feed.', 'elementor' ), ] ); $this->add_control( 'twitter_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); //start instagram $this->start_controls_section( 'social_section5', [ 'label' => esc_html__( 'Instagram', 'elementor' ), ] ); $this->add_control( 'instagram_id', [ 'label' => __( 'User ID', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => '', 'description' => __( 'Enter Instagram UserID.It is only numeric id. create User ID <a href="https://smashballoon.com/instagram-feed/find-instagram-user-id/" target="_blank">here</a>.', 'elementor' ), ] ); $this->add_control( 'instagram_num', [ 'label' => esc_html__( 'Count per page limit', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Limit for feed par page.', 'elementor' ) ] ); $this->end_controls_section(); $this->start_controls_section( 'layout', [ 'label' => esc_html__( 'Layout', 'elementor' ), 'tab' => Controls_Manager::TAB_STYLE, ] ); $this->add_control( 'skin_type', [ 'label' => __( 'Skin type', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'template', 'options' => [ 'template' => __( 'Style1', 'elementor' ), 'template1' => __( 'Style2', 'elementor' ), 'template2' => __( 'Style3', 'elementor' ), 's1' => __( 'Style4', 'elementor' ), 's2' => __( 'Style5', 'elementor' ), 's3' => __( 'Style6', 'elementor' ) ], 'description' => __( 'Choose skin type for Social feed layout.', 'elementor' ), ] ); $this->add_control( 'car_display_item', [ 'label' => esc_html__( 'Items Display', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '4', 'description' => __( 'This variable allows you to set the maximum amount of items displayed at a time with the widest browser width.', 'elementor' ) ] ); $this->add_control( 'car_pagination', [ 'label' => __( 'Show pagination', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'Show dots pagination.', 'elementor' ) ] ); $this->add_control( 'car_pagination_num', [ 'label' => __( 'Show pagination Numbers', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'Show numbers inside pagination buttons.', 'elementor' ), 'condition' => array( 'car_pagination' => 'yes', ), ] ); $this->add_control( 'car_navigation', [ 'label' => __( 'Hide navigation', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'Display "next" and "prev" buttons.', 'elementor' ) ] ); $this->add_control( 'car_autoplay', [ 'label' => __( 'AutoPlay', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'Set Slider Autoplay.', 'elementor' ) ] ); $this->add_control( 'car_autoplay_time', [ 'label' => esc_html__( 'autoPlay Time (seconds)', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '5', 'description' => __( 'Set Autoplay slider speed.', 'elementor' ), 'condition' => array( 'car_autoplay' => 'yes', ), ] ); $this->add_control( 'excerpt_length', [ 'label' => esc_html__( 'Description Length', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '150', 'description' => __( 'set Description length.default:150.If you set 0 no display Discription in fronted site', 'elementor' ) ] ); $this->add_control( 'hide_media', [ 'label' => __( 'Hide Media', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'If you check not display Media Image in feed.', 'elementor' ) ] ); $this->add_control( 'popup', [ 'label' => __( 'Popup Content Style', 'elementor' ), 'type' => Controls_Manager::SELECT, 'default' => 'p1', 'options' => [ 'p1' => __( 'Style1', 'elementor' ), 'p2' => __( 'Style1', 'elementor' ) ], 'description' => __( 'Choose popup type for Social feed layout.', 'elementor' ), ] ); $this->add_control( 'date_sorting', [ 'label' => __( 'Onload Date sorting', 'your-plugin' ), 'type' => Controls_Manager::SWITCHER, 'default' => 'no', 'label_on' => __( 'yes', 'your-plugin' ), 'label_off' => __( 'no', 'your-plugin' ), 'return_value' => 'yes', 'description' => __( 'set Onload feed Date sorting.', 'elementor' ) ] ); $this->add_control( 'cache_time', [ 'label' => esc_html__( 'Cache Time', 'elementor' ), 'type' => Controls_Manager::NUMBER, 'default' => '360', 'description' => __( 'Set Cache Time for Reducing the number of API calls.', 'elementor' ) ] ); $this->add_control( 'cache_id', [ 'label' => __( 'Add Rendom key For Cache', 'elementor' ), 'type' => Controls_Manager::TEXT, 'default' => el_fb_social_stream_generateRandomString(), 'description' => __( 'Add Rendom key For Cache. if update page name so please change this random key for remove cache', 'elementor' ), ] ); $this->add_control( 'pbgcolor', [ 'label' => esc_html__( 'Post Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_margin_container' => 'background: {{VALUE}} !important;', ], 'description' => __( 'set post background color.', 'elementor' ), ] ); $this->add_control( 'pbghcolor', [ 'label' => esc_html__( 'Post hover Background Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc_margin_container:hover' => 'background: {{VALUE}} !important;', ], 'description' => __( 'set Post hover Background Color.', 'elementor' ), ] ); $this->add_control( 'tcolor', [ 'label' => esc_html__( 'Title Color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .svc-author-title,{{WRAPPER}} .svc-text-title' => 'color: {{VALUE}} !important;', ], 'description' => __( 'set Title Color.', 'elementor' ), ] ); $this->add_control( 'car_navigation_color', [ 'label' => esc_html__( 'Navigation and Pagination color', 'elementor' ), 'type' => Controls_Manager::COLOR, 'selectors' => [ '{{WRAPPER}} .owl-theme .owl-controls .owl-buttons div' => 'background: {{VALUE}} !important;', '{{WRAPPER}} .owl-theme .owl-controls .owl-page span' => 'background: {{VALUE}} !important;', ], 'description' => __( 'Set Navigation and pagination color.', 'elementor' ), ] ); $this->end_controls_section(); } protected function render( $instance = [] ) { $grid = $this->get_settings(); // get our input from the widget settings. echo do_shortcode('[fb_you_vimeo_twit_insta fb_type="'.$grid["fb_type"].'" fb_id="'.$grid["fb_id"].'" fb_num="'.$grid["fb_num"].'" youtube_id="'.$grid["youtube_id"].'" youtube_playlist_id="'.$grid["youtube_playlist_id"].'" youtube_num="'.$grid["youtube_num"].'" vimeo_id="'.$grid["vimeo_id"].'" vimeo_num="'.$grid["vimeo_num"].'" twitter_type="'.$grid["twitter_type"].'" twitter_id="'.$grid["twitter_id"].'" twitter_num="'.$grid["twitter_num"].'" instagram_id="'.$grid["instagram_id"].'" instagram_num="'.$grid["instagram_num"].'" post_type="carousel" skin_type="'.$grid["skin_type"].'" car_display_item="'.$grid["car_display_item"].'" car_pagination="'.$grid["car_pagination"].'" car_pagination_num="'.$grid["car_pagination_num"].'" car_navigation="'.$grid["car_navigation"].'" car_autoplay="'.$grid["car_autoplay"].'" car_autoplay_time="'.$grid["car_autoplay_time"].'" grid_columns_count_for_desktop="'.$grid["grid_columns_count_for_desktop"].'" grid_columns_count_for_tablet="'.$grid["grid_columns_count_for_tablet"].'" grid_columns_count_for_mobile="'.$grid["grid_columns_count_for_mobile"].'" excerpt_length="'.$grid["excerpt_length"].'" hide_media="'.$grid["hide_media"].'" filter="'.$grid["filter"].'" sort_filter="'.$grid["sort_filter"].'" loadmore="'.$grid["loadmore"].'" date_sorting="'.$grid["date_sorting"].'" loadmore_text="'.$grid["loadmore_text"].'" effect="'.$grid["effect"].'" cache_time="'.$grid["cache_time"].'" cache_id="'.$grid["cache_id"].'" svc_class="'.$grid["svc_class"].'" pbgcolor="'.$grid["pbgcolor"].'" pbghcolor="'.$grid["pbghcolor"].'" tcolor="'.$grid["tcolor"].'" popup="'.$grid["popup"].'" ftcolor="'.$grid["ftcolor"].'" ftacolor="'.$grid["ftacolor"].'" ftabgcolor="'.$grid["ftabgcolor"].'" loder_color="'.$grid["loder_color"].'" car_navigation_color="'.$grid["car_navigation_color"].'"]'); } protected function content_template() {} public function render_plain_content( $instance = [] ) {} }
[+]
..
[-] get_tweets.php
[edit]
[-] .htaccess
[edit]
[-] social-setting.php
[edit]
[-] el-setup.php
[edit]
[-] all_function.php
[edit]
[-] social-grid-setting.php
[edit]
[-] el-addon.php
[edit]
[-] twitter_proxy.php
[edit]
[-] add-param.php
[edit]