Вчерашний борщ писал(а): Библиотека и галерея идут как "Главная страница", как-нибудь бы их обозначить.
Это к разработчикам соответствующих расширений. Информация о посещенной странице хранится в элементе массива
$on_page
скрипта
viewonline.php и выводится при помощи оператора
switch
. Переключатели
case
предопределены и стандартны
- index
- posting
- viewforum
- viewtopic
- search
- faq
- viewonline
- memberlist
- mcp
- ucp
- download/file
- report
и
default, то есть если элемент массива
$on_page
имеет другое значение, отличное от перечисленных, то название страницы, на которой находится пользователь, которое хранится в перемененной
$location
, приобретает значение
$user->lang['INDEX']
, то есть 'Главная страница'. Разработчики движка не могут знать, как автор расширения обзовет свою страницу.
Чтобы информация отображалась корректно, авторам расширений нужно воспользоваться событием
core.viewonline_overwrite_location
Вчерашний борщ писал(а): но логика viewonline летит в тартарары
Логика совершенно очевидна и правильна. Информация о том, на какой странице находится пользователь записывается в таблицу
_session
s в в поле
session_page
. И туда записывается информация о последней посещенной страницы, на каких страницах ни находился бы пользователь одновременно. Ну нельзя записать в поле 100 страниц, обозначив при этом время посещения каждой страницы, ибо при посещении каждой сессия обновляется, ибо