Протестируем новый механизм мониторинга форума?
Создана: 07 Января 2010 Чтв 15:38:32.
Раздел: "Администрация - пользователям форума"
Сообщений в теме: 121, просмотров: 27883
-
Предлагаю желающим вызвать на тестирование следующую страницу:
http://forum.omsk.com/mon2.php
это довольно сырая версия страницы мониторинга, в основе которой лежат новые технологические принципы (по сравнению с используемыми ранее).
что меня интересует:
1. Могут быть проблемы совместимости. Интересует у кого что-то не работает, у кого "расползается" форматирование, выскакивают какие-то ошибки и т.д.
2. Интересует что кажется неудобным, нелогичным, глючит, тормозит.
3. Интересуют конструктивные предложения каких-то изменений.
Что должно работать.
На данном этапе логика работы страницы такова:
-на сервере происходят некие события (добавляются темы, сообщения, что-то редактируются, удаляется и т.д.), и эти события пересылаются в мониторинг. Каждое событие представляет собой одну строку в окошке мониторинга.
-окошко мониторинга - серое такое окошко, с закруглёнными уголками. Оно логически делится на три части:
= средняя часть - "бегушка" - в ней должны автоматически бежать вверх строчки. Хотя бежать они могут быстрее и медленнее, вверх и вниз, или стоять на месте - всё регулируется кнопками "вверх", "стоп", "вниз". Ещё есть полоса прокрутки, можно прокручивать список колёсиком мыши.
= верхняя часть - "горячие сообщения" - в неё выводятся только что поступившие сообщения, возраст которых менее 2 минут. Они там висят и никуда не бегут пока не устареют. Как только становятся старше 2 минут - перепрыгивают сверху в середину и присоединяются к общмему прокручиваемому списку.
= нижняя часть - "выборка". Если кликнуть в заголовок темы на строке, которая находится в верхних частях, то строчка перепрыгивает вниз, в "выборку", и там торчит. Чё она там торчит - пока не понятно, не придумано ещё. В общем, она выбрана и всё.
- при наведении мышки на бегущие строчки бег останавливается, при убирании мышки бегут дальше. Кроме того, при наведении мыши прекращают выводиться новые сообщения, получаемые с сервера - это чтобы строчки не "выпрыгивали" прямо из-под наведённой мышки.
- крайнее справа поле "имя участника" - ссылка, нажав её можно открыть информацию об этос участнике. По умолчанию открывается в новом окне.
- рядом с заголовком темы есть параметр, говорящий о количестве ответов в теме, он написан по принципу (+число) - это ссылка, ведущая на тему. Если её кликнуть, тема откроется в новом окне.
- ещё есть "корзина". В ней живут те строки мониторинга, которые решено спрятать с экрана. Если кликнуть мышкой корзину то спрятанные строки проявятся в виде зачёркнутых строк. Если потом ещё раз нажать на корзину - обратно спрячутся. А двойной клик по корзине убивает все спрятанные в неё строки.
- слева каждой строки идёт параметр "время события". Если навести на него мышку, то подсвечивается зачёркнутой линией. Если кликнуть, то сообщение уйдёт в корзину (станет невидимым или зачёркнутым, в зависимости от текущего режима корзины). Аналогичным образом можно достать сообщение из корзины - кликнуть "время события" на зачёркнутой строке, она "вытащится из корзины" и перестанет быть зачёркнутой.
-существует логика автоматического помещения входящих событий в корзину. Сейчас она такова:
= в корзину автоматом уходят все события редактирования и удаления,
= добавления новых сообщений в темах в разделе 23 (объявления и реклама) тоже сразу идут в корзину (новые темы - показываются как обычно)
= новые события по одной и той же теме вытесняют в корзину предыдущие события по этой теме. Таким образом по каждой теме должно показываться только самое последнее видимое событие.
(вообще логику автоматического фильтрования предполагается расширить и сделать произвольно настраиваемой)
- в самом низу есть поле поиска. Это зародыш механизма фильтров, который пока ещё не сделан, но уже почти придуман. В настоящий момент функционирует как поиск по заголовкам тем (только среди событий, уже загруженных в память, дополнительных обращений к серверу не происходит). Найденные строки показываются списком внизу, под полем поиска. И слегка подсвечиваются в "мониторинге".
- вверху под логотипом "Омский форум" выводится время, получаемое от сервера - это время последнего ответа сервера. Оно должно показываться в локальном часовом поясе пользователя. (Время строчек-событий тоже локальное).
Дизайн и логика работы предварительны, это пока только творческий набросок -
-
высоту можно задать любой.
меня сейчас другое интересует - сама динамика мониторинга.
когда сообщения едут, то новые добавляющиеся сообщения двигаются вниз, что в общем-то не очень логично.
если сообщения доезжают до верхнего края окошка и в это время нажать "стоп", чтобы в верхнем левом углу оказалось "время сервера", то после этого сообщения добавляются логично и строки смещаются вниз по мере появления новых сообщений - такое поведение более логично.
осталось только придумать какое-то правильное сочетание механизма "выхватывания из бегущих" с "мониторингом-реалтайм" -
что касается появления одной темы по нескольку раз - сейчас логика фильтрации сообщений ещё не придумана.
Общая концепция такая:
-запоминаются все события, такие как добавление тем, сообщений, редактирование сообщений, удаления (по замыслу будут фиксироваться ещё больше событий - и регистрация новых участников, и когда кто-то логинется на форум, и так далее (вплоть до редактирования профиля).
- при выдаче сообщений клиенту осуществляется выборка и фильтрация из этих сообщений, то есть чтобы показывать только те, которые представляют интерес.
Таким образом, можно сделать по каждому разделу глубину мониторинга: по каким-то разделам вообще не показывать ничего, по каким-то только новые темы, по каким-то и новые темы и новые сообщения, а по каким-то всё вплоть до редактирования сообщений.
сейчас сервер отдаёт все события, которые фиксируются. реализована только простейшая фильтрация на стороне клиента, благодаря которой не показываются только почти одинаковые события, а всё остальное показывается. (например, я написал два сообщения подряд в тему, а в мониторинге покажется только последнее из них) Это сделано для отладки, чтобы постоянно какие-то события приходили. -
-
Private Joker писал : А если только эта страница с мониторингом будет постоянно висеть, а другое ничего не открываться - сессия аутентификации на ОФ не будет по таймауту закрываться сама, как обычно по неактивности?
сейчас пока будет закрываться по таймауту, а потом разумеется не будет. -
-
-
Weezer1994 писал : На чистом ИЕ еще попробывать, что ли... )))
не стОит осел, он и в африке осел.
Вообще надо прекращать его поддержку. И чем больше разработчиков это поддержат, тем быстрее от него избавимся.