setId() публичный Метод

public setId ( $id )
Пример #1
0
 public function parseTimeline($timeline)
 {
     foreach ($timeline as $tweet) {
         $item = new Tweet();
         $item->setId($tweet->id)->setTitle($tweet->text)->setDescription($tweet->text)->setPubDate($tweet->created_at)->setPlace($tweet->place)->setUsername($tweet->user->screen_name)->setUserId($tweet->user->id);
         $this->addTweet($item);
     }
 }
Пример #2
0
  public function load($id) {
    $result=HypertableConnection::query("SELECT * FROM tweet ".
                "WHERE ROW='$id'");
    if (!$result or !count($result->cells))
      return null;

    $tweet=new Tweet();
    $tweet->setId($id);
    $tweet->setTimestamp($result->cells[0]->key->timestamp);
    $tweet->setMessage($result->cells[0]->value);
    return $tweet;
  }
Пример #3
0
 public function loadTweets()
 {
     $conn = $this->connection;
     $sqlQuery = "SELECT user_id, tweets.id, text FROM tweets INNER JOIN users ON tweets.user_id = users.id ORDER BY tweets.created_at DESC";
     $result = $conn->query($sqlQuery);
     if ($result->num_rows > 0) {
         while (list($userId, $tweetId, $text) = $result->fetch_array(MYSQLI_NUM)) {
             $tweet = new Tweet($conn);
             $tweet->setUserId($userId);
             $tweet->setText($text);
             $tweet->setId($tweetId);
             $this->arrayWithTweets[] = $tweet;
         }
         return true;
     } else {
         return false;
     }
 }
Пример #4
0
 protected function execute($arguments = array(), $options = array())
 {
     $databaseManager = new sfDatabaseManager($this->configuration);
     $connection = $databaseManager->getDatabase($options['connection'])->getConnection();
     $web = new sfWebBrowser();
     $this->logSection($this->namespace, 'Getting latest tweets for @' . sfConfig::get('app_twitter_username'));
     $atom = $web->get('http://search.twitter.com/search.atom?q=from:' . sfConfig::get('app_twitter_username') . '&rpp=5');
     try {
         if (!$atom->responseIsError()) {
             $feed = new SimpleXMLElement($atom->getResponseText());
             foreach ($feed->entry as $rss) {
                 $id = preg_replace('/[^0-9]+/', '', $rss->link[0]['href']);
                 $tweet = Doctrine::getTable('Tweet')->find($id);
                 $namespaces = $rss->getNameSpaces(true);
                 if ($tweet instanceof Tweet) {
                     if (strtotime($rss->updated) <= strtotime($tweet->getUpdatedAt())) {
                         continue;
                     } else {
                         $this->updated++;
                     }
                 } else {
                     $tweet = new Tweet();
                     $this->new++;
                 }
                 $file = $web->get('http://api.twitter.com/1/statuses/show/' . $id . '.json');
                 try {
                     if (!$file->responseIsError()) {
                         $json = json_decode($file->getResponseText());
                         $tweet->setId($id);
                         $tweet->setText($rss->title);
                         $tweet->setHTML(html_entity_decode($rss->content));
                         $tweet->setUri($rss->link[0]['href']);
                         if (isset($json->in_reply_to_status_id)) {
                             $tweet->setReplyId($json->in_reply_to_status_id);
                         }
                         if (isset($json->in_reply_to_user_id)) {
                             $tweet->setReplyUserId($json->in_reply_to_user_id);
                             $tweet->setReplyUsername($json->in_reply_to_screen_name);
                         }
                         if (isset($json->geo, $json->geo->coordinates)) {
                             $tweet->setLatitude($json->geo->coordinates[0]);
                             $tweet->setLongitude($json->geo->coordinates[1]);
                         }
                         $tweet->setLanguage($rss->children($namespaces['twitter'])->lang);
                         $tweet->setSource(html_entity_decode($rss->children($namespaces['twitter'])->source));
                         $tweet->setCreatedAt($rss->published);
                         $tweet->setUpdatedAt($rss->updated);
                         $tweet->save();
                         echo '.';
                     } else {
                         // Error response (eg. 404, 500, etc)
                     }
                 } catch (Exception $e) {
                     // Adapter error (eg. Host not found)
                 }
             }
         } else {
             // Error response (eg. 404, 500, etc)
         }
     } catch (Exception $e) {
         // Adapter error (eg. Host not found)
     }
     echo "\n";
     $this->logSection($this->namespace, 'Done: ' . $this->new . ' new, ' . $this->updated . ' updated.');
 }
Пример #5
0
 public function loadAllTweets()
 {
     $conn = $this->connection;
     $arrayWithTweets = [];
     $sqlQuery = "SELECT id, text FROM tweets WHERE user_id = {$this->id} ORDER BY tweets.created_at DESC";
     $result = $conn->query($sqlQuery);
     if ($result->num_rows > 0) {
         while (list($id, $text) = $result->fetch_array(MYSQLI_NUM)) {
             $tweet = new Tweet($conn);
             $tweet->setId($id);
             $tweet->setText($text);
             $arrayWithTweets[] = $tweet;
         }
         return $arrayWithTweets;
     }
 }