403Webshell
Server IP : 82.64.35.208  /  Your IP : 172.20.0.1
Web Server : Apache/2.4.67 (Debian)
System : Linux c1d185609d2c 6.12.76-linuxkit #1 SMP Thu May 28 18:54:18 UTC 2026 aarch64
User : root ( 0)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/html/wp-content/plugins/custom-twitter-feeds/inc/SmashTwitter/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/wp-content/plugins/custom-twitter-feeds/inc/SmashTwitter/TweetSetModifier.php
<?php
/**
 * Class TweetSetModifier
 *
 *
 *
 * @since 2.1
 */
namespace TwitterFeed\SmashTwitter;

use TwitterFeed\CTF_Parse;

class TweetSetModifier
{
	private $tweet_set;


	private $hydrated_tweet_set;

	public function set_tweet_set( $tweet_set ) {
		$this->tweet_set = $tweet_set;
	}

	public function get_hydrated_tweet_set() {
		return $this->hydrated_tweet_set;
	}

	public function hydrate_tweet_set() {
		if ( empty( $this->tweet_set ) ) {
			return;
		}

		$referenceable_tweet_set = array();
		foreach ( $this->tweet_set as $tweet ) {
			$referenceable_tweet_set[ CTF_Parse::get_post_id( $tweet ) ] = $tweet;
		}

		$flagged_quoted_tweets = array();
		$flagged_retweeted_quoted_tweets = array();
		$flagged_retweets = array();

		$this->hydrated_tweet_set = array();
		foreach ( $referenceable_tweet_set as $id => $tweet ) {
			// if this is a tweet that was quoted we want to remove it from the feed (unless quoted by the same author)
			// Quoted tweets are instead added to the tweet that is doing the quoting through this hydration process
			$does_not_belong = in_array( (string)$id, $flagged_quoted_tweets, true ) && CTF_Parse::get_author_screen_name( $tweet ) !== CTF_Parse::get_author_screen_name( $referenceable_tweet_set[ $id ] );
			if ( ! $does_not_belong ) {
				$does_not_belong = in_array( (string)$id, $flagged_retweets, true );
			}
			if ( ! $does_not_belong ) {
				$does_not_belong = in_array( (string)$id, $flagged_retweeted_quoted_tweets, true );
			}
			if ( ! $does_not_belong ) {
				$hydrated_tweet = $tweet;
				if ( ! empty( $tweet['is_quote_status'] )
				     && ! empty( $tweet['quoted_status_id_str'] )
				     && ! empty( $referenceable_tweet_set[ $tweet['quoted_status_id_str'] ] ) ) {
					$flagged_quoted_tweets[] = $tweet['quoted_status_id_str'];
					$hydrated_tweet['quoted_status'] = $referenceable_tweet_set[ $tweet['quoted_status_id_str'] ];
				}
				if ( ! empty( $tweet['retweeted_status_id_str'] )
				     && ! empty( $tweet['retweeted_status_id_str'] )
				     && ! empty( $referenceable_tweet_set[ $tweet['retweeted_status_id_str'] ] ) ) {
					$flagged_retweets[] = $tweet['retweeted_status_id_str'];
					$hydrated_tweet['retweeted_status'] = $referenceable_tweet_set[ $tweet['retweeted_status_id_str'] ];
					if ( strpos( $hydrated_tweet['text'], 'RT ' ) === 0 ) {
						$hydrated_tweet['text'] = str_replace( 'RT ', '', $hydrated_tweet['text'] );
						$hydrated_tweet['full_text'] = str_replace( 'RT ', '', $hydrated_tweet['full_text'] );
					}
					if ( ! empty( $hydrated_tweet['retweeted_status']['is_quote_status'] )
					     && ! empty( $hydrated_tweet['retweeted_status']['quoted_status_id_str'] )
					     && ! empty( $referenceable_tweet_set[ $hydrated_tweet['retweeted_status']['quoted_status_id_str'] ] ) ) {
						$flagged_retweeted_quoted_tweets[] = $hydrated_tweet['retweeted_status']['quoted_status_id_str'];

						$hydrated_tweet['retweeted_status']['quoted_status'] = $referenceable_tweet_set[ $tweet['quoted_status_id_str'] ];
					}
				}
				$this->hydrated_tweet_set[] = $hydrated_tweet;
			}
		}
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit