/**
  * Insert a new Tweet
  *
  * @param Tweet $tweet
  *
  * @return bool
  */
 public function addTweet(Tweet $tweet)
 {
     if (is_null($this->db)) {
         return false;
     }
     return $this->db->insertObj(self::ENTITY_NAME, $tweet);
 }
 /**
  * Add an event to the interest of the user
  *
  * @param mixed $userId user id
  * @param mixed $eventId event id
  * @param int $interested user interested
  * @param int $not_interested user not interested
  *
  * @return bool
  */
 public function addUserInterest($userId, $eventId, $interested = 0, $not_interested = 0)
 {
     if (is_null($this->db)) {
         return false;
     }
     $userInt = new UserInterest($userId, $eventId, $interested, $not_interested);
     return $this->db->insertObj(self::ENTITY_NAME, $userInt);
 }
 /**
  * Insert a new Event
  *
  * @param Event $event
  *
  * @return bool
  */
 public function addEvent(Event $event)
 {
     if (is_null($this->db)) {
         return false;
     }
     return $this->db->insertObj(self::ENTITY_NAME, $event);
 }
 /**
  * Signup user with a given username and password
  *
  * @param string $userid user ID
  * @param string $username The username
  * @param string $password The password
  *
  * @return bool
  */
 public function signupUser($userid, $username, $password)
 {
     if (is_null($this->db)) {
         return false;
     }
     $users = $this->db->getByEqualConditions(self::ENTITY_NAME, array('email' => $username));
     if (is_array($users) && !empty($users)) {
         $user = $users[0];
         if ($user !== false) {
             return false;
         }
     }
     $password = $this->encoder->encodePassword($password, '');
     $user = new User($userid, $username, $password);
     return $this->db->insertObj(self::ENTITY_NAME, $user);
 }