MediaWiki: редактирование страницы разрешено только создателем или с одобрения

Я пытаюсь ограничить редактирование вики (используя MediaWiki), которую я создаю как внутренний проект для моей компании.

Мы хотели бы, чтобы создатели страниц могли указать ни один из двух следующих параметров:

  • Никто, кроме создателя этой страницы, не может редактировать содержимое этой страницы.
  • Любой может редактировать содержимое этой страницы, но должно быть одобрено создателем страницы, прежде чем изменения станут видимыми (будь то по почте, непосредственно на вики или что-то еще - не имеет значения).

Если создатель не укажет ни одну из двух опций, любой может редактировать страницу, и изменения будут немедленно видны (поведение по умолчанию).

Я просматривал сеть, но я не нашел готового решения для этого. Нам удалось сделать несколько отличных пользовательских вещей благодаря редакции файла LocalSettings, но не этой.

Есть ли решение для этой функции?


person Nils    schedule 16.02.2011    source источник
comment
(добавляя это как комментарий, потому что это не прямой ответ на ваш вопрос) вы осознаете тот факт, что это противоречит всей цели вики, то есть способствовать низкому порогу, бережливому редактированию ? Имея это в виду, мы решаем это по-другому: 1. добавить тег (используя шаблон) над определенными страницами, сообщить людям, которые модерируют его, и каковы инструкции по редактированию страницы (например, опечатки можно исправить) и 2. поощрение авторов к просмотру страницы и получению электронных писем, когда они будут изменены. Также спросите себя — что происходит, когда автора нет дома?   -  person Reinstate Monica - Goodbye SE    schedule 17.02.2011
comment
У меня точно такая же проблема !   -  person Shaheer    schedule 10.06.2011


Ответы (2)


Я не знаю расширения, которое упростило бы это.

Я думаю, вы могли бы использовать расширение, такое как Flagged Revs или Утвержденные версии и сделайте так, чтобы вместо использования групп в качестве определения статуса утверждения использовалось имя пользователя. Это может быть не слишком сложно. Имеет ли это смысл?

person Adrian Archer    schedule 16.02.2011

У меня была та же проблема, что и у вас, и теперь я ее исправил, вот решение:

Я использую http://www.mediawiki.org/wiki/Extension%3aApproved_Revs для защита статьи, но она не удовлетворила мою потребность, она позволила пользователю изменить текущую утвержденную версию статьи, и поэтому изменение было немедленно отражено на главной странице, поэтому я немного взломал ее, в основном вам нужно только одно изменение

перейдите в ApprovedRevs/ApprovedRevs.hooks.php

и найдите следующий код:

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

это объявление функции сразу после добавления следующего кода:

return false;

и это будет работать так, как вы хотели, т.е. (изменение, которое вы сделали, не будет отражено, пока вы его не одобрите)

person Shaheer    schedule 10.06.2011