| @@ 181-210 (lines=30) @@ | ||
| 178 | * @param int $user_id |
|
| 179 | * @return bool |
|
| 180 | */ |
|
| 181 | function user_is_online($user_id) |
|
| 182 | { |
|
| 183 | $track_online_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ONLINE); |
|
| 184 | $table_user = Database::get_main_table(TABLE_MAIN_USER); |
|
| 185 | ||
| 186 | $access_url_id = api_get_current_access_url_id(); |
|
| 187 | $time_limit = api_get_setting('time_limit_whosonline'); |
|
| 188 | ||
| 189 | $online_time = time() - $time_limit * 60; |
|
| 190 | $limit_date = api_get_utc_datetime($online_time); |
|
| 191 | $user_id = intval($user_id); |
|
| 192 | ||
| 193 | $query = " SELECT login_user_id, login_date |
|
| 194 | FROM $track_online_table track |
|
| 195 | INNER JOIN $table_user u |
|
| 196 | ON (u.id=track.login_user_id) |
|
| 197 | WHERE |
|
| 198 | track.access_url_id = $access_url_id AND |
|
| 199 | login_date >= '".$limit_date."' AND |
|
| 200 | u.id = $user_id |
|
| 201 | LIMIT 1 "; |
|
| 202 | ||
| 203 | $result = Database::query($query); |
|
| 204 | if (Database::num_rows($result)) { |
|
| 205 | return true; |
|
| 206 | } |
|
| 207 | ||
| 208 | return false; |
|
| 209 | ||
| 210 | } |
|
| 211 | ||
| 212 | /** |
|
| 213 | * Gives a list of people online now (and in the last $valid minutes) |
|
| @@ 5351-5379 (lines=29) @@ | ||
| 5348 | * @param int $user_id |
|
| 5349 | * @return bool |
|
| 5350 | */ |
|
| 5351 | public static function user_is_online($user_id) |
|
| 5352 | { |
|
| 5353 | $track_online_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ONLINE); |
|
| 5354 | $table_user = Database::get_main_table(TABLE_MAIN_USER); |
|
| 5355 | ||
| 5356 | $access_url_id = api_get_current_access_url_id(); |
|
| 5357 | $time_limit = api_get_setting('display.time_limit_whosonline'); |
|
| 5358 | ||
| 5359 | $online_time = time() - $time_limit*60; |
|
| 5360 | $limit_date = api_get_utc_datetime($online_time); |
|
| 5361 | $user_id = intval($user_id); |
|
| 5362 | ||
| 5363 | $query = " SELECT login_user_id,login_date |
|
| 5364 | FROM $track_online_table track |
|
| 5365 | INNER JOIN $table_user u ON (u.id=track.login_user_id) |
|
| 5366 | WHERE |
|
| 5367 | track.access_url_id = $access_url_id AND |
|
| 5368 | login_date >= '".$limit_date."' AND |
|
| 5369 | u.id = $user_id |
|
| 5370 | LIMIT 1 "; |
|
| 5371 | ||
| 5372 | $result = Database::query($query); |
|
| 5373 | if (Database::num_rows($result)) { |
|
| 5374 | ||
| 5375 | return true; |
|
| 5376 | } |
|
| 5377 | ||
| 5378 | return false; |
|
| 5379 | } |
|
| 5380 | ||
| 5381 | /** |
|
| 5382 | * @param int $time_limit seconds |
|