Extension:Contribution Scores

From Linux Web Expert

MediaWiki extensions manual
Contribution Scores
Release status: stable
File:ContributionScores.png
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
Quarterly downloads Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin').
Public wikis using Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin').
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

  • <translate> [[<tvar name=2>Special:ExtensionDistributor/ContributionScores</tvar>|Download]] and move the extracted <tvar name=name>ContributionScores</tvar> folder to your <tvar name=ext>extensions/</tvar> directory.</translate>
    <translate> Developers and code contributors should install the extension [[<tvar name=git>Special:MyLanguage/Download from Git</tvar>|from Git]] instead, using:</translate>cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ContributionScores
  • <translate> Add the following code at the bottom of your <tvar name=1>LocalSettings.php </tvar> file:</translate>
    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 ]
    ];
    
  • File:OOjs UI icon check-constructive.svg <translate> Done</translate> – <translate> Navigate to <tvar name=special>Special:Version</tvar> on your wiki to verify that the extension is successfully installed.</translate>

<translate> To users running MediaWiki <tvar name=1>1.35</tvar> or earlier: </translate>

<translate> The instructions above describe the new way of installing this extension using <tvar name=LoadExtension>wfLoadExtension()</tvar>.</translate> <translate> If you need to install this extension on these earlier versions (MediaWiki <tvar name=1>1.35</tvar> and earlier), instead of <tvar name=code>wfLoadExtension( 'ContributionScores' );</tvar>, you need to use:</translate>

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

Contribution score

The contribution score is computed using the following SQL formula:

page_count+SQRT(rev_count-page_count)*2

Customization

Appearance

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 MediaWiki:Sidebar and add the line

** Special:Contributionscores|contributionscores

Usage

Special Page

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

Inclusion/Transclusion

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

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