/**
  * 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);
 }
 /**
  * Loads all tweets of an event.
  *
  * @param $event_id mixed ID of the event
  *
  * @return array
  */
 public function getTweetsByEvent($event_id)
 {
     $tweets = $this->db->getByEqualConditions(self::ENTITY_NAME, array('event_id' => $event_id));
     if ($tweets === false) {
         return false;
     }
     if (count($tweets) == 0) {
         return array();
     }
     // Retrieve all tweets as Event Object
     $tmp = new \ReflectionClass('App\\Model\\Tweet');
     foreach ($tweets as $key => $tweet) {
         try {
             $tweets[$key] = $tmp->newInstanceArgs($tweet);
         } catch (InvalidArgumentException $e) {
             $tweets[$key] = null;
         }
     }
     return $tweets;
 }
 /**
  * Load an event
  *
  * @param $eventid int
  *
  * @return array
  */
 public function getEventById($eventid)
 {
     $event = $this->db->getByEqualConditions(self::ENTITY_NAME, array('event_id' => $eventid));
     if ($event === false) {
         return false;
     }
     $event = $event[0];
     $tmp = new \ReflectionClass('App\\Model\\Event');
     $event = $this->toArrayForCvalues($event);
     $event = $tmp->newInstanceArgs($event);
     return $event;
 }