Как мне создать свою собственную группу в MediaWiki? - PullRequest
38 голосов
/ 20 октября 2008

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

Когда я смотрю на Special: Userrights, я вижу только 3 группы: Боты, Сисопы, Бурейкраты

Я хотел бы создать свои собственные группы, чтобы я мог использовать некоторые расширения, такие как http://www.mediawiki.org/wiki/Extension:Group_Based_Access_Control.

Может кто-нибудь сказать мне, как это делается, или указать мне какую-то документацию?

Ответы [ 5 ]

57 голосов
/ 22 октября 2008

Вы можете добавить разрешения для новых групп в файл LocalSettings.php, и они автоматически появятся на странице Special: UserRights.

Например, я хотел запретить редактирование обычными пользователями, но создать группу «Доверенные», которой разрешено редактировать. Следующий код создает группу «Доверенные», равную группе «Пользователь», за исключением того, что «Доверенные» пользователи могут редактировать, а пользователи «Пользователь» - нет.

$wgGroupPermissions['Trusted'] = $wgGroupPermissions['user'];
$wgGroupPermissions['user'   ]['edit']          = false;
$wgGroupPermissions['Trusted']['edit']          = true;
$wgGroupPermissions['sysop'  ]['edit']          = true;

На странице Special: UserRights теперь можно установить флажок «Доверенные», чтобы сделать пользователей надежными.

6 голосов
/ 03 октября 2013

Вы можете изменить внешний вид имени группы, создав следующие сообщения: (Для группы по имени ниндзя:)

  • MediaWiki: Group-ninja (содержимое: ниндзя)
  • MediaWiki: член группы-ниндзя (содержание: ниндзя)
  • MediaWiki: Grouppage-ninja (содержание: проект: ниндзя)

Это гарантирует, что группа будет называться «ниндзя» по всему интерфейсу, а член будет называться «ниндзя», а обзоры свяжут имя группы с Project: ниндзя.

(источник: http://www.mediawiki.org/wiki/Manual:User_rights#Examples)

2 голосов
/ 29 июня 2010

Здесь вы найдете список разрешений. http://www.mediawiki.org/wiki/Manual:User_rights

1 голос
/ 09 октября 2009

У меня нет репутации, чтобы голосовать за первый ответ (который также можно добавить в файлы инициализации расширений), но когда вы добавляете пользователей в свои группы, вы можете рассмотреть возможность непосредственного редактирования базы данных (т.е. если вам нужно синхронизировать группы вики с внешней информацией). Если вы откроете базу данных "wikidb", таблица "PREFIX_user_groups" * содержит соответствие между идентификаторами пользователей (ug_user) и именами групп (ug_group). Эта таблица в сочетании с информацией об имени таблицы «PREFIX_user» * (имя_пользователя) и идентификационной информацией (идентификатор_пользователя) дает вам всю информацию для добавления и удаления большого количества пользователей из групп.

* Замените "PREFIX" на префикс базы данных, который вы использовали для своей вики.

1 голос
/ 20 октября 2008

Я полагаю, что нашел ответ, мне просто нужно добавить UserGroup и разрешение для массива wgGroupPermissions в файле LocalSettings.php.

$wgGroupPermissions['TomatoUsers']['read']  = true;
$wgGroupPermissions['TomatoUsers']['edit']  = false;
...