| @@ 178-207 (lines=30) @@ | ||
| 175 | * @param int $user_id |
|
| 176 | * @return bool |
|
| 177 | */ |
|
| 178 | function user_is_online($user_id) |
|
| 179 | { |
|
| 180 | $track_online_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ONLINE); |
|
| 181 | $table_user = Database::get_main_table(TABLE_MAIN_USER); |
|
| 182 | ||
| 183 | $access_url_id = api_get_current_access_url_id(); |
|
| 184 | $time_limit = api_get_setting('time_limit_whosonline'); |
|
| 185 | ||
| 186 | $online_time = time() - $time_limit * 60; |
|
| 187 | $limit_date = api_get_utc_datetime($online_time); |
|
| 188 | $user_id = intval($user_id); |
|
| 189 | ||
| 190 | $query = " SELECT login_user_id, login_date |
|
| 191 | FROM $track_online_table track |
|
| 192 | INNER JOIN $table_user u |
|
| 193 | ON (u.id=track.login_user_id) |
|
| 194 | WHERE |
|
| 195 | track.access_url_id = $access_url_id AND |
|
| 196 | login_date >= '".$limit_date."' AND |
|
| 197 | u.id = $user_id |
|
| 198 | LIMIT 1 "; |
|
| 199 | ||
| 200 | $result = Database::query($query); |
|
| 201 | if (Database::num_rows($result)) { |
|
| 202 | return true; |
|
| 203 | } |
|
| 204 | ||
| 205 | return false; |
|
| 206 | ||
| 207 | } |
|
| 208 | ||
| 209 | /** |
|
| 210 | * Gives a list of people online now (and in the last $valid minutes) |
|
| @@ 5568-5596 (lines=29) @@ | ||
| 5565 | * @param int $user_id |
|
| 5566 | * @return bool |
|
| 5567 | */ |
|
| 5568 | public static function user_is_online($user_id) |
|
| 5569 | { |
|
| 5570 | $track_online_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ONLINE); |
|
| 5571 | $table_user = Database::get_main_table(TABLE_MAIN_USER); |
|
| 5572 | ||
| 5573 | $access_url_id = api_get_current_access_url_id(); |
|
| 5574 | $time_limit = api_get_setting('display.time_limit_whosonline'); |
|
| 5575 | ||
| 5576 | $online_time = time() - $time_limit*60; |
|
| 5577 | $limit_date = api_get_utc_datetime($online_time); |
|
| 5578 | $user_id = intval($user_id); |
|
| 5579 | ||
| 5580 | $query = " SELECT login_user_id,login_date |
|
| 5581 | FROM $track_online_table track |
|
| 5582 | INNER JOIN $table_user u ON (u.id=track.login_user_id) |
|
| 5583 | WHERE |
|
| 5584 | track.access_url_id = $access_url_id AND |
|
| 5585 | login_date >= '".$limit_date."' AND |
|
| 5586 | u.id = $user_id |
|
| 5587 | LIMIT 1 "; |
|
| 5588 | ||
| 5589 | $result = Database::query($query); |
|
| 5590 | if (Database::num_rows($result)) { |
|
| 5591 | ||
| 5592 | return true; |
|
| 5593 | } |
|
| 5594 | ||
| 5595 | return false; |
|
| 5596 | } |
|
| 5597 | ||
| 5598 | /** |
|
| 5599 | * @param int $time_limit seconds |
|