Расширение:Thanks
Статус релиза: стабильно |
|
|---|---|
| Реализация | Пользовательский интерфейс |
| Описание | Позволяет участникам поблагодарить других участников за их правки и действия. |
| Автор(ы) |
|
| Последняя версия | 1.2.0 (Постоянные обновления) |
| Политика совместимости | Снэпшоты выходят вместе с MediaWiki. Мастер не имеет обратной совместимости. |
|
|
| License | MIT License |
| Скачать | |
| Переведите расширение Thanks, если оно доступно на translatewiki.net | |
| Роль Vagrant | echo |
| Проблемы | Открытые задачи · Сообщить об ошибке |
Расширение Thanks добавляет быстрый способ дать положительный отклик на продуктивные действия на сайтах MediaWiki. Оно позволяет пользователям отправлять публичные уведомления «спасибо» (посредством Echo) другим пользователям за их правки и некоторые записанные действия.
Ссылка «поблагодарить» добавляется в следующих местах:
- рядом со ссылкой «отменить» при просмотре истории и сравнения версий страницы;
- у некоторых записей журнала на странице Special:Log (см. #Конфигурация ниже)
- у комментариев досок Flow, если расширение StructuredDiscussions установлено.
Также добавляется API для отправки благодарностей.
Обратите внимание, что если вы не хотите получать благодарности, вы можете легко отключить это уведомление в своих настройках, как описано ниже.
Как только у вас появится возможность опробовать эту функцию, мы будем рады услышать ваши отзывы о ней на странице обсуждения.
Мы надеемся, что уведомление от Thanks сделает выражение признательности за работу друг друга проще. Оно должно быть особенно полезным для поддержки новых пользователей на их первых, самых важных шагах в вики. Мы намеренно сделали это уведомление максимально простым, чтобы вместе оценить его и доработать. Наслаждайтесь…
Установка
- Скачайте и распакуйте файл(ы) в папку с названием
Thanksв вашей папкеextensions/.
Вместо этого разработчикам и соавторам кода следует установить расширение из Git, используя:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Thanks
- Добавьте следующий код в конце вашего файла LocalSettings.php:
wfLoadExtension( 'Thanks' );
- Настройте, как вам удобно.
- Перейдите на историю страницы, чтобы увидеть новый интерфейс «поблагодарить».
Готово – Перейдите на страницу Special:Version на своей вики, чтобы удостовериться в том, что расширение успешно установлено.
Конфигурация
Включить интерфейс «поблагодарить» для правок ботов (по умолчанию отключено)
$wgThanksSendToBots = false;
Записывать действия благодарностей в Special:Log (по умолчанию включено)
$wgThanksLogging = true;
Необходимо ли подтверждение для отправки благодарности (по умолчанию включено)
$wgThanksConfirmationRequired = true;
Типы записей в журнале, которые можно поблагодарить из Special:Log:
$wgThanksAllowedLogTypes = [
"contentmodel",
"delete",
"import",
"merge",
"move",
"patrol",
"protect",
"tag",
"managetags",
"rights"
];
Использование
Чтобы поблагодарить другого пользователя, перейдите в раздел «История» любой страницы. Рядом с каждой версией страницы будет ссылка «поблагодарить». Нажмите на ссылку, чтобы поблагодарить пользователя. Эта ссылка также доступна при просмотре разницы версий, у некоторых записей в Special:Log, а также ниже комментариев на досках Flow, если Flow установлено.
При нажатии на ссылку «поблагодарить» получатель получит уведомление с вашей благодарностью через расширение Echo (если только он не отказался от получения уведомлений с благодарностью). Запись о действии также записывается в виде записи в журнале в Special:Log/thanks.
Если на вики используется кэшированная память, устанавливается ограничение в размере не более 10 благодарностей в минуту для каждого пользователя. Ограничение можно настроить с помощью $wgRateLimits['thanks-notification'].
Отказ от благодарностей
Чтобы не получать уведомления о благодарностях, вы можете отказаться от них в своих настройках уведомлений. Перейдите на вкладку «Уведомления» в ваших настройках. Это лишь отключает получение вами уведомлений — пользователи по-прежнему смогут отправлять вам благодарности.
Документация по API
| thank | |
|---|---|
Этот модуль не может быть использован в качестве генератора. | |
| Префикс | |
| Необходимые права | нет |
| Только POST? | Да |
| Генерируемая справка | Текущее |
Расширение Thanks включает API для отправки благодарностей.
Для вызова API используйте параметр action=thank.
Параметры:
rev- Идентификатор версии, за которую вы хотите поблагодарить кого-то (требуется либо это, либоlog)log- Идентификатор записи в журнале, за которую вы хотите поблагодарить кого-то (требуется либо это, либоrev)source- Источник события благодарности. Это короткая строка, которая указывает, откуда она была отправлена. Например, если благодарность была отправлена из Huggle, значением может быть «huggle». (необязательно)token- Токен редактирования (также CSRF-токен). Вы можете получить такой через API токенов. (требуется)
Пример:
api.php?action=thank&rev=16543&token=%2B\
Чтобы отправить благодарность через OAuth, требуется только разрешение «Основные права». Доступен пример на Python.
Flow Thanks
| flowthank | |
|---|---|
Этот модуль не может быть использован в качестве генератора. | |
| Префикс | |
| Необходимые права | нет |
| Только POST? | Да |
| Генерируемая справка | Текущее |
Существует отдельный API для отправки благодарностей за комментарии на досках Flow.
Для вызова API используйте action=flowthank.
Параметры:
postid- UUID комментария, за который следует поблагодарить (требуется)token- Токен редактирования Вы можете получить такой через prop=info. (требуется)
Пример:
api.php?action=flowthank&postid=abc123&token=%2B\
Ошибки и предупреждения
| Код | Информация |
|---|---|
| invalidrecipient | Не найдено корректного получателя Нельзя поблагодарить ботов Вы не можете поблагодарить сами себя |
Документация SQL
Конкретная правка, событие или действие, за которое отправляется благодарность, не сохраняется в таблице журнала базы данных (поэтому система ограничивает объём информации, которую можно отобразить, например, на Special:Log/thanks). В журнал заносятся только отметка времени, отправитель и получатель.
Чтобы понять по журналам, кто кого поблагодарил, нужно уметь разбираться в структуре столбцов.
В таблице logging поле log_title обозначает получателя, а поле log_user_text — отправителя.
Следующий SQL-запрос, который находит все благодарности, полученные пользователем за определённый период времени, иллюстрирует это:
select log_timestamp as thank_timestamp,
replace(log_title, '_', ' ') as receiver,
log_user_text as sender
from logging_logindex
where log_title = :user_name
and log_action = 'thank'
and :start_date <= log_timestamp
and log_timestamp <= :end_date
Обратите внимание, что выборка производится не напрямую из the logging table — на серверах Викимедиа мы используем таблицу logging_logindex.
Чтобы быстро найти все благодарности, которые пользователь отправил, таблица logging_userindex предоставляет соответствующий индекс.
См. также
- w:Help:Notifications/Thanks - Информация о использовании этого расширения на английской Википедии
- Echo (Notifications)/Feature requirements#Thank_you_notification - Первоначальное предложение функции (для расширения Echo)
- Расширение:ВикиСимпатия - Еще одно расширение для отправки благодарностей
- Расширение:Echo - Предоставляет систему уведомлений
| Это расширение используется в одном или нескольких проектах Викимедиа. Вероятно, это означает, что расширение стабильно и работает достаточно хорошо, чтобы использоваться такими сайтами с высоким трафиком. Найдите название этого расширения в файлах конфигурации Викимедиа CommonSettings.php и InitialiseSettings.php, чтобы узнать, где оно установлено. Полный список расширений, установленных на конкретной вики, можно увидеть на странице Special:Version wiki. |
| Это расширение включено в следующие вики-фермы/хостинги и/или пакеты: |
- Stable extensions/ru
- User interface extensions/ru
- ApiMain::moduleManager extensions/ru
- BeforeCreateEchoEvent extensions/ru
- BeforePageDisplay extensions/ru
- ChangesListInitRows extensions/ru
- DiffTools extensions/ru
- DifferenceEngineViewHeader extensions/ru
- EchoGetBundleRules extensions/ru
- GetAllBlockActions extensions/ru
- GetLogTypesOnUser extensions/ru
- HistoryTools extensions/ru
- LocalUserCreated extensions/ru
- LogEventsListLineEnding extensions/ru
- PageHistoryBeforeList extensions/ru
- PageHistoryPager::doBatchLookups extensions/ru
- MIT licensed extensions/ru
- Extensions in Wikimedia version control/ru
- All extensions/ru
- Extensions bundled with MediaWiki 1.40/ru
- Extensions used on Wikimedia/ru
- Extensions included in Canasta/ru
- Extensions available as Debian packages/ru
- Extensions included in Fandom/ru
- Extensions included in Miraheze/ru
- Extensions included in MyWikis/ru
- Extensions included in ProWiki/ru
- Extensions included in ShoutWiki/ru
- Extensions included in Telepedia/ru
- Extensions included in wiki.gg/ru
