Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to encourage non-anonymous editing on MediaWiki?

Tags:

wiki

mediawiki

Problem

At work we have a department wiki (running Mediawiki). Unfortunately several persons edit without logging in, and that makes it very difficult to track down editors to ask questions about the content.

There are two strategies to improve this

  • encourage logged in editing
  • discourage anonymous editing.

Encouraging

For this part, any tips are welcome. But of course there is always risks involved in rewarding behaviours.

Discourage

I know that this must be kept low or else it will discourage any editing. But something just slightly annoying would be nice to have.

[update] I know it is possible to just disallow anonymous editing, but that will put a high barrier to any first time contribution (especially for people outside our department!), so I do not think that is an option. [/update]

[update2] Using LDAP or Active Directory does not solve the problem since the wiki is also accessible and used by external contractors. [/update2]

[update3] I am no longer working for this company. That does not mean that I completely have lost interest in this question, but from my current interest point the most valuable part is the "Did you forget to log in?" part below, and I will accept answers based on this part of the question. [/update3]

Confirmation

One thought was to have an additional confirmation step for anonymous users - "Are you really sure you want to submit this anonymously?", although with such a question there is a risk that people will give up or resist editing. However, if that question is re-phrased in a more diplomatic way as "Did you forget to log in?" I think it will appear as much more acceptable. And besides that will also capture those situations where the author did in fact forget to log in, but actually would want to have his/her contributions credited his/her user. This last point is by itself a good enough reason for wanting it.

Is this possible?

Delay

Another thought for something to be slightly annoying is to add an extra forced delay after "save page" displaying something like "If you had logged in you would not have to wait x seconds". Selecting a right x is difficult because if it is to high it will be a barrier and if it too low might not make any difference. But then I started thinking, what about starting at zero and then add one second delay for each anonymous edit by a given IP address in a given time frame? That way there will be no barrier for starting to use the wiki, and by the time the delay is getting significant the user has already contributed a lot so I think the outcome is much more likely to be that the editor eventually creates a user rather than giving up. This assumes IP addresses are rather static, but that is very typically is the case in a business network.

Is this possible?

like image 876
hlovdal Avatar asked Dec 19 '08 14:12

hlovdal


4 Answers

You can Turn off Anonymous Editing in Mediawiki like so:

  • Edit LocalSettings.php and add the following setting:

    $wgDisableAnonEdit = true;
    
  • Edit includes/SkinTemplate.php, find $fname-edit and change the code to look like this (i.e., basically wrap the following code between the wfProfileIn() and wfProfileOut() functions):

    wfProfileIn( "$fname-edit" );
    global $wgDisableAnonEdit;
    if ( $wgUser->mId || !$wgDisableAnonEdit) {
    // Leave this as is
    }
    wfProfileOut( "$fname-edit" );

Next, you may want to disable the [Edit] links on sections. To do this, open includes/Skin.php and search for editsection. You will see something like:

if (!$wgUser->getOption( 'editsection' ) ) {

Change that to:

global $wgDisableAnonEdit;
if (!$wgUser->getOption( 'editsection' ) || !$wgDisableAnonEdit ) {

Section editing is now blocked for anonymous users.

like image 160
George Stocker Avatar answered Nov 04 '22 11:11

George Stocker


Forbid anonymous editing and let people log in using their domain logins (LDAP). Often the threshold is the registering of a new user and making up username and password and such.

like image 32
PEZ Avatar answered Nov 04 '22 10:11

PEZ


I think you should discourage anonymous edits by forbidding them - it's an internal wiki, after all.

The flipside is you must make the login process as easy as possible. Hopefully you can configure the login cookie to have a decent length (like 1 month) so they only need to login once per month.

like image 28
Roddy Avatar answered Nov 04 '22 10:11

Roddy


Play to the people's egos, and add a rep system kind of like here. Just make a widget for the home page that shows the number of edits made by the top 5 users or something. Give the top 1 or 2 users a MVP reward at regular (monthly?) intervals.

like image 29
joshperry Avatar answered Nov 04 '22 11:11

joshperry