Вы здесь

Блок. Кто онлайн

Код выводит сообщение:

Зарегистрировано пользователей — 10, онлайн: пользователей — 3, гостей — 2.

Пользователи онлайн

Псевдоним 1
Псевдоним 2
Псевдоним 3

<?php
$number
= db_result(db_query('SELECT COUNT(uid) AS number FROM {users} WHERE status=1'));
        if (
user_access('access content')) {
         
$time_period = variable_get('user_block_seconds_online', 900);
         
$guests = db_fetch_object(db_query('SELECT COUNT(sid) AS count FROM {sessions} WHERE timestamp >= %d AND uid = 0', time() - $time_period));
         
$users = db_query('SELECT uid, name, access FROM {users} WHERE access >= %d AND uid != 0 ORDER BY access DESC', time() - $time_period);
         
$total_users = db_num_rows($users);
echo
"Зарегистрировано пользователей — $number, ";
          if (
$total_users == 1 && $guests->count == 1) {
           
$output = t('онлайн: %members; %visitors.', array('%members' => format_plural($total_users, 'в настоящее время на сайте — 1', 'в настоящее время на сайте — @count'), '%visitors' => format_plural($guests->count, 'гостей — 1', 'гостей — @count')));
          }
          else {
           
$output = t('в настоящее время онлайн: %members; %visitors.', array('%members' => format_plural($total_users, 'пользователей — 1', 'пользователей — @count'), '%visitors' => format_plural($guests->count, 'гостей — 1', 'гостей — @count')));
          }
         
$max_users = variable_get('user_block_max_list_count', 10);
          if (
$total_users && $max_users) {
           
$items = array();
            while (
$max_users-- && $account = db_fetch_object($users)) {
             
$items[] = $account;
            }
           
$output .= theme('user_list', $items, t('Пользователи онлайн'));
          }
        }
        return
$output;
?>