Open main menu
This page is a translated version of the page Extension:Thanks and the translation is 32% complete.

Other languages:
Deutsch • ‎English • ‎dansk • ‎español • ‎français • ‎polski • ‎português do Brasil • ‎română • ‎中文 • ‎日本語 • ‎ꯃꯤꯇꯩ ꯂꯣꯟ • ‎한국어
MediaWiki扩展手册
OOjs UI icon advanced.svg
Thanks
发布状态: 稳定版
History-Thank-Link-Mockup1.png
实现 用户界面
描述 使用户对个别编辑或其他操作发送感谢
作者
最新版本 1.2.0 (Continuous updates)
兼容性方针 发行分支
MediaWiki 1.31+ . Thanks master should only be used with core's master; otherwise, use matching branches (e.g. Thanks REL1_27 with core REL1_27, or matching WMF release branches).
PHP 5.4+
数据庫更新
许可协议 MIT授權條款
下载
  • $wgThanksSendToBots
  • $wgThanksLogging
  • $wgThanksConfirmationRequired
  • $wgThanksLogTypeWhitelist
翻译Thanks扩展如果在translatewiki.net可用
检查使用和版本矩阵。
Vagrant角色 echo
问题 开放的工作 · 报告错误

The Thanks extension adds a quick way to give positive feedback for productive contributions to MediaWiki sites. It allows users to send public 'thank you' notifications (via Echo) to other users for their individual edits and some logged actions.

The specific revision that is being "thanked" for is not stored in the public logging table. Only the timestamp, sender, and recipient, are publicly logged.

A 'thank' link is added in four places:

  • next to the 'undo' link in history and diff views;
  • on some log entries on Special:Log (see #Configuration, below); and
  • to Flow board comments if Flow is installed.

It also provides an API for sending thanks.

Note that if you do not want to be thanked, you can easily disable this notification in your preferences, as described below.

Example of a 'thanks' notification

Once you have had a chance to try it out, we welcome your feedback about this feature on the talk page.

We hope that the Thanks notification will make it easier to show appreciation for each other's work — and it should be particularly helpful for encouraging new users during their first critical steps on a wiki. We have intentionally kept this notification as simple as possible, so we can evaluate it and improve it together. Enjoy…

下載

此扩展可直接从Git检索到 [?]:

  • 浏览代码
  • 部分扩展有稳定版本标签。
  • 每个分支与过去的MediaWiki发布版本相关联。 这里也有一个“主线”分支,包含最新alpha版本(可能需要MediaWiki的alpha版本)。

提取快照,并将它放置在您的MediaWiki安装副本的extensions/Thanks/目录中。

如果您对git熟悉,并且拥有您服务器的shell访问权,您也可以通过以下方法获得扩展:

cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Thanks.git

安装

感谢扩展依赖于通知扩展
  • 下载文件,并将其放置在您extensions/文件夹中的Thanks目录内。

致使用MediaWiki 1.26或更早版本的用户:

上面的说明介绍的是安装此扩展的新方法,它使用wfLoadExtension()。 如果您需要在早期版本(MediaWiki 1.26和更早版本)中安装此扩展,而不是wfLoadExtension( 'Thanks' );,您需要使用:

require_once "$IP/extensions/Thanks/Thanks.php";

配置

Enable the Thank interface for bot edits (disabled by default)

$wgThanksSendToBots = false;

Log Thank actions to "Special:Log" (enabled by default)

$wgThanksLogging = true;

Whether or not confirmation is required for sending thanks (enabled by default)

$wgThanksConfirmationRequired = true;

Log entry types that can be thanked from Special:Log:

$wgThanksLogTypeWhitelist = [
	"contentmodel",
	"delete",
	"import",
	"merge",
	"move",
	"patrol",
	"protect",
	"tag",
	"managetags",
	"rights"
];

用法

To thank another user, go to the History tab of any page. Next to each revision will be a 'thank' link. Click the link to send thanks to that user. This link is also available in the diff view, on some entries in Special:Log, and below comments on Flow boards if Flow is installed.

When the thank link is clicked, the recipient will receive a notification with your thanks via the Echo extension (unless they have opted out of receiving thanks notifications). A record of the action is also recorded as a log entry at Special:Log/thanks.

If the wiki is using memcached, a rate limit is imposed of no more than 10 thanks per minute per user. The limit can be configured with $wgRateLimits ['thanks-notification'].

Avoiding thanks

To stop getting thanks notifications, you can opt out from them in your notification preferences. Go to the Notifications tab of your preferences. This only prevents you from getting notified, it does not prevent users from thanking you.

API文档

The Thanks extension includes an API for sending thanks. In order to call the API, use the parameter action=thank.

参数:

  • rev - The revision ID you would like to thank someone for (either this or log is required)
  • log - The log ID you would like to thank someone for (either this or rev is required)
  • source - Source of the thank event. This is a short string that identifies where the thanks was sent from. For example, if the thanks was sent from Huggle, the value could be 'huggle'. (optional)
  • token - Edit token (a.k.a. csrf token). You can get one of these through the tokens API. (required)

例子:

 api.php?action=thank&rev=16543&token=%2B\

To send thanks via OAuth only the "Basic" grant permission is required. A python example can be found here.

Log Documentation

Understanding who thanked who from the logs requires some understanding of the columns. Within the logging table, the log_title represents the receiver, and the log_user_text represents the sender.

The following SQL which finds all the thanks a receiver received within a time period illustrates this:

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 <= :end_date

Notice also that the logging table is not selected from directly, but on Wikimedia servers we take advantage the logging_logindex table. In order to quickly search for all the thanks a user sent the logging_userindex provides the correct index.

Flow感谢

There is a separate API for sending Thanks for comments on Flow boards. To call the API, use action=flowthank.

参数:

  • postid - The UUID of the comment for which to send thanks (required)
  • token - Edit token. You can get one of these through prop=info. (required)

例如:

 api.php?action=flowthank&postid=abc123&token=%2B\

错误与警告

代码 信息
invalidrecipient 您不能感谢您自己

参见