Описание:
Хак добавляет комментариям статус пользователя на сайте: Онлайн или Оффлайн. Низкая нагрузка: 1 запрос раз в 10 минут. (Если хак работает в паре с модулем DT_Online, то нагрузка не увеличивается т.к. запросы будет делать только DT_Online)
Автор: Inrus (dletweak.ru)
Совместимость: 8.X - 9.X
УстановкаОписание:
Хак добавляет комментариям статус пользователя на сайте: Онлайн или Оффлайн. Низкая нагрузка: 1 запрос раз в 10 минут. (Если хак работает в паре с модулем DT_Online, то нагрузка не увеличивается т.к. запросы будет делать только DT_Online)
Установка
1. Открыть файл engine/modules/show.full.php
Заменить:
reg_date, signature
На:
reg_date, signature, lastdate
3. Открыть файл engine/classes/comments.class.php
После:
else $tpl->set( '{ip}', '' );
Добавить:
#**********************************************************
# Статус пользователя
#**********************************************************
$fuser_status = '';
$timer = 10;
$dtime_1 = ( time() + ($config['date_adjust']*60) - ($timer*60) );
$dtime_2 = ( time() + ($config['date_adjust']*60) + ($timer*60) );
if( $row['lastdate'] > $dtime_1 AND $row['lastdate'] < $dtime_2 ) $tpl->set('{status}', "<font color=\"green\">На сайте</font>"); else $tpl->set('{status}', "<font color=\"red\">Оффлайн</font>");
#**********************************************************
# Статус пользователя
#**********************************************************
4. Открыть файл templates/{THEME}/comments.tpl
В нужном месте добавить:
{status}
5. (Если у Вас установлен DT_Online пропустите этот шаг) Открыть файл index.php
После:
$tpl->set ( '{speedbar}', $tpl->result['speedbar'] );
Добавить:
#**********************************************************
# Статус пользователя [подтвержение активности]
#**********************************************************
$fuser_status = '';
$timer = 10;
$fuser_status = ((time() + ($config['date_adjust']*60)) < ($member_id['lastdate'] + ($timer*60))) ? $request_online=false : $request_online=true;
if ( $is_logged AND $request_online ) $db->query("UPDATE " . USERPREFIX . "_users SET lastdate = '".time()."' WHERE user_id = '$member_id[user_id]'");
#**********************************************************
# Статус пользователя [подтвержение активности]
#**********************************************************
Готово.
Если Вы всё сделали правильно, модуль должен заработать ;)