Over the past 3 weeks I’ve been working on a new MediaWiki extension that allows creation of on-wiki surveys by admins. It comes with a whole bunch of neat features, and is the most awesome (code wise) extensions I’ve created so far.It’s aptly titled Survey.
Feature overview
- Surveys get displayed to wiki users using a nice pop-up form.
- Surveys can be created and modified via an admin panel (Special:Surveys).
- Surveys can be shown to specific types of users (logged in, anonymous, editor, confirmed, …)
- Surveys can be shown for a specified percentage of users, and only after a certain amount of page views.
- Survey questions can have different types of inputs, of which some allow restricting answers.
- Surveys can be tested by admins via Special:TakeSurvey without them being live on the wiki.
- Summaries of survey submissions can be found on Special:SurveyStats.
- The survey submission data (ie user answers) can be exported via an API.
Requirements
Survey makes use of many new features introduced in MediaWiki 1.17, and therefore requires this version or later. It even makes use of MW 1.18 features, with fallback code for MW 1.17 It also makes use of 5.3 features, these being late static binding and anonymous functions, so it won’t work with PHP 5.2.x and earlier.
Some screenshots
Special:Surveys: the main administration interface for Surveys
Special:EditSurvey: administration interface to create and edit surveys
Example of a survey as it appears to users
Special:SurveyStats: summarizes the submissions for a single survey
Downloads
Some background
I developed the Survey extension as WikiWorks consultant for the IEEE, with some help from Yaron Koren.
What’s next?
There are many many features that can be added to this extension to make it even more awesome. I’d like to get some initial feedback on version 0.1, so the usability issues and bugs that might be there can be ironed out. Please place any feedback you might have on the discussion page. This initial release contains all the features my client needed, so if you want to have new capabilities added and can fund the work, definitely contact me