function processShortcodeTwitterUserTimeline($attribute, $content, $tag)
 {
     $attribute = $this->processAttribute($tag, $attribute);
     $Easing = new PBEasing();
     $Validation = new PBValidation();
     $CarouFredSel = new PBCarouFredSel();
     if ($Validation->isEmpty($attribute['twitter_username'])) {
         return null;
     }
     if ($Validation->isEmpty($attribute['twitter_consumer_key'])) {
         return null;
     }
     if ($Validation->isEmpty($attribute['twitter_consumer_key_secret'])) {
         return null;
     }
     if ($Validation->isEmpty($attribute['twitter_access_token'])) {
         return null;
     }
     if ($Validation->isEmpty($attribute['twitter_access_token_secret'])) {
         return null;
     }
     if (!$Validation->isNumber($attribute['twitter_tweet_number'], 1, 200)) {
         return null;
     }
     if (!$Validation->isBool($attribute['carousel_enable'])) {
         return null;
     }
     if (!$Validation->isBool($attribute['carousel_autoplay_enable'])) {
         return null;
     }
     if (!$Validation->isBool($attribute['carousel_circular_enable'])) {
         return null;
     }
     if (!$Validation->isBool($attribute['carousel_infinite_enable'])) {
         return null;
     }
     if (!$Validation->isBool($attribute['carousel_scroll_pause_hover'])) {
         return null;
     }
     if (!array_key_exists($attribute['carousel_scroll_fx'], $CarouFredSel->scrollFX)) {
         return null;
     }
     if (!array_key_exists($attribute['carousel_scroll_easing'], $Easing->easingType)) {
         return null;
     }
     if (!$Validation->isNumber($attribute['carousel_scroll_duration'], 1, 99999)) {
         return null;
     }
     $this->includeLibrary('twitteroauth/twitteroauth.php');
     $connection = new TwitterOAuth($attribute['twitter_consumer_key'], $attribute['twitter_consumer_key_secret'], $attribute['twitter_access_token'], $attribute['twitter_access_token_secret']);
     $tweet = $connection->get('https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=' . $attribute['twitter_username'] . '&count=' . $attribute['twitter_tweet_number']);
     if (is_null($tweet)) {
         return null;
     }
     if (is_wp_error($tweet)) {
         return null;
     }
     if (array_key_exists('errors', $tweet)) {
         if (count($tweet['errors'])) {
             return;
         }
     }
     $data = array();
     $data['tweet'] = $tweet;
     $data['attribute'] = $attribute;
     $data['id'] = PBHelper::createId('pb_twitter_user_timeline');
     $data['option'] = PBHelper::getValueFromArray($attribute, array('carousel_enable', 'carousel_autoplay_enable', 'carousel_circular_enable', 'carousel_infinite_enable', 'carousel_scroll_pause_hover', 'carousel_scroll_fx', 'carousel_scroll_easing', 'carousel_scroll_duration'));
     $Template = new PBTemplate($data, $this->getTemplateFullPath('template'));
     return $Template->output(true);
 }