Решено Расширение: кто онлайн?

aka_sektor

Гуру MediaWiki
Регистрация
21.12.2015
Сообщения
282
Реакции
14
Есть ли расширение для MediaWiki, которое выводит в интерфейсе, кто сейчас онлайн из пользователей на сайте? В футере например. Ну или на странице.
 
Ага, да точно. Не успел ещё сам поискать.
Там похоже, добавляет спецстраницу, на которой выводит список. Её вроде как можно вставить в обычную страницу.
Непонятно, как оно выглядеть будет. Желательно было бы через запятую горизонтальный список.
Там надо скрипт обновления запустить, чтобы таблицы в базе данных создались.
Интересно, после удаления расширения они остаются в БД? Или скрипт обновления нужно снова запустить, чтобы они удалились?
 
Ага, да точно. Не успел ещё сам поискать.

Там похоже, добавляет спецстраницу, на которой выводит список. Её вроде как можно вставить в обычную страницу.
Непонятно, как оно выглядеть будет. Желательно было бы через запятую горизонтальный список.
Взять поставить посмотреть нет?
На крайняк сходить посмотреть на сайте где оно стоит: https://wikiapiary.com/wiki/Extension:WhosOnline
Там надо скрипт обновления запустить, чтобы таблицы в базе данных создались.
Интересно, после удаления расширения они остаются в БД? Или скрипт обновления нужно снова запустить, чтобы они удалились?
https://github.com/wikimedia/mediawiki-extensions-WhosOnline/blob/master/whosonline.sql
 
Ага, поставил блин:
Код:
MediaWiki internal error.

Original exception: [a8e1b7f5d072b1ffc7a09827] 2017-09-10 20:13:52: Fatal exception of type "Wikimedia\Rdbms\DBQueryError"

Exception caught inside exception handler.

Set $wgShowExceptionDetails = true; and $wgShowDBErrorBacktrace = true; at the bottom of LocalSettings.php to show detailed debugging information

UPD:
Странно... само исправилось.

UPD2:
Точнее не совсем, сайт заработал дальше, но внизу самом под футером эту ошибку писало.
В итоге, скрипт обновления решил вопрос.

UPD3:
В общем да, расширение вывод вертикальный список.

UPD4:
В описании расширения написано про какие-то элементы навигации при использовании тега:
Код:
{{:Special:WhosOnline/10/shownav}}
Однако чет не наблюдаю их.

UPD5:
Странная хрень... зашёл ещё в один свой аккаунт, в списке ник появился. Вышел - он там остался.
 
Последнее редактирование:
Как бы в это расширение добавить поисковых ботов....чтобы видно было, когда они ползают по сайту?
 
Вертикальный список - это оч неудобно (
 
Вертикальный список - это оч неудобно (
Вот код, отвечающий за вертикальный список!
upload_2017-10-18_17-43-14.png

Удаляйте <li> и будет вам счастье!

Было:
upload_2017-10-18_17-44-52.png

Стало:
upload_2017-10-18_17-45-23.png

Только надо понять, как не ставить запятую, если список закончился. А так - работает!
 
Вот код, отвечающий за вертикальный список!
Посмотреть вложение 201

Удаляйте <li> и будет вам счастье!

Было:
Посмотреть вложение 202

Стало:
Посмотреть вложение 203

Только надо понять, как не ставить запятую, если список закончился. А так - работает!
Ок! Вопрос к гуру PHP - как запятую убрать на конце? )
 
Вот код, отвечающий за вертикальный список!

Удаляйте <li> и будет вам счастье!

Только надо понять, как не ставить запятую, если список закончился. А так - работает!
Делая так вы обрекаете себя на муки при обновлении движка - нужно запоминать или записывать где и что выковыривали. Чтобы этого избежать придумали хуки и темизацию.

Конкретно в этом случае можно завернуть список в контейнер:
Код:
<div class="whos-online">{{:Special:WhosOnline}}</div>
И стилизовать его через MediaWiki:Common.css или любым другим способом подключения css стилей.
Код:
.whos-online li {
  display: inline-block;
}

ЗЫ: Про какую вы запятую говорите я не понял. У меня нет никаких запятых.
 
Делая так вы обрекаете себя на муки при обновлении движка - нужно запоминать или записывать где и что выковыривали. Чтобы этого избежать придумали хуки и темизацию.

Конкретно в этом случае можно завернуть список в контейнер:
Код:
<div class="whos-online">{{:Special:WhosOnline}}</div>
И стилизовать его через MediaWiki:Common.css или любым другим способом подключения css стилей.
Код:
.whos-online li {
  display: inline-block;
}

ЗЫ: Про какую вы запятую говорите я не понял. У меня нет никаких запятых.
Про запятую имеем в виду, чтобы список пользователей онлайн был через запятую ) -Вася, Петя, Маша.

Ну можно также в шаблон её поставить, но вопрос был в том, чтобы после последнего имени была точка )
 
Спасибо! Попробуем!
Ну и какой css в итоге?

Этот работает:
Код:
.whos-online li { display: inline-block; }
.whos-online li + li:before { content: ", "; }

Однако пробелов между именами почему-то нету.

В общем, не особо толку от css. Он ещё с фиксированными спойлерами конфликтует: http://mediawiki.ru/forum/threads/Как-зафиксировать-свернутый-спойлер.694/#post-5465

Если в WhosOnlineSpecialPage.php поменять код:
Код:
        return '<li><a href="' . htmlspecialchars( $userPageLink, ENT_QUOTES ) . '">' .
            htmlspecialchars( $name, ENT_QUOTES ) . '</a></li>';

На этот:
Код:
        return '<a href="' . htmlspecialchars( $userPageLink, ENT_QUOTES ) . '">' .
            htmlspecialchars( $name, ENT_QUOTES ) . ', </a>';

Тогда выстраивается по горизонтали, и пробел есть после каждого имени. Вот только запятая после последнего остается.
 
Я не стал пока ставить расшширение ) - пользователей мало на проекте
 
Назад
Верх