[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: tweets-widget.php
<?php add_action('widgets_init', 'tweets_load_widgets'); function tweets_load_widgets() { register_widget('Tweets_Widget'); } class Tweets_Widget extends WP_Widget { function Tweets_Widget() { $widget_ops = array('classname' => 'tweets', 'description' => 'Tweets widget let you display Twitter updates.'); $control_ops = array('id_base' => 'tweets-widget'); $this->WP_Widget('tweets-widget', 'Avenue: Twitter', $widget_ops, $control_ops); } function widget($args, $instance) { extract($args); $title = apply_filters('widget_title', $instance['title']); $consumer_key = $instance['consumer_key']; $consumer_secret = $instance['consumer_secret']; $access_token = $instance['access_token']; $access_token_secret = $instance['access_token_secret']; $twitter_id = $instance['twitter_id']; $count = $instance['count']; $follow = $instance['follow']; echo $before_widget; if($title) { echo $before_title.$title.$after_title; } if($twitter_id && $consumer_key && $consumer_secret && $access_token && $access_token_secret && $count) { $transName = 'list_tweets_'.$args['widget_id']; $cacheTime = 10; if(false === ($twitterData = get_transient($transName))) { // require the twitter auth class @require_once 'twitteroauth/twitteroauth.php'; $twitterConnection = new TwitterOAuth( $consumer_key, // Consumer Key $consumer_secret, // Consumer secret $access_token, // Access token $access_token_secret // Access token secret ); $twitterData = $twitterConnection->get( 'statuses/user_timeline', array( 'screen_name' => $twitter_id, 'count' => $count, 'exclude_replies' => false ) ); if($twitterConnection->http_code != 200) { $twitterData = get_transient($transName); } // Save our new transient. set_transient($transName, $twitterData, 60 * $cacheTime); }; $twitter = get_transient($transName); if($twitter && is_array($twitter)) { //var_dump($twitter); ?> <ul id="tweets" class="tweets"> <?php foreach($twitter as $tweet): ?> <li class="tweet"> <span class="tweet-text"> <?php $latestTweet = $tweet->text; $latestTweet = preg_replace('/http:\/\/([a-z0-9_\.\-\+\&\!\#\~\/\,]+)/i', ' <a href="http://$1" target="_blank">http://$1</a> ', $latestTweet); $latestTweet = preg_replace('/@([a-z0-9_]+)/i', ' <a href="http://twitter.com/$1" target="_blank">@$1</a> ', $latestTweet); echo $latestTweet; //echo $this->make_clickable($latestTweet); ?> </span> <?php $twitterTime = strtotime($tweet->created_at); $timeAgo = $this->ago($twitterTime); ?> <a href="http://twitter.com/<?php echo $tweet->user->screen_name; ?>/statuses/<?php echo $tweet->id_str; ?>" class="jtwt_date"><?php echo $timeAgo; ?></a> </li> <?php endforeach; ?> </ul> <p class='follow-message'><a href='http://twitter.com/<?php echo $twitter_id; ?>'><?php echo $follow; ?></a></p> <!--div class="twitter-box"> <div class="twitter-holder"> <div class="b"> <div class="tweets-container" id="tweets_<?php echo $args['widget_id']; ?>"> <ul id="jtwt"> <?php foreach($twitter as $tweet): ?> <li class="jtwt_tweet"> <p class="jtwt_tweet_text"> <?php $latestTweet = $tweet->text; $latestTweet = preg_replace('/http:\/\/([a-z0-9_\.\-\+\&\!\#\~\/\,]+)/i', ' <a href="http://$1" target="_blank">http://$1</a> ', $latestTweet); $latestTweet = preg_replace('/@([a-z0-9_]+)/i', ' <a href="http://twitter.com/$1" target="_blank">@$1</a> ', $latestTweet); echo $latestTweet; ?> </p> <?php $twitterTime = strtotime($tweet->created_at); $timeAgo = $this->ago($twitterTime); ?> <a href="http://twitter.com/<?php echo $tweet->user->screen_name; ?>/statuses/<?php echo $tweet->id_str; ?>" class="jtwt_date"><?php echo $timeAgo; ?></a> </li> <?php endforeach; ?> </ul> </div> </div> </div> <span class="arrow"></span> </div><!-- end of twitter box --> <?php }} echo $after_widget; } function ago($time) { $periods = array("second", "minute", "hour", "day", "week", "month", "year", "decade"); $lengths = array("60","60","24","7","4.35","12","10"); $now = time(); $difference = $now - $time; $tense = "ago"; for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) { $difference /= $lengths[$j]; } $difference = round($difference); if($difference != 1) { $periods[$j].= "s"; } return "$difference $periods[$j] ago "; } function make_clickable($tweet) { // Convert URLs into links $tweet = make_clickable($tweet); // Convert usernames to links $tweet = preg_replace("/[@]+([A-Za-z0-9-_]+)/", "<a href=\"http://twitter.com/\\1\" target=\"_blank\">\\0</a>", $tweet); // Convert hashtags to links $tweet = preg_replace("/[#]+([A-Za-z0-9-_]+)/", "<a href=\"http://twitter.com/search?q=%23\\1\" target=\"_blank\">\\0</a>", $tweet); return $tweet; } function update($new_instance, $old_instance) { $instance = $old_instance; $instance['title'] = strip_tags($new_instance['title']); $instance['consumer_key'] = $new_instance['consumer_key']; $instance['consumer_secret'] = $new_instance['consumer_secret']; $instance['access_token'] = $new_instance['access_token']; $instance['access_token_secret'] = $new_instance['access_token_secret']; $instance['twitter_id'] = $new_instance['twitter_id']; $instance['count'] = $new_instance['count']; $instance['follow'] = $new_instance['follow']; return $instance; } function form($instance) { $defaults = array('title' => 'Recent Tweets', 'twitter_id' => '', 'count' => 3, 'follow' => 'Follow me on Twitter'); $instance = wp_parse_args((array) $instance, $defaults); ?> <p><a href="http://dev.twitter.com/apps">Find or Create your Twitter App</a></p> <p> <label for="<?php echo $this->get_field_id('title'); ?>">Title:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php echo $instance['title']; ?>" /> </p> <p> <label for="<?php echo $this->get_field_id('consumer_key'); ?>">Consumer Key:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('consumer_key'); ?>" name="<?php echo $this->get_field_name('consumer_key'); ?>" value="<?php echo $instance['consumer_key']; ?>" /> </p> <p> <label for="<?php echo $this->get_field_id('consumer_secret'); ?>">Consumer Secret:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('consumer_secret'); ?>" name="<?php echo $this->get_field_name('consumer_secret'); ?>" value="<?php echo $instance['consumer_secret']; ?>" /> </p> <p> <label for="<?php echo $this->get_field_id('access_token'); ?>">Access Token:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('access_token'); ?>" name="<?php echo $this->get_field_name('access_token'); ?>" value="<?php echo $instance['access_token']; ?>" /> </p> <p> <label for="<?php echo $this->get_field_id('access_token_secret'); ?>">Access Token Secret:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('access_token_secret'); ?>" name="<?php echo $this->get_field_name('access_token_secret'); ?>" value="<?php echo $instance['access_token_secret']; ?>" /> </p> <p> <label for="<?php echo $this->get_field_id('twitter_id'); ?>">Twitter ID:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('twitter_id'); ?>" name="<?php echo $this->get_field_name('twitter_id'); ?>" value="<?php echo $instance['twitter_id']; ?>" /> </p> <label for="<?php echo $this->get_field_id('count'); ?>">Number of Tweets:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('count'); ?>" name="<?php echo $this->get_field_name('count'); ?>" value="<?php echo $instance['count']; ?>" /> </p> <p> <label for="<?php echo $this->get_field_id('follow'); ?>">Follow message:</label> <input class="widefat" style="width: 216px;" id="<?php echo $this->get_field_id('follow'); ?>" name="<?php echo $this->get_field_name('follow'); ?>" value="<?php echo $instance['follow']; ?>" /> </p> <?php } } ?>
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: webm010.cluster103.gra.hosting.ovh.net
Server IP: 10.103.20.10
PHP Version: 7.4.33
Server Software: Apache
System: Linux webm010.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
HDD Total: 14.32 GB
HDD Free: 8.45 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
Exists
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes
gcc:
No
pkexec:
No
git:
Yes
User Info
Username: cuisinesj
User ID (UID): 17129
Group ID (GID): 100
Script Owner UID: 17129
Current Dir Owner: 17129