MediaWiki: page editing allowed by creator only or with approval
Asked Answered
C

2

6

I'm trying to restraint editing on the Wiki (using MediaWiki) that I'm creating as an internal project for my company.

We would like to be able to let the page creators specify none or one of the two following options:

  • Nobody besides the creator of this page can edit the content of this page
  • Anybody can edit the content of this page, but there must be an approval by the page creator before the changes are visible (whether it'd be by mail, on the wiki directly or something else - does not matter).

If the creator does not specify any of the 2 options, anybody can edit the page, and the changes are immediatly visible (default behaviour).

I've been browsing the net but I did not find an out-of-the-box solution for this. We managed to make some great custom stuff thanks to the edition of the LocalSettings file but not this.

Is there a solution for that functionality?

Comedown answered 16/2, 2011 at 13:10 Comment(2)
(adding this as a comment because this is not a direct answer to your question) you are aware of that fact that this is opposed to the whole purpose of a wiki, i.e. to facilitate low threshold, lean editing? Bearing that in mind, we solve this in a different way: 1. add a tag (using a template) above certain pages tell people who is moderating it and what the instructions are for editing the page (e.g. typos are OK to fix) and 2. encouraging the authors to watch the page and receive emails when they are changed. Also ask yourself - what happens when the author is away?Dongola
i have exactly the same problem !Spearhead
E
2

I don't know of an extension that would make this easy.

What I think you could do would be to take an extension like Flagged Revs or Approved Revs and make it so that instead of using groups as the determiner of approval status, it uses username. This might not be too difficult. Does this make sense?

Eutrophic answered 16/2, 2011 at 16:49 Comment(0)
S
0

I had the same problem as you and now i fixed it, here is the solution:

I am using http://www.mediawiki.org/wiki/Extension%3aApproved_Revs for article protection but it didn't fulfil my need it allowed the user to change the currently approved revision of the article and so the change was immediately reflected on the main page so I hacked it a bit, basically you need only one change

go to ApprovedRevs/ApprovedRevs.hooks.php

and find the following code:

static public function setLatestAsApproved( &$article , &$user, $text,
        $summary, $flags, $unused1, $unused2, &$flags, $revision,
        &$status, $baseRevId ) {

this is a function declaration just after it add the following code:

return false;

and it will work the way you wanted it to be i.e (the change you did will not be reflected until you approve it)

Spearhead answered 10/6, 2011 at 13:28 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.