Sindbad~EG File Manager

Current Path : /var/www/quickscrum.com/wp-content/plugins/ultimate-social-media-icons/libs/controllers/
Upload File :
Current File : /var/www/quickscrum.com/wp-content/plugins/ultimate-social-media-icons/libs/controllers/sfsi_socialhelper.php

<?php

/* social helper class include all function which are used to intract with  */
class sfsi_SocialHelper
{
	private $url,$timeout = 10;

	/* get twitter followers */
	function sfsi_get_tweets( $username, $tw_settings ) {
		require_once( SFSI_DOCROOT.'/helpers/twitteroauth/twiiterCount.php' );
		return sfsi_twitter_followers();
	}

	/* get linkedIn counts */
	function sfsi_get_linkedin( $url ) {
		$json_string = $this->file_get_contents_curl( "https://www.linkedin.com/countserv/count/share?url=" . urlencode($url) . "&format=json" );
		$json = json_decode( $json_string, true );
		return isset( $json['count'] ) ? intval( $json['count'] ) : 0;
	}

	/* get linkedIn follower */
	function sfsi_getlinkedin_follower( $ln_company, $APIsettings ) {

		require_once( SFSI_DOCROOT.'/helpers/linkedin-api/linkedin-api.php' );

		// $scheme = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https" : "http";
		// $url=$scheme.'://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];

		$url = sfsi_get_current_page_url();

		$linkedin = new LinkedIn(
			$APIsettings['ln_api_key'],
			$APIsettings['ln_secret_key'],
			$APIsettings['ln_oAuth_user_token'],
			$url
		);

		$followers = $linkedin->getCompanyFollowersByName( $ln_company );

		if ( strpos( $followers, '404' ) === false ) {
			return strip_tags( $followers );
		} else {
			return 0;
		}
	}

	/* get facebook likes */
	// function sfsi_get_fb($url)
	// {
	// 	$count 		 = 0;
	// 	$json_string = $this->file_get_contents_curl('https://graph.facebook.com/?id='.$url);
	// 	$json 		 = json_decode($json_string);

	// 	if(isset($json) && isset($json->share) && isset($json->share->share_count)){
	// 		$count  = $json->share->share_count;
	// 	}
	// 	return $count;
	// }
    function sfsi_get_fb($url, $return_json = false)
    {
        $count = 0;
        $appid = '1400199447602334';
        $appsecret = '0efd3fb7877b13d4b1346b5c47a2620e';

        //get last update
        $lastUpdate = get_option('sfsi_last_update_facebook');
        $countInfo = get_option('sfsi_facebok_url_count_' . $url);
        $option4 = maybe_unserialize( get_option( 'sfsi_section4_options', false ) );
        if (!$lastUpdate || !$countInfo ||
            !isset( $option4['sfsi_facebook_enableCache']) ||
            ($option4['sfsi_facebook_enableCache'] == 'no')) {

            $json_string = $this->file_get_contents_curl('https://graph.facebook.com/v12.0/?id=' . $url . "&fields=engagement&access_token=" . $appid . '|' . $appsecret, true);
            $json = json_decode($json_string);
            if (isset($json) && isset($json->engagement)) {
                if ($return_json){
                    $count =  $json->engagement;
                    update_option('sfsi_facebok_url_count_json_' . $url, serialize($count));

                }else{
                    $count = $json->engagement->share_count + $json->engagement->reaction_count + $json->engagement->comment_count + $json->engagement->comment_plugin_count;

                    //update option
                    update_option('sfsi_facebok_url_count_' . $url, $count);
                }

                //update date last update
                update_option('sfsi_last_update_facebook', time());
            }

        }else{
            $dif = time() - $lastUpdate;
            if ($dif > 86400)
            {
                $json_string = $this->file_get_contents_curl('https://graph.facebook.com/v12.0/?id=' . $url . "&fields=engagement&access_token=" . $appid . '|' . $appsecret, true);

                $json = json_decode($json_string);
                if (isset($json) && isset($json->engagement)) {
                    if ($return_json){
                        $count =  $json->engagement;

                        //update option
                        update_option('sfsi_facebok_url_count_json_' . $url, serialize($count));
                    }else{
                        $count = $json->engagement->share_count + $json->engagement->reaction_count + $json->engagement->comment_count + $json->engagement->comment_plugin_count;

                        //update option
                        update_option('sfsi_facebok_url_count_' . $url, $count);
                    }
                    //update date last update
                    update_option('sfsi_last_update_facebook', time());

                }

            }else {
                if ($return_json){
                    $count = unserialize(get_option('sfsi_facebok_url_count_json_' . $url));
                }else{
                    $count = get_option('sfsi_facebok_url_count_' . $url);
                }
            }
        }

        return $count;
    }

	function sfsi_banner_get_fb( $url ) {
		$count 		 = 0;
		$appid = '1400199447602334';
		$appsecret = '0efd3fb7877b13d4b1346b5c47a2620e';

        //get last update
        $lastUpdate = get_option('sfsi_last_update_facebook');
        $option4 = maybe_unserialize( get_option( 'sfsi_section4_options', false ) );
        if (!$lastUpdate || (isset( $option4['sfsi_facebook_enableCache']) && $option4['sfsi_facebook_enableCache'] == 'no')) {
            $json_string = $this->file_get_contents_curl( 'https://graph.facebook.com/v12.0/?id='.$url."&fields=engagement&access_token=".$appid.'|'.$appsecret, true );
            $json 		 = json_decode( $json_string );
            if( isset( $json ) && isset( $json->engagement ) ) {
                $count = $json->engagement->share_count + $json->engagement->reaction_count + $json->engagement->comment_count +  $json->engagement->comment_plugin_count;

                //update option
                update_option('sfsi_facebok_url_count_' . $url, $count);

                //update date last update
                update_option('sfsi_last_update_facebook', time());
            }
        }else{
            $dif = time() - $lastUpdate;

            if ($dif > 86400)
            {
                $json_string = $this->file_get_contents_curl('https://graph.facebook.com/v12.0/?id=' . $url . "&fields=engagement&access_token=" . $appid . '|' . $appsecret, true);
                $json = json_decode($json_string);
                if (isset($json) && isset($json->engagement)) {
                    $count = $json->engagement->share_count + $json->engagement->reaction_count + $json->engagement->comment_count + $json->engagement->comment_plugin_count;

                    //update option
                    update_option('sfsi_facebok_url_count_' . $url, $count);

                    //update date last update
                    update_option('sfsi_last_update_facebook', time());

                }

            }else {
                $count = get_option('sfsi_facebok_url_count_' . $url);
            }
        }

		return $count;
	}

	/* get facebook page likes */
	function sfsi_get_fb_pagelike( $url ) {

        $count = 0;

        $appid = '1158609188420319';
		$appsecret = '191de9759fc4109320cdfc4b46279ff7';
        $lastUpdate = get_option('sfsi_last_update_facebook_page');

        $option4 = maybe_unserialize( get_option( 'sfsi_section4_options', false ) );
        if (!$lastUpdate || !isset( $option4['sfsi_facebook_enableCache']) || $option4['sfsi_facebook_enableCache'] == 'no') {
            $json_url ='https://graph.facebook.com/'.$url.'?fields=fan_count&access_token='.$appid.'|'.$appsecret;
            $json_string = $this->file_get_contents_curl( $json_url, true );
            $json = json_decode( $json_string, true );

            if( isset( $json ) && isset( $json['fan_count']  ) ) {
                $count = $json['fan_count'];

                //update option
                update_option('sfsi_facebok_url_count_' . $url, $count);

                //update date last update
                update_option('sfsi_last_update_facebook_page', time());

            }
        }else{
            $dif = time() - $lastUpdate;

            if ($dif > 86400)
            {
                $json_url ='https://graph.facebook.com/'.$url.'?fields=fan_count&access_token='.$appid.'|'.$appsecret;
                $json_string = $this->file_get_contents_curl( $json_url, true );
                $json = json_decode( $json_string, true );

                if( isset( $json ) && isset( $json['fan_count']  ) ) {
                    $count = $json['fan_count'];

                    //update option
                    update_option('sfsi_facebok_url_count_' . $url, $count);

                    //update date last update
                    update_option('sfsi_last_update_facebook_page', time());

                }

            }else {
                $count = get_option('sfsi_facebok_url_count_' . $url);
            }
        }

		return $count;
	}

	/* get youtube subscribers  */
	function sfsi_get_youtube( $user ) {
		if( $user == 'follow.it' ) {
			$sfsi_section4_options = maybe_unserialize( get_option( 'sfsi_section4_options', false ) );

			$user = (
				isset($sfsi_section4_options['sfsi_youtube_channelId']) &&
				!empty($sfsi_section4_options['sfsi_youtube_channelId'])
			) ? $sfsi_section4_options['sfsi_youtube_channelId'] : 'UCYQyWnJPrY4XY3Avc7BU9aA';

			$xmlData = $this->file_get_contents_curl( 'https://www.googleapis.com/youtube/v3/channels?part=statistics&id='.$user.'&key=AIzaSyB_XMi9MwNweEYyt7c122CidZxqGZqex6Y' );
		} else {
			$xmlData = $this->file_get_contents_curl( 'https://www.googleapis.com/youtube/v3/channels?part=statistics&forUsername='.$user.'&key=AIzaSyB_XMi9MwNweEYyt7c122CidZxqGZqex6Y' );
		}

		if($xmlData)
		{
			$xmlData = json_decode($xmlData);
			if(
				isset($xmlData->items) &&
				!empty($xmlData->items)
			)
			{
				$subs = $xmlData->items[0]->statistics->subscriberCount;
				$subs = $this->format_num($subs);
			} else {
				$subs=0;
			}
		} else {
			$subs=0;
		}
		return $subs;
	}

	/* get pinit counts  */
	function sfsi_get_pinterest( $url ) {
		//'https://api.pinterest.com/v3/pidgets/users/[username]/pins/'
		$return_data = $this->file_get_contents_curl('https://api.pinterest.com/v1/urls/count.json?callback=receiveCount&url='.urlencode($url));
		$json_string = preg_replace('/^receiveCount\((.*)\)$/', "\\1", $return_data);
		$json = json_decode($json_string, true);
		return isset($json['count'])?intval($json['count']):0;
	}

	/* get pinit counts for a user  */
	function get_UsersPins( $user_name, $board ) {
		$query=$user_name.'/'.$board;
		$url_respon=$this->sfsi_get_http_response_code('https://api.pinterest.com/v3/pidgets/boards/'.$query.'/pins/');
		if( $url_respon != 404 ) {
			$return_data = $this->file_get_contents_curl('https://api.pinterest.com/v3/pidgets/boards/'.$query.'/pins/');
			$json_string = preg_replace('/^receiveCount\((.*)\)$/', "\\1", $return_data);
			$json = json_decode($json_string, true);
		} else {
			$json['data']['user']['pin_count']=0;
		}

		return isset( $json['data']['user']['pin_count'] ) ? intval( $json['data']['user']['pin_count'] ) : 0;
	}

	/* send curl request   */
	private function file_get_contents_curl( $url, $curl = false )
	{
		$user_Agent = (isset($_SERVER['HTTP_USER_AGENT'])) ? $_SERVER['HTTP_USER_AGENT'] :'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)';

		// if(_is_curl_installed()){

		// 	$ch = curl_init();
		// 	curl_setopt($ch, CURLOPT_URL, $url);
		// 	curl_setopt($ch, CURLOPT_USERAGENT, $user_Agent);
		// 	curl_setopt($ch, CURLOPT_FAILONERROR, 1);
		// 	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
		// 	curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
		// 	curl_setopt($ch, CURLOPT_TIMEOUT, $this->timeout);
		// 	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		// 	$cont = curl_exec($ch);
		// 	if(curl_error($ch))
		// 	{
		// 		//die(curl_error($ch));
		// 	}
		// 	return $cont;
		// }

		if( _is_curl_installed() && $curl ) {
			$options = array(
			    CURLOPT_RETURNTRANSFER => true,
			    CURLOPT_HEADER         => false,
			    CURLOPT_FOLLOWLOCATION => true,
			    CURLOPT_MAXREDIRS      => 10,
			    CURLOPT_ENCODING       => "",
			    CURLOPT_USERAGENT      => $user_Agent,
			    CURLOPT_AUTOREFERER    => true,
			    CURLOPT_CONNECTTIMEOUT => $this->timeout,
			    CURLOPT_TIMEOUT        => $this->timeout,
			);

			$ch = curl_init($url);
			curl_setopt_array($ch, $options);

			$content  = curl_exec($ch);
			if(curl_errno($ch)){
			    return false;
			} else {
			    return $content;
			}
			curl_close($ch);

		} else {
			$cont = wp_remote_get($url,array(
				'timeout'     => $this->timeout,
			    'redirection' => 0,
			    'user-agent'  => $user_Agent,
			    'blocking'    => true,
			    'sslverify'   => false
			));
			if(is_array($cont)){
				return $cont['body'];
			}else{
				return false;
			}
			// else{
			// 	return false;
			// }
		}
	}

	private function get_content_curl($url)
	{
		$user_Agent = (isset($_SERVER['HTTP_USER_AGENT'])) ? $_SERVER['HTTP_USER_AGENT'] :'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)';
		// if(_is_curl_installed()){
		// 	$curl = curl_init();
		// 	curl_setopt($curl, CURLOPT_HEADER, false);
		// 	curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		// 	curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
		// 	curl_setopt($curl, CURLOPT_HTTPGET, 1);
		// 	curl_setopt($curl, CURLOPT_URL, $url );
		// 	curl_setopt($curl, CURLOPT_DNS_USE_GLOBAL_CACHE, false );
		// 	curl_setopt($curl, CURLOPT_DNS_CACHE_TIMEOUT, 2 );
		// 	$cont = curl_exec($curl);

		// 	if(curl_error($curl))
		// 	{
		// 		//die(curl_error($ch));
		// 	}
		// 	return $cont;
		// }
		// else{
		// 	return false;
		// }
		$cont = wp_remote_get($url,array(
			'timeout'     => $this->timeout,
		    'redirection' => 0,
		    'httpversion' => '1.0',
		    'user-agent'  => $user_Agent,
		    'blocking'    => true,
		    'sslverify'   => false
		));
		if(is_array($cont)){
			return $cont['body'];
		}else{
			return false;
		}
	}

	/* convert no. to 2K,3M format   */
	function format_num($num, $precision = 0)
	{
		if ((int)$num >= 1000 && (int)$num < 1000000) {
			$n_format = number_format((int)$num/1000,$precision).'k';
		} else if ($num >= 1000000 && $num < 1000000000) {
			$n_format = number_format((int)$num/1000000,$precision).'m';
		} else if ($num >= 1000000000) {
			$n_format=number_format((int)$num/1000000000,$precision).'b';
		} else {
			$n_format = (int)$num;
		}
		return $n_format;
	}

	/* convert no. to 2K,3M format */
	function format_num_back( $n ) {
		if ( intval( $n ) != $n ) {
			$check = preg_match_all( "/(\d+\.?\d+)\s*(\w)/", $n, $matches );
			if ( $check ) {
				$n = $matches[1][0];
				$suffix = strtolower( $matches[2][0] );
				switch ( $suffix ) {
					case "k":
						$n = $n * 1000;
					break;
					case "m":
						$n = $n * 1000000;
					break;
					case "b":
						$n = $n * 1000000000;
					break;
					case "t":
						$n = $n * 1000000000000;
					break;
				}
			} else {
				$n = intval( $n );
			}
		}
		return $n;
	}

  	/* create on page facebook links option */
	public function sfsi_FBlike($permalink, $showCount)
	{
		$send = 'false';
		$width = 180;
		$permalink = rawurlencode(esc_url(rawurldecode($permalink))); /*Vulnerability*/

		/*$fb_like_html = '<fb:like href="'.$permalink.'" width="'.$width.'" send="'.$send.'" showfaces="false" ';
		if($show_count) {
				$fb_like_html .= 'layout="button"';
		} else {
				$fb_like_html .= 'layout="button"';
		}
		$fb_like_html .= ' action="like"></fb:like>';*/
        $fb_like_html = '';

        $fb_like_html .= '<div class="fb-like" width="200" data-href="' . $permalink . '"  data-send="' . $send . '" ';

        if ($showCount == 1) {
            $fb_like_html .= ' data-layout="button_count" ';
        } else {
            $fb_like_html .= ' data-layout="button" ';
        }
        $fb_like_html .= ' ></div>';
        return $fb_like_html;
	}

	/*twitter like*/
	// function sfsi_twitterlike($permalink, $show_count)
	// {
	// 	$twitter_text = '';
	// 	return sfsi_twitterShare($permalink,$twitter_text);
	// }

	/* create on page facebook share option */
	public function sfsiFB_Share($permalink)
	{
		/*$fb_share_html = '<fb:share-button href="'.$permalink.'" width="140" ';
		$fb_share_html .= 'type="button"';
		$fb_share_html .= '></fb:share-button>';*/
		$fb_share_html = '';
		// $fb_share_html .= '<div class="fb-share-button" data-href="'.$permalink.'" data-layout="button"></div>';
		// return $fb_share_html;
		$shareurl = "https://www.facebook.com/sharer/sharer.php?u=";
	  	$shareurl = $shareurl . esc_attr($permalink);

	  	$option5 = maybe_unserialize( get_option( 'sfsi_section5_options', false ) );

	    $language = isset( $option5["sfsi_icons_language"] ) ? $option5["sfsi_icons_language"] : 'en_US';

	    if ( $language == "ar" ) {
	      $language = "ar_Ar";
	    }
	    if ( $language == "ja" ) {
	      $language = "ja_JP";
	    }
	    if ( $language == "el" ) {
	      $language = "el_GR";
	    }
	    if ( $language == "fi" ) {
	      $language = "fi_FI";
	    }
	    if ( $language == "th" ) {
	      $language = "th_TH";
	    }
	    if ( $language == "vi" ) {
	      $language = "vi_VN";
	    }

	    if ( "automatic" == $language ) {
	    	if ( function_exists( 'icl_object_id' ) && has_filter( 'wpml_current_language' ) ) {
	        	$language = apply_filters( 'wpml_current_language', NULL );

	        	if ( !empty( $language ) ) {
	        		$language = sfsi_wordpress_locale_from_locale_code( $language );
	        	}
	        } else {
	      		$language = get_locale();
			}
	    }
    	$fb_share_html = "<a " . sfsi_checkNewWindow() . " href='" . $shareurl . "' style='display:inline-block;'  > <img class='sfsi_wicon'  data-pin-nopin='true' alt='fb-share-icon' title='Facebook Share' src='" . SFSI_PLUGURL . "images/share_icons/fb_icons/" . $language . ".svg' /></a>";
    	return $fb_share_html;
	}

	/* create on page twitter follow option */
	public function sfsi_twitterFollow( $tw_username, $icon ) {
		$twitter_html = '<a target="_blank" href="https://twitter.com/intent/user?screen_name='.trim($tw_username).'">
			<img data-pin-nopin= true src="'. $icon .'" class="sfsi_wicon" alt="Follow Me" title="Follow Me" style="opacity: 1;" />
			</a>';

		// $twitter_html = '<a href="https://twitter.com/'.trim($tw_username).'" class="twitter-follow-button"  data-show-count="false" data-show-screen-name="false">Follow </a>';
		return $twitter_html;
	}

	/* create on page twitter share icon */
	public function sfsi_twitterShare( $permalink, $tweettext, $icon ) {
		$permalink = rawurlencode(esc_url(rawurldecode($permalink))); /*Vulnerability*/
 
		$twitter_html = "<div class='sf_twiter' style='display: inline-block;vertical-align: middle;width: auto;'>
						<a " . sfsi_checkNewWindow() . " href='https://twitter.com/intent/tweet?text=" . urlencode($tweettext).'+'.$permalink. "' style='display:inline-block' >
							<img data-pin-nopin= true class='sfsi_wicon' src='" . $icon . "' alt='Post on X' title='Post on X' >
						</a>
					</div>";
		return $twitter_html;
	}

	/* create on page twitter share icon with count */
	public function sfsi_twitterSharewithcount( $permalink, $tweettext, $show_count, $rectangular_icon=false ) {
		$permalink = rawurlencode(esc_url(rawurldecode($permalink))); /*Vulnerability*/

		$sfsi_section4	= maybe_unserialize(get_option('sfsi_section4_options', false));
		$socialObj = new sfsi_SocialHelper();
		$count_html ="";
		if ($show_count ) {
			/* get twitter counts */
			if ($sfsi_section4['sfsi_twitter_countsFrom'] == "source") {
				$option2	= maybe_unserialize(get_option('sfsi_section2_options', false));

				$twitter_user = $option2['sfsi_twitter_followUserName'];
				$tw_settings = array(
					'tw_consumer_key' => $sfsi_section4['tw_consumer_key'],
					'tw_consumer_secret' => $sfsi_section4['tw_consumer_secret'],
					'tw_oauth_access_token' => $sfsi_section4['tw_oauth_access_token'],
					'tw_oauth_access_token_secret' => $sfsi_section4['tw_oauth_access_token_secret']
				);

				$followers = $socialObj->sfsi_get_tweets($twitter_user, $tw_settings);
				$counts = $socialObj->format_num($followers);
			} else {
				$counts = $socialObj->format_num($sfsi_section4['sfsi_twitter_manualCounts']);

			}

			if( $counts > 0 ) {
				$count_html = '<span class="bot_no">'.$counts.'</span>';
			}
		}

		$option5 = maybe_unserialize( get_option( 'sfsi_section5_options', false ) );

    	$icons_language = isset( $option5["sfsi_icons_language"] ) ? $option5["sfsi_icons_language"] : 'en_US';

    	if( $icons_language == "ar" ) {
			$icons_language = "ar_Ar";
		}
		if( $icons_language == "ja" ) {
			$icons_language = "ja_JP";
		}
		if( $icons_language == "el" ) {
			$icons_language = "el_GR";
		}
		if( $icons_language == "fi" ) {
			$icons_language = "fi_FI";
		}
		if( $icons_language == "th" ) {
			$icons_language = "th_TH";
		}
		if( $icons_language == "vi" ) {
			$icons_language = "vi_VN";
		}

		if( "automatic" == $icons_language ) {
	    	if ( function_exists( 'icl_object_id' ) && has_filter( 'wpml_current_language' ) ) {
	        	$icons_language = apply_filters( 'wpml_current_language', NULL );

	        	if ( !empty( $icons_language ) ) {
	        		$language = sfsi_wordpress_locale_from_locale_code( $language );
	        	}
	        } else {
	      		$icons_language = get_locale();
			}
	    }

		$tweet_icon = SFSI_PLUGURL . 'images/share_icons/Twitter_Tweet/'.$icons_language.'_Tweet.svg';

		$twitter_html = "<div class='sf_twiter ".($rectangular_icon?'sf_icon':'')."' style='display: inline-block;vertical-align: middle;width: auto;margin-left: 7px;'>
						<a " . sfsi_checkNewWindow() . " href='https://twitter.com/intent/tweet?text=" . urlencode($tweettext) . '+' . $permalink . "'style='display:inline-block' >
							<img data-pin-nopin= true class='sfsi_wicon' src='" . $tweet_icon . "' alt='Tweet' title='Tweet' >
						</a>".$count_html."
					</div>";
		// $twitter_html = '<a href="http://twitter.com/share" data-count="none" class="sr-twitter-button twitter-share-button" lang="en" data-url="'.$permalink.'" data-text="'.$tweettext.'" ></a>';
		return $twitter_html;
	}

	/* create on page youtube subscribe icon */
	public function sfsi_YouTubeSub( $yuser ) {
		$option2 = maybe_unserialize(get_option( 'sfsi_section2_options', false ));
		$sfsi_ytube_chnlid = empty($option2['sfsi_ytube_chnlid']) ? '' : $option2['sfsi_ytube_chnlid'];
		$sfsi_ytube_user = empty($option2['sfsi_plus_ytube_user']) ? '' : $option2['sfsi_plus_ytube_user'];
	
		if(empty($sfsi_ytube_user) && empty($sfsi_ytube_chnlid)){
			return '<div>Set Youtube Channel ID</div>';
		}
	
		if(!empty($sfsi_ytube_chnlid)){
			return '<div class="g-ytsubscribe" data-channelid="' . $sfsi_ytube_chnlid . '" data-layout="default" data-count="hidden"></div>';
		}
	
		return '<div class="g-ytsubscribe" data-channel="' . $sfsi_ytube_user . '" data-layout="default" data-count="hidden"></div>';
	}

	/* create on page pinit button icon */
	public function sfsi_PinIt( $url='', $icon = 0 ) {
		if( "" == $url ) {
			$url = trailingslashit( get_permalink() );
		}

		$description = get_the_title();

		// $pinit_url = 'https://www.pinterest.com/pin/create/button/?url='.$url.'&media='.$media.'&description='.$description;
		// $pinit_url = 'https://www.pinterest.com/pin/create/button/?url='.$url.'&media='..'&description='.;

		$pinit_html = "<a href='#' onclick='sfsi_pinterest_modal_images(event)' class='sfsi_pinterest_sm_click' style='display:inline-block;'><img class='sfsi_wicon' data-pin-nopin='true' alt='fb-share-icon' title='Pin Share' src='" . $icon . "' /></a>";
		return $pinit_html;
		// $pin_it_html = '<a data-pin-do="buttonPin" data-pin-save="true" href="https://www.pinterest.com/pin/create/button/?url=&media=&description="></a>';
		// return $pin_it_html;
	}

	/* get instragram followers */
	public function sfsi_get_instagramFollowers( $user_name ) {

		$sfsi_instagram_sf_count = maybe_unserialize( get_option( 'sfsi_instagram_sf_count', false ) );
		$sfsi_current_date = date( "Y-m-d" );

		/*if( is_array( $sfsi_instagram_sf_count_option ) ) {
			$sfsi_instagram_sf_count = $sfsi_instagram_sf_count_option;
		} else {
			$sfsi_instagram_sf_count = unserialize( $sfsi_instagram_sf_count_option );
		}

		if( !is_array( $sfsi_instagram_sf_count ) ) {
			$sfsi_instagram_sf_count = strstr( $sfsi_instagram_sf_count, "{" );
			$sfsi_instagram_sf_count = str_replace( $sfsi_instagram_sf_count, "{", '' );
		    $sfsi_instagram_sf_count = strstr( $sfsi_instagram_sf_count,'}', true );
		}

		if( !isset( $sfsi_instagram_sf_count["date_instagram"] )|| empty( $sfsi_instagram_sf_count["date_instagram"] ) ) {*/

			$sfsi_instagram_sf_count["date_instagram"] = strtotime( $sfsi_current_date );
			$counts = $this->sfsi_get_instagramFollowersCount( $user_name );
			$sfsi_instagram_sf_count["sfsi_instagram_count"] = $counts;
			update_option( 'sfsi_instagram_sf_count', serialize( $sfsi_instagram_sf_count ) );

		/*} else {
			$phpVersion = phpVersion();
			if( $phpVersion >= '5.3' ) {
				$diff = date_diff(
				 	date_create(
						date("Y-m-d", $sfsi_instagram_sf_count["date_instagram"])
					),
					date_create(
						$sfsi_current_date
					)
				);
			}

			if( isset( $diff ) && $diff->format("%a") > 1 )	{
				$sfsi_instagram_sf_count["date_instagram"] = strtotime( $sfsi_current_date );
				$counts = $this->sfsi_get_instagramFollowersCount( $user_name );
				$sfsi_instagram_sf_count["sfsi_instagram_count"] = $counts;
				update_option( 'sfsi_instagram_sf_count', serialize( $sfsi_instagram_sf_count ) );
			} else {
				$counts = $sfsi_instagram_sf_count["sfsi_instagram_count"];
			}
		}*/
		return $counts;
	}

	/* get instragram followers Count*/
	public function sfsi_get_instagramFollowersCount( $user_name ) {

		$count = 0;
		if ( $user_name ) {
			$return_data = $this->get_content_curl( 'https://www.instagram.com/' . $user_name . '/channel/?__a=1' );

			$objData = json_decode( $return_data, true );
			if ( isset( $objData ) && isset( $objData['graphql'] ) && isset( $objData['graphql']['user'] ) && isset( $objData['graphql']['user']['edge_followed_by'] ) && isset( $objData['graphql']['user']['edge_followed_by']['count'] ) ) {
				$count = $objData['graphql']['user']['edge_followed_by']['count'];
				$count = $this->format_num_back( $count );
			}
		}

		/* get instagram user id */
		/*$option4 	= maybe_unserialize(get_option('sfsi_section4_options',false));
		$token 		= $option4['sfsi_instagram_token'];

		if(isset($token) && !empty($token)){
			$return_data = $this->get_content_curl('https://api.instagram.com/v1/users/self/?access_token='.$token);
			$objData 	 = json_decode($return_data);

			if(isset($objData) && $objData->data && $objData->data->counts && $objData->data->counts->followed_by){
				$count 	 = $objData->data->counts->followed_by;
			}
		}*/

		return $this->format_num( $count, 0 );
	}

	/* create linkedIn  follow button */
	public function sfsi_LinkedInFollow( $company_id ) {
		return $ifollow='<script type="IN/FollowCompany" data-id="'.$company_id.'" ></script>';
	}

	/* create linkedIn  recommend button */
	public function sfsi_LinkedInRecommend( $company_name, $product_id ) {
		return $ifollow = '<script type="IN/RecommendProduct" data-company="'.$company_name.'" data-product="'.$product_id.'"></script>';
	}

	/* create linkedIn  share button */
	public function sfsi_LinkedInShare( $url='', $icon = 0 ) {
		$url = ( isset( $url ) && '' !== $url ) ? $url : home_url();
		return '<a '.sfsi_checkNewWindow().' href="https://www.linkedin.com/sharing/share-offsite/?url='.urlencode( $url ).'"><img class="sfsi_wicon" data-pin-nopin= true alt="Share" title="Share" src="'.$icon.'" /></a>';
	  // return  $ifollow='<script type="IN/Share" data-url="'.$url.'"></script>';
	}

	/* get no of subscribers from follow.it for current blog */
	public function SFSI_getFeedSubscriber( $feedid ) {
		$sfsi_instagram_sf_count_option = get_option( 'sfsi_instagram_sf_count', false );
		if( is_array( $sfsi_instagram_sf_count_option ) ) {
			$sfsi_instagram_sf_count = $sfsi_instagram_sf_count_option;
		} else {
			$sfsi_instagram_sf_count = unserialize( $sfsi_instagram_sf_count_option );
		}

		/*if date is empty (for decrease request count)*/
		if( isset( $sfsi_instagram_sf_count["date_sf"] ) && empty( $sfsi_instagram_sf_count["date_sf"] ) ) {
			$sfsi_instagram_sf_count["date_sf"] = strtotime( date( "Y-m-d" ) );
			$counts = $this->SFSI_getFeedSubscriberCount( $feedid );
			$sfsi_instagram_sf_count["sfsi_sf_count"] = $counts;
			update_option( 'sfsi_instagram_sf_count', serialize( $sfsi_instagram_sf_count ) );
		} else {
			$phpVersion = phpVersion();
			if($phpVersion >= '5.3') {
				$diff = date_diff(
				 	date_create(
						date( "Y-m-d", $sfsi_instagram_sf_count["date_sf"] )
					),
					date_create(
						date( "Y-m-d" )
					)
				);
			}
			if((isset($diff) && $diff->format("%a") >= 1)||$sfsi_instagram_sf_count["sfsi_sf_count"]=="")
			{
				$sfsi_instagram_sf_count["date_sf"] = strtotime( date( "Y-m-d" ) );
				$counts = $this->SFSI_getFeedSubscriberCount( $feedid );
				$sfsi_instagram_sf_count["sfsi_sf_count"] = $counts;
				update_option('sfsi_instagram_sf_count',  serialize( $sfsi_instagram_sf_count ) );
			} else {
				$counts = $sfsi_instagram_sf_count["sfsi_sf_count"];
			}
		}

		if( empty( $counts ) || $counts == "O" ) {
			$counts = 0;
		}

		return $counts;
	}

	/* get no of subscribers from follow.it for current blog count */
	public function SFSI_getFeedSubscriberCount( $feedid ) {

		/* Return if feed_id not set */
		if ( empty( $feedid ) ) {
			return;
		}

		$postto_array = array(
			'feed_id' => $feedid,
			'v' => 'newplugincount'
		);

		$args = array(
		    'body' => $postto_array,
		    'blocking' => true,
		    'timeout'     => 30,
		    'user-agent' => 'sf rss request',
		    'header'	=> array( "Content-Type"=>"application/x-www-form-urlencoded" ),
		    'sslverify' => false
		);

		try{
			$resp = wp_remote_post( 'https://api.follow.it/wordpress/wpCountSubscriber', $args );
		}catch(\Exception $e){
			// var_dump($e);
		}
		$httpcode = wp_remote_retrieve_response_code( $resp );

		if( $httpcode == 200 ) {

			if( !empty( $resp["body"] ) ) {
				$resp     = json_decode( $resp["body"] );
				$feeddata = stripslashes_deep( $resp->subscriber_count );
			} else {
				$sfsi_premium_instagram_sf_count = maybe_unserialize( get_option( 'sfsi_instagram_sf_count', false ) );
				$feeddata = $sfsi_premium_instagram_sf_count["sfsi_sf_count"];
			}
		} else {
			$sfsi_premium_instagram_sf_count = maybe_unserialize( get_option( 'sfsi_instagram_sf_count', false ) );
			$feeddata = $sfsi_premium_instagram_sf_count["sfsi_sf_count"];
		}
		return $this->format_num( $feeddata );
		exit;
	}

	/* check response from a url */
	private function sfsi_get_http_response_code( $url ) {
		$headers = get_headers( $url );
		return substr( $headers[0], 9, 3 );
	}

	public function SFSI_getFeedSubscriberFetch( $feedid ) {

		$sfsi_instagram_sf_count = maybe_unserialize( get_option( 'sfsi_instagram_sf_count', false ) );

		/*if date is empty (for decrease request count)*/


		// if(empty($sfsi_instagram_sf_count["date_sf"]))
		// {
			$sfsi_instagram_sf_count["date_instagram"] = strtotime( date( "Y-m-d" ) );
			$counts = $this->sfsi_getFeedSubscriberCount( $feedid );
			$sfsi_instagram_sf_count["sfsi_instagram_count"] = $counts;

			update_option( 'sfsi_instagram_sf_count', serialize( $sfsi_instagram_sf_count ) );
		// }
		// else
		// {
			// $phpVersion = phpVersion();
			// if($phpVersion >= '5.3')
			// {
				// $diff = date_diff(
				 	// date_create(
						// date("Y-m-d", $sfsi_instagram_sf_count["date_sf"])
					// ),
					// date_create(
						// date("Y-m-d")
				// ));
			// }
			// var_dump($sfsi_instagram_sf_count,isset($diff),$sfsi_instagram_sf_count["date_sf"],date("Y-m-d", $sfsi_instagram_sf_count["date_sf"]),date('Y-m-d'),$diff , $diff->format("%a"));die();
			// if((isset($diff) && $diff->format("%a") >= 1)||$sfsi_instagram_sf_count["sfsi_plus_sf_count"]=="")
			// {
			// 	$sfsi_instagram_sf_count["date_sf"] = strtotime(date("Y-m-d"));
			// 	$counts = $this->sfsi_plus_getFeedSubscriberCount($feedid);
			// 	$sfsi_instagram_sf_count["sfsi_plus_sf_count"] = $counts;
			// 	update_option('sfsi_instagram_sf_count',  serialize($sfsi_instagram_sf_count));
			// }
			// else
			// {
				// $counts = $sfsi_instagram_sf_count["sfsi_plus_sf_count"];
			// }

		// }

		if( empty( $counts ) || $counts == "O" ) {
			$counts = 0;
		}

		return $counts;
	}


	/*
      This function returns 0 if post id not found
    */
	public function sfsi_get_the_ID()
	{

	  $post_id = false;

	  try {
		if (in_the_loop()) {
		  $post_id = (get_the_ID()) ? get_the_ID() : sfsi_premium_url_to_postid(urldecode(sfsi_plus_current_url()));
		} else {
		  /** @var $wp_query wp_query */
		  global $wp_query;

		  if (isset($wp_query) && !empty($wp_query) && is_object($wp_query)) {

			$post_id = $wp_query->get_queried_object_id();
		  }
		}
	  }

	  //catch exception
	  catch (Exception $e) {
		return false;
	  }
	  return $post_id;
	}

	public function sfsi_get_the_title()
	{

	  $title    = get_bloginfo('name');
	  $title    = (isset($title) && strlen($title) > 0) ? $title : get_bloginfo('url');
	  $post_id  = $this->sfsi_get_the_ID();

	  if ($post_id) {
		$post_title = (is_archive()) ? get_queried_object()->name : get_the_title($post_id);
		$title      = (isset($post_title) && strlen(trim($post_title)) > 0) ? $post_title : $title;
	  }

	  return wp_kses_post($title);
	}

}
/* end of class */

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists