Extension:Contribution Scores

From mediawiki.org
MediaWiki extensions manual
Contribution Scores
Release status: stable
Implementation User activity , Special page , Parser function
Description Polls wiki database for highest user contribution volume.
Author(s) Tim Laquatalk
Latest version 1.26.0 (2021-02-08)
MediaWiki 1.33+
Database changes No
License GNU General Public License 2.0 or later
Download
log
Example
$wgContribScoreIgnoreBots, $wgContribScoreIgnoreBlockedUsers, $wgContribScoreIgnoreUsernames, $wgContribScoresUseRealName, $wgContribScoreDisableCache, $wgContribScoreReports
Translate the Contribution Scores extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

The Contribution Scores extension polls the wiki database to locate contributors with the highest contribution volume – it is also in stable use on a high-volume wiki such as translatewiki.net. The extension is intended to add a fun metric for contributors to see how much they are helping out.

The score is defined as (number of unique pages edited) + 2 * square root ((number of edits) - (number of unique pages edited)).

Installation[edit]

  • Download and move the extracted ContributionScores folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ContributionScores
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'ContributionScores' );
    // Exclude Bots from the reporting - Can be omitted.
    $wgContribScoreIgnoreBots = true; 
    // Exclude Blocked Users from the reporting - Can be omitted.
    $wgContribScoreIgnoreBlockedUsers = true;
    // Exclude specific usernames from the reporting - Can be omitted.
    $wgContribScoreIgnoreUsernames = [];
    // Use real user names when available - Can be omitted. Only for MediaWiki 1.19 and later.
    $wgContribScoresUseRealName = true;
    // Set to true to disable cache for parser function and inclusion of table.
    $wgContribScoreDisableCache = false;
    // Use the total edit count to compute the Contribution score.
    $wgContribScoreUseRoughEditCount = false;   
    // Each array defines a report - 7,50 is "past 7 days" and "LIMIT 50" - Can be omitted.
    $wgContribScoreReports = [
        [ 7, 50 ],
        [ 30, 50 ],
        [ 0, 50 ]
    ];
    
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

To users running MediaWiki 1.35 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.35 and earlier), instead of wfLoadExtension( 'ContributionScores' );, you need to use:

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

Contribution score[edit]

The contribution score is computed using the following SQL formula:

page_count+SQRT(rev_count-page_count)*2

Customization[edit]

Appearance[edit]

The following CSS classes are used, but NOT defined - you can define them in your "MediaWiki:Common.css" article:

.contributionscores-wrapper {
}
.contributionscores-title {
    background-color: #aaa;
    margin-bottom: 0px;
    padding-left: .4em;
}
.contributionscores .header {
    background-color: #ccc;
    border-bottom: 1px solid #999;
    font-weight: bold;
}
.contributionscores .odd {
    background-color: #eee;
}
.contributionscores .header td {
    padding-left: .2em;
    padding-right: .2em;
}
.contributionscores .content {
    padding-left: .2em;
    padding-right: .2em;
}

Adding a link to in the sidebar[edit]

Edit MediaWiki:Sidebar and add the line

** Special:Contributionscores|contributionscores

Usage[edit]

Special Page[edit]

You will have a new Special Page titled "Contribution Scores"

Inclusion/Transclusion[edit]

You can include this special page in to other pages using the following wikitext:

{{Special:ContributionScores/<limit>/<days>/<options>}}
10 top contributors from the last 5 days
{{Special:ContributionScores/10/5}}
10 top contributors since the beginning of wiki
{{Special:ContributionScores/10/all}}
15 top contributors from the last 7 days, no tool links
{{Special:ContributionScores/15/7/notools}}
15 top contributors from the last 3 days, not sortable and no tool links
{{Special:ContributionScores/15/3/nosort,notools}}

#cscore Parser Function Examples[edit]

Contribution Score for Tim Laqua

{{#cscore:Tim Laqua|score}}

Changes Made for Tim Laqua

{{#cscore:Tim Laqua|changes}}

Unique Pages Edited for Tim Laqua

{{#cscore:Tim Laqua|pages}}

See also[edit]