Jump to content

Расширение:Thanks

From mediawiki.org
This page is a translated version of the page Extension:Thanks and the translation is 100% complete.
Справка по расширениям MediaWiki
Thanks
Статус релиза: стабильно
Реализация Пользовательский интерфейс
Описание Позволяет участникам поблагодарить других участников за их правки и действия.
Автор(ы)
Последняя версия 1.2.0 (Постоянные обновления)
Политика совместимости Снэпшоты выходят вместе с MediaWiki. Мастер не имеет обратной совместимости.
  • $wgThanksAllowedLogTypes
  • $wgThanksConfirmationRequired
  • $wgThanksLogging
  • $wgThanksSendToBots
License MIT License
Скачать
Переведите расширение Thanks, если оно доступно на translatewiki.net
Роль Vagrant echo
Проблемы Открытые задачи · Сообщить об ошибке

Расширение Thanks добавляет быстрый способ дать положительный отклик на продуктивные действия на сайтах MediaWiki. Оно позволяет пользователям отправлять публичные уведомления «спасибо» (посредством Echo ) другим пользователям за их правки и некоторые записанные действия.

Ссылка «поблагодарить» добавляется в следующих местах:

  • рядом со ссылкой «отменить» при просмотре истории и сравнения версий страницы;
  • у некоторых записей журнала на странице Special:Log (см. #Конфигурация ниже)
  • у комментариев досок Flow, если расширение StructuredDiscussions установлено.

Также добавляется API для отправки благодарностей.

Обратите внимание, что если вы не хотите получать благодарности, вы можете легко отключить это уведомление в своих настройках, как описано ниже.

Пример благодарственного уведомления

Как только у вас появится возможность опробовать эту функцию, мы будем рады услышать ваши отзывы о ней на странице обсуждения.

Мы надеемся, что уведомление от Thanks сделает выражение признательности за работу друг друга проще. Оно должно быть особенно полезным для поддержки новых пользователей на их первых, самых важных шагах в вики. Мы намеренно сделали это уведомление максимально простым, чтобы вместе оценить его и доработать. Наслаждайтесь…

Установка

Для работы Thanks требуется предварительная установка расширения Echo .
Это расширение поставляется с MediaWiki 1.40 и выше, так что вам не нужно загружать его. Остальные инструкции по настройке всё равно необходимо соблюдать.
  • Скачайте и распакуйте файл(ы) в папку с названием Thanks в вашей папке extensions/.
    Вместо этого разработчикам и соавторам кода следует установить расширение из Git, используя:
    cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Thanks
    
  • Добавьте следующий код в конце вашего файла LocalSettings.php :
    wfLoadExtension( 'Thanks' );
    
  • Настройте, как вам удобно.
  • Перейдите на историю страницы, чтобы увидеть новый интерфейс «поблагодарить».
  • Yes Готово – Перейдите на страницу 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

Расширение 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

Существует отдельный 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 предоставляет соответствующий индекс.

См. также