Посмотрел для интереса. Проблема больше в phpBB, точней в том, как работает система расширений. Все запросы к контроллеру идут через app.php. В нём обновляется страница сессии:
Код: Выделить всё
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('app');
Работа данного расширения тоже идёт через app.php, и естественно, что страница сессии сбрасывается.
Если же загрузка изображений идёт через download/file.php, то там видно, что обновление страницы сессии запрещено:
Код: Выделить всё
// Start session management, do not update session page.
$user->session_begin(false);
$auth->acl($user->data);
$user->setup('viewtopic');
Как вариант обхода, можно вытащить из таблицы вложения id сообщения/темы к которому он прикреплён, и обновить информацию для viewonline, используя событие core.viewonline_overwrite_location.