Utilisateur:Copernik
(Ne vous fiez pas à tout ce qui est marqué, je fais de nombreux tests...)
Cet Article est en travaux...
L'article n'est pas terminé, veuillez patienter.
Les dernières modifications apparaitront bientôt.
|
Sommaire
Articles
Créés
- Arbre Généalogique Universel
- Al-Kashi
- Red Tantra
- Galaxie Origine (Portail)
- Opération Paradis Rouge
- Yopik 604
- Galaktiscotheque
- Mllecap
- Opération MARSHAKE
Modifiés
- Oyabun
- Reds T
- Copernik
- Maître Yoda
- Mata Hari
- Chiana
- Galaxie 0
- Accueil (Refonte)
- Galaxie Origine
- Général locius
- Horlbar
- Snake
- Revan82
- Z
- Vladimir Harkonnen
- Khlan
- Thot71
- Calomu
- Wes Trebor
- Gabriel Fore
- Thot
Brouillon
- 1ère Ere Galactique : Histoire Ancienne 0 - 250 ETU
- 2ème Ere Galactique : Histoire Intermédiaire 251 - 750 ETU
- 3ème Ere Galactique : Histoire Contemporaine 751 - 1000 ETU
- Aide:Page Principale
- Projet:Avatars
Portails
Créés
Modifiés
Modèles
Créés
- Modèle:Al-Kashi autres liens
- Modèle:Participant au concours de biographies
- Modèle:Article de Qualité
- Modèle:Galaxie 0 : Origine
- Modèle:Galaxie 1 : Galaxie des Exilés
- Modèle:Galaxie 2 : Espérance
- Modèle:Article en travaux
- Modèle:Galaxie Origine
- Modèle:Tableau Rouge
- Modèle:Tableau Bleu
- Modèle:Liens Accueil
- Modèle:Sommaire Alphabetique
- Modèle:Accueil titre
Modifiés
Cadres
Essais (2)
25 novembre 2024 1 176 2 361 195 Modèle:USER Modèle:PAGES
|
|
<?php
/* NamespacePermissions - MediaWiki extension
* * provides separate permissions for each action (read,edit,create,move) * on articles in custom namespaces for fine access management * * Author: Petr Andreev * * Sample usage: * * $wgExtraNamespaces = array(100 => "Foo", 101 => "Foo_Talk"); * // optional (example): allow registered users to view and edit articles in Foo * $wgGroupPermissions[ 'user' ][ 'ns100_read' ] = true; * $wgGroupPermissions[ 'user' ][ 'ns100_edit' ] = true; * // end of optional * require('extensions/NamespacePermissions.php'); * * Permissions provided: * # ns{$num}_read * # ns{$num}_edit * # ns{$num}_create * # ns{$num}_move * where {$num} - namespace number (e.g. ns100_read, ns101_create) * * Groups provided: * # ns{$title}RW - full access to the namespace {$title} * # ns{$title}RO - read-only access to the namespace {$title} * e.g. nsFoo_talkRW, nsFooRO */
// permissions for autocreated groups should be set now, // before the User object for current user is instantiated namespacePermissionsCreateGroups(); // other stuff should better be done via standard mechanism of running extensions $wgExtensionFunctions[] = "wfNamespacePermissions";
// create groups for each custom namespace function namespacePermissionsCreateGroups() {
global $wgExtraNamespaces, $wgGroupPermissions; foreach ( $wgExtraNamespaces as $num => $title ) { $wgGroupPermissions[ "ns{$title}RW" ][ "ns{$num}_edit" ] = true; $wgGroupPermissions[ "ns{$title}RW" ][ "ns{$num}_read" ] = true; $wgGroupPermissions[ "ns{$title}RW" ][ "ns{$num}_create" ] = true; $wgGroupPermissions[ "ns{$title}RW" ][ "ns{$num}_move" ] = true; $wgGroupPermissions[ "ns{$title}RO" ][ "ns{$num}_read" ] = true; }
}
function wfNamespacePermissions() {
global $wgHooks;
// use the userCan hook to check permissions $wgHooks[ 'userCan' ][] = 'namespacePermissionsCheckNamespace';
}
function namespacePermissionsCheckNamespace( $title, $user, $action, $result ) {
if ( ( $ns = $title->getNamespace() ) >= 100 ) { if ( ! $user->isAllowed("ns{$ns}_{$action}") ) { $result = false; return false; } } return null;
} ?>