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)
5 décembre 2025 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;
} ?>
