Extension:Contest

From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manual
Crystal Clear action run.png
Contest

Release status: stable

CodeChallengeLogo-301x301.png
Implementation Special page, API, User interface, Ajax
Description Contest extension that allows users to participate in admin defined contest challenges.
Author(s) Jeroen De Dauw
Latest version 0.1 (2011-10-20)
MediaWiki 1.18.0 or higher
PHP 5.2 or above
Database changes Yes
License GNU General Public License 3.0 or later
Download
Hooks used
LoadExtensionSchemaUpdates

UnitTestsList
UserSetEmail
PersonalUrls
GetPreferences
LinkEnd

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

Check usage and version matrix; code metrics

Issues:

Open tasks · Report a bug

Contest is an extension that allows users to participate in contest challenges created by administrators. With a judging interface, judges can discuss and vote on submissions.

Feature overview[edit | edit source]

  • Admin interface for managing contests and their challenges.
  • Landing and signup pages for each contest.
  • Personal contest list and submission interface for each user.
  • Summary pages per contest listing contestants, which can be filtered and sorted.
  • Judging interface that allows for rating and commenting on each participant.
  • All contests, challenges, contestants, comments and votes can be queried and exported via the API.
  • Signup and reminder emails.

Requirements[edit | edit source]

Contest requires:

  • MediaWiki 1.18 or above
  • PHP 5.2 or above
  • MySQL

Download[edit | edit source]

You can find the current version of Contest on the Google Code download page, as well as a list of legacy downloads.

The extension can be retrieved directly from Git [?]:

  • Browse code
  • Some extensions have tags for stable releases.
  • Each branch is associated with a past MediaWiki release. There is also a "master" branch containing the latest alpha version (might require an alpha version of MediaWiki).

Extract the snapshot and place it in the extensions/Contest/ directory of your MediaWiki installation.

If you are familiar with git and have shell access to your server, you can also obtain the extension as follows:

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

Installation[edit | edit source]

Once you have downloaded the code, place the Contest directory within your MediaWiki 'extensions' directory. Then add the following code to your LocalSettings.php file:

# Contest
require_once( "$IP/extensions/Contest/Contest.php" );

The final step is running the MediaWiki setup script update.php, which can be found in the maintenance directory of your MediaWiki install. Via the command line, this is typically done with:

php update.php

Configuration[edit | edit source]

Configuration of Survey is done by assigning to $egContestSettings in your LocalSettings.php file. The options are listed below and their default is set in the Contest settings file. You should NOT modify the settings file, but can have a look at it to get an idea of how to use the settings, in case the below descriptions do not suffice.

Example of how to change a setting:

$egContestSettings['enableTopLink'] = false;

Available settings:

Name Type Default Description
votevalues array of integer range( 0, 5 ) Values that can be voted by judges on a participant
enableTopLink boolean True Enable display of the top link to Special:MyContests
submissionDomains array of string array( 'github.com', 'gitorious.org' ) Domains on which submissions can be placed
reminderJobSize integer 50 Max size of the reminder email jobs (in emails to send)
mailSender string $GLOBALS['wgPasswordSender'] Email address used as sender in signup and reminder emails.
mailSenderName string $GLOBALS['wgPasswordSenderName'] Sender name used for signup and reminder emails.
contestDeletionEnabled boolean true Allow deleting of contests and challenges.

Usage[edit | edit source]

Administrators[edit | edit source]

Admins are people with the contestadmin right, and only they can create, modify and delete contests.

The main entry point for judges is Special:Contests, which is a page that lists all contests. On this page, each contest has edit and deletion links, and on the top of the page, there is a control to add a new contest. Contests are created and modified on Special:EditContest/$name, where $name is the name of the contest. On this page there first are the contest fields, followed by a list of the challenges associated to the contest, together with their fields.

Judges[edit | edit source]

Judges are people with the contestjudge right, and only they can view submission details and rate and comment on them.

The main entry point for judges is Special:Contests, which is a page that lists all contests. From here they can navigate to the contest overview and participants list by clicking the "summary and participants" link for the contest they are interested in. Here they can get an overview of all participants and click on the id of a participant to go to Special:Participant/$id, which shows specific data for that participant, and has rating and commenting controls.

Contestants[edit | edit source]

The flow for contestants, including signup, should be clear just by looking at the interface and following directions there.

Relevant special pages are:

  • Special:ContestWelcome/$name contest overview with challenges, where $name is the contest name.
  • Special:ContestSignup/$name contest signup page, where $name is the contest name. You end up here after picking a challenge on the welcome page.
  • Special:MyContests shows a list of contests you have signed up for, or immediately the details of one if you signed up for only one.

After signup, a link "My contests" will appear in the top menu before the "My watchlist" link. You can disable this link by going to your preferences, and uncheck the "Show a link to My Contests in the user menu." in the "Contests" tab.

Version[edit | edit source]

This is a copy of the release notes file on SVN, which might be more up to date then this page.

Version 0.1[edit | edit source]

2011-10-20

Initial release with these features:

  • Admin interface for managing contests and their challenges.
  • Landing and signup pages for each contest.
  • Personal contest list and submission interface for each user.
  • Summary pages per contest listing contestants, which can be filtered and sorted.
  • Judging interface that allows for rating and commenting on each participant.
  • All contests, challenges, contestants, comments and votes can be queried and exported via the API.
  • Signup and reminder emails.

Internationalization[edit | edit source]

Contest is fully internationalized. Localisation support at translatewiki.net was dropped because it is unlikely this extension will be used again.

Authors[edit | edit source]

Contest has been written by Jeroen De Dauw as Wikimedia Foundation contractor for the Weekend of Code project.

Screenshots[edit | edit source]

See also[edit | edit source]


External links[edit | edit source]