Extension:Thanks

From MediaWiki.org
Jump to: navigation, search
Translate this page; This page contains changes which are not marked for translation.

Other languages:
català • ‎Deutsch • ‎English • ‎español • ‎suomi • ‎italiano • ‎日本語 • ‎한국어 • ‎polski • ‎português • ‎português do Brasil • ‎sicilianu • ‎中文
MediaWiki extensions manualManual:Extensions
Crystal Clear action run.svg
Thanks

Release status:Extension status stable

History-Thank-Link-Mockup1.png
ImplementationTemplate:Extension#type User interface
DescriptionTemplate:Extension#description Lets users thank other users for individual edits etc.
Author(s)Template:Extension#username
Latest versionTemplate:Extension#version 1.2.0 (Continuous updates)
Compatibility policyCompatibility#mediawiki_extensions release branches
MediaWikiTemplate:Extension#mediawiki 1.27+ . 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).
PHPTemplate:Extension#php 5.4+
Database changesTemplate:Extension#needs-updatephp No
LicenseTemplate:Extension#license MIT License
Download
ParametersTemplate:Extension#parameters
  • $wgThanksSendToBots
  • $wgThanksLogging
  • $wgThanksConfirmationRequired
  • $wgThanksLogTypeWhitelist
Hooks usedTemplate:Extension#hook
HistoryRevisionToolsManual:Hooks/HistoryRevisionTools
DiffRevisionToolsManual:Hooks/DiffRevisionTools
PageHistoryBeforeListManual:Hooks/PageHistoryBeforeList
DiffViewHeaderManual:Hooks/DiffViewHeader
BeforeCreateEchoEventManual:Hooks/BeforeCreateEchoEvent
EchoGetDefaultNotifiedUsers
LocalUserCreatedManual:Hooks/LocalUserCreated
BeforeSpecialMobileDiffDisplay
GetLogTypesOnUserManual:Hooks/GetLogTypesOnUser
BeforePageDisplayManual:Hooks/BeforePageDisplay
ResourceLoaderTestModulesManual:Hooks/ResourceLoaderTestModules
ApiMain::moduleManager
EchoGetBundleRulesManual:Hooks/EchoGetBundleRules
LogEventsListLineEndingManual:Hooks/LogEventsListLineEnding

Translate the Thanks extension if it is available at translatewiki.net

Check usage and version matrix.
Vagrant roleMediaWiki-Vagrant#Using roles echo

IssuesPhabricator

Open tasks · Report a bug

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.

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…

Installation[edit]

Thanks requires the Echo extension be installed as a prerequisite.
  • Download and place the file(s) in a directory called Thanks in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php:
    wfLoadExtension( 'Thanks' );
    
  • If necessary configure at your convenience
  • Go to the History action of a page to see the new "Thank" interface.
  • YesY Done - Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

To users running MediaWiki 1.26 or earlier:

The instructions above describe the new way of installing this extension using wfLoadExtension() If you need to install this extension on these earlier versions (MediaWiki 1.26 and earlier), instead of wfLoadExtension( 'Thanks' );, you need to use:

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

Configuration[edit]

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"
];

Usage[edit]

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[edit]

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 Documentation[edit]

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

Parameters:

  • 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)

Example:

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

Flow Thanks[edit]

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

Parameters:

  • 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)

Example:

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

Errors and Warnings[edit]

Code Info
invalidrecipient You cannot thank yourself

See also[edit]


Log actionsManual:Log actions Events: BlockingManual:Block and unblockImportingManual:Importing revisionsMerging historiesManual:Merging historiesPage deletionManual:Page deletionPage movingManual:Page movingPage restorationManual:Page restorationPatrollingManual:PatrollingProtectionManual:ProtectionRenaming a userExtension:RenameuserRevisionDeleteManual:RevisionDeleteThankingExtension:ThanksUploadingManual:UploadingUser creationManual:User creationUser rights managementManual:User rightsMerging usersManual:Merging users

Settings: $wgLogTypesManual:$wgLogTypes$wgLogActionsManual:$wgLogActions$wgLogNamesManual:$wgLogNames$wgLogHeadersManual:$wgLogHeaders$wgLogActionsHandlersManual:$wgLogActionsHandlers$wgLogRestrictionsManual:$wgLogRestrictions$wgFilterLogTypesManual:$wgFilterLogTypes$wgActionFilteredLogsManual:$wgActionFilteredLogs

Miscellaneous: Logging to Special:LogManual:Logging to Special:LogAPIAPI:Logeventslogging tableManual:Logging tableNull revisionManual:Null revision