Exemplo n.º 1
0
 function et_twitter_slider($atts)
 {
     extract(shortcode_atts(array('title' => '', 'user' => '8theme', 'consumer_key' => '', 'consumer_secret' => '', 'user_token' => '', 'user_secret' => '', 'limit' => 10, 'class' => 10), $atts));
     if (empty($consumer_key) || empty($consumer_secret) || empty($user_token) || empty($user_secret)) {
         return __('Not enough information', ETHEME_DOMAIN);
     }
     $tweets_array = et_get_tweets($consumer_key, $consumer_secret, $user_token, $user_secret, $user, $limit);
     $output = '';
     $box_id = rand(1000, 9999);
     $output .= '<div class="et-twitter-slider ' . $class . '">';
     if ($title != '') {
         $output .= '<h2 class="twitter-slider-title"><span>' . $title . '</span></h2>';
     }
     $output .= '<ul class="et-tweets slider-' . $box_id . '">';
     if (!empty($tweets_array['errors']) && count($tweets_array['errors']) > 0) {
         foreach ($tweets_array['errors'] as $error) {
             $output .= '<li class="et-tweet error">';
             $output .= $error['message'];
             $output .= '</li>';
         }
     } else {
         foreach ($tweets_array as $tweet) {
             $output .= '<li class="et-tweet">';
             $output .= $tweet['text'];
             $output .= '</li>';
         }
     }
     $output .= '</ul>';
     $output .= '</div>';
     $items = '[[0, 1], [479,1], [619,1], [768,1],  [1200, 1], [1600, 1]]';
     $output .= '<script type="text/javascript">';
     $output .= '     jQuery(".slider-' . $box_id . '").owlCarousel({';
     $output .= '         items:1, ';
     $output .= '         navigation: true,';
     $output .= '         navigationText:false,';
     $output .= '         rewindNav: false,';
     $output .= '         itemsCustom: ' . $items . '';
     $output .= '    });';
     $output .= ' </script>';
     $output = etheme_tweet_linkify($output);
     return $output;
 }
Exemplo n.º 2
0
 function et_twitter_slider($atts)
 {
     extract(shortcode_atts(array('title' => '', 'user' => '', 'consumer_key' => '', 'consumer_secret' => '', 'user_token' => '', 'user_secret' => '', 'limit' => 10, 'class' => 10), $atts));
     if (empty($consumer_key) || empty($consumer_secret) || empty($user_token) || empty($user_secret) || empty($user)) {
         return __('Not enough information', ETHEME_DOMAIN);
     }
     $tweets_array = et_get_tweets($consumer_key, $consumer_secret, $user_token, $user_secret, $user, $limit);
     $output = '';
     $output .= '<div class="et-twitter-slider ' . $class . '">';
     if ($title != '') {
         $output .= '<h2 class="twitter-slider-title"><span>' . $title . '</span></h2>';
     }
     $output .= '<ul class="et-tweets">';
     foreach ($tweets_array as $tweet) {
         $output .= '<li class="et-tweet">';
         $output .= etheme_tweet_linkify($tweet['text']);
         $output .= '<div class="twitter-info">';
         $output .= '<a href="' . $tweet['user']['url'] . '" class="active" target="_blank">@' . $tweet['user']['screen_name'] . '</a> ' . date("l M j \\- g:ia", strtotime($tweet['created_at']));
         $output .= '</div>';
         $output .= '</li>';
     }
     $output .= '</ul>';
     $output .= '</div>';
     $items = '[[0, 1], [479,1], [619,1], [768,1],  [1200, 1], [1600, 1]]';
     $output .= '<script type="text/javascript">';
     $output .= '     jQuery(".et-tweets").owlCarousel({';
     $output .= '         items:1, ';
     $output .= '         navigation: true,';
     $output .= '         navigationText:false,';
     $output .= '         rewindNav: false,';
     $output .= '         itemsCustom: ' . $items . '';
     $output .= '    });';
     $output .= ' </script>';
     return $output;
 }
Exemplo n.º 3
0
function etheme_print_tweets($consumer_key, $consumer_secret, $user_token, $user_secret, $user, $count, $cachetime = 50)
{
    if (etheme_twitter_cache_enabled()) {
        //setting the location to cache file
        $cachefile = ETHEME_CODE_DIR . '/cache/twitterCache.json';
        // the file exitsts but is outdated, update the cache file
        if (file_exists($cachefile) && time() - $cachetime > filemtime($cachefile) && filesize($cachefile) > 0) {
            //capturing fresh tweets
            $tweets = etheme_capture_tweets($consumer_key, $consumer_secret, $user_token, $user_secret, $user, $count);
            $tweets_decoded = json_decode($tweets, true);
            //if get error while loading fresh tweets - load outdated file
            if (isset($tweets_decoded['error'])) {
                $tweets = etheme_pick_tweets($cachefile);
            } else {
                etheme_store_tweets($cachefile, $tweets);
            }
        } elseif (!file_exists($cachefile) || filesize($cachefile) == 0) {
            $tweets = etheme_capture_tweets($consumer_key, $consumer_secret, $user_token, $user_secret, $user, $count);
            $tweets_decoded = json_decode($tweets, true);
            //if request fails, and there is no old cache file - print error
            if (isset($tweets_decoded['error'])) {
                return 'Error: ' . $tweets_decoded['error'];
            } else {
                etheme_store_tweets($cachefile, $tweets);
            }
        } else {
            $tweets = etheme_pick_tweets($cachefile);
        }
    } else {
        $tweets = etheme_capture_tweets($consumer_key, $consumer_secret, $user_token, $user_secret, $user, $count);
    }
    $tweets = json_decode($tweets, true);
    $html = '<ul class="twitter-list">';
    foreach ($tweets as $tweet) {
        $html .= '<li class="lastItem firstItem"><div class="media"><i class="pull-left fa fa-twitter"></i><div class="media-body">' . $tweet['text'] . '</div></div></li>';
    }
    $html .= '</ul>';
    $html = etheme_tweet_linkify($html);
    return $html;
}