コード例 #1
0
 public static function get_online_users($condition, $parameters)
 {
     $users = array();
     $result = self::$querier->select("SELECT \n\t\ts.user_id, s.timestamp, s.location_script, s.location_title,\n\t\tm.display_name, m.level, m.groups,\n\t\tf.user_avatar\n\t\tFROM " . DB_TABLE_SESSIONS . " s\n\t\tLEFT JOIN " . DB_TABLE_MEMBER . " m ON m.user_id = s.user_id \n\t\tLEFT JOIN " . DB_TABLE_MEMBER_EXTENDED_FIELDS . " f ON f.user_id = s.user_id " . $condition, $parameters);
     while ($row = $result->fetch()) {
         $user = new OnlineUser();
         $user->set_id($row['user_id']);
         $user->set_display_name($row['display_name']);
         $user->set_level($row['user_id'] != User::VISITOR_LEVEL ? $row['level'] : User::VISITOR_LEVEL);
         $user->set_groups(explode('|', $row['groups']));
         $user->set_last_update(new Date($row['timestamp'], Timezone::SERVER_TIMEZONE));
         $user->set_location_script($row['location_script']);
         $user->set_location_title(stripslashes($row['location_title']));
         $user->set_avatar($row['user_avatar']);
         $users[] = $user;
     }
     $result->dispose();
     return $users;
 }