Extension:UserAdmin

UserAdmin is a MediaWiki extension which allows administrators to add users, permanently remove spam or unused accounts, change user passwords, edit user details, send reset password or welcome emails and list users with pagination and filter controls. This extension is primarily for administrators of private wikis that require tighter control of user accounts.

Installation
UserAdmin has only been tested with MediaWiki 1.16.

The UserAdmin extension is currently stored at http://github.com. To install it, download the extension files and place them in the  directory. Then add  to your LocalSettings.php file.

Use
UserAdmin adds four special pages: "Add User", "Purge User", "Edit User" and "User Administration". Each special page provides the functionality named; the "User Administration" special page provides a list of users with pagination, filter controls and the ability to mass purge or mass block users.

MediaWiki Version Testing

 * 1.16
 * "Add user" : GO
 * "Edit user" : GO
 * "Purge user" : GO
 * "User Administration" : GO

Version

 * 0.5.0: User admin panel, edit user and add user good to go.
 * 0.9.0: Purge user completed.

Todo

 * Work on delete user proceeds. Mediawiki never designed for actual deletion of anything. Delete user will probably be version specific. May be necessary to put it in a separate extension. May consider using the term "purge" instead of delete to indicate that this is an actual database purge and not a mediawiki "delete" action that is undoable.
 * Needs to work with wgAuth
 * Needs to call hooks when appropriate
 * Bug: When filtering, page nav shows page navigation as if there was no filter applied.
 * Bug: User admin panel shows some users on the test system as being administrator when they are not.
 * Implement mass block
 * Add javascript to allow all/none checkbox to work properly
 * Bug: wgAuth can abort after passwords have been emailed; wgAuth needs password for create by email case

Français
Ajouter ce code à la fin du fichier UserAdmin.i18n.php :

$messages['fr'] = array(       'useradmin' => 'Administration des utilisateurs',        'useradmin-desc' => 'UserAdmin est une extension qui permet aux administrateurs d\'ajouter des utilisateurs, supprimer définitivement des comptes (spam ou inutilisés), modifiers les propriétés des utilisateurs, envoyer des nouveaux mots de passe ou des messages de bienvenue et lister les utilisateurs avec différents tris.',        'adduser' => 'Ajouter un utilisateur',        'adduser_desc' => 'Créer un nouveau compte utilisateur',        'purgeuser' => 'Supprimer un utilisateur',        'purgeuser-desc' => 'Supprimer un compte utilisateur',        'edituser' => 'Modifier utilisateur',        'edituser_desc' => 'Modifier un compte utilisateur',        'massblock' => 'Bloquer des utilisateurs',        'massblock_desc' => 'Bloquer en masse des utilisateurs',

// Champs 'uadm-useridfield' => 'ID', 'uadm-usernamefield' => 'Nom utilisateur', 'uadm-realnamefield' => 'Nom réel', 'uadm-emailfield' => 'Email', 'uadm-createddatefield' => 'Date d\'inscription', 'uadm-usertoucheddatefield' => 'Date de dernier changement', 'uadm-editcountfield' => 'Nombre d\'édition', 'uadm-usertoucheddatehelp' => 'La date de dernier changement sur le site, en incluant les connexion, édition de pages (tout espace de noms), listes de suivi, et changement de préférences.', 'uadm-lasteditdatefield' => 'Date de dernière édition', 'uadm-groupsfield' => 'Groupes effectifs', 'uadm-emailauthdatefield' => 'Email Authenticated Date', 'uadm-reasonfield' => 'Raison', 'uadm-passwordfield' => 'Mot de passe', 'domainfield' => 'Domaine',

// Actions communes 'uadm-previousactionlabel' => 'Précédent', 'uadm-nextactionlabel' => 'Suivant', 'uadm-blockactionlabel' => 'Bloquer', 'uadm-emailpasswordactionlabel' => 'Email Password', 'uadm-applyactionlabel' => 'Appliquer', 'uadm-editactionlabel' => 'Editer', 'uadm-logsactionlabel' => 'Logs', 'uadm-talkactionlabel' => 'Discussion', 'uadm-backactionlabel' => 'Retour', 'uadm-purgeactionlabel' => 'Supprimer', 'uadm-previewactionlabel' => 'Prévisualiser', 'uadm-ipsactionlabel' => 'IPs', 'uadm-contributionsactionlabel' => 'Contributions',

// Libellés communs 'uadm-notlabel' => 'NOT', 'uadm-pendinglabel' => 'Pending', 'uadm-requiredlabel' => '(Requis)', 'uadm-finduserlabel' => 'Trouver un utilisateur', 'uadm-enterusernamelabel' => 'Entrer un nom d\'utilisateur', 'uadm-editgroupslabel' => 'Editer groupes', 'uadm-editpasswordlabel' => 'Editer mot de passe', 'uadm-setpasswordforuserlabel' => 'Changer mot de passe utilisateur', 'uadm-passwordlabel' => 'Mot de passe', 'uadm-verifypasswordlabel' => 'Verifier mot de passe', 'uadm-emailpasswordlabel' => 'Envoyer un mot de passe aléatoire à l\'utilisateur', 'uadm-emailwelcomelabel' => 'Envoyer un message de bienvenue avec mot de passe aléatoire à l\'utilisateur', 'uadm-nochangetopasswordlabel' => 'Pas de modification au mot de passe', 'uadm-subjectlabel' => 'Sujet', 'uadm-bodylabel' => 'Corps', 'uadm-reasonlabel' => 'Raison', // Messages communs 'uadm-returntomsg' => 'Retour à $1', 'uadm-passwordchangesuccessmsg' => 'Le mot de passe pour $1 a été changé.', 'uadm-passwordemailsuccessmsg' => 'Mot de passe pour $1 envoyé à $2.', 'uadm-welcomeemailsuccessmsg' => 'Mail de bienvenue pour $1 envoyé à $2.', 'uadm-newuserreasonmsg' => 'Création de nouvel utilisateur.',

// Errors communes 'uadm-usernameinusemsg' => 'Le nom d\'utilisateur \'$1\' est déjà utilisé.', 'uadm-passworderrormsg' => 'Erreur de mot de passe:', 'uadm-passwordsmustmatchmsg' => 'Les mots de passe ne coïncident pas.', 'uadm-invaliduseridmsg' => 'ID utilisateur invalide.', 'uadm-usernoexistmsg' => 'L\'utilisateur $1 n\'existe pas.', 'uadm-fieldisrequiredmsg' => '$1 est requis.', 'uadm-failedtoloaduserfromidmsg' => 'Echec de la récupération de l\'utilisateur à partir de id=$1.', 'uadm-formsubmissionerrormsg' => 'Erreur dans l\'envoi du formulaire.', 'uadm-invalidusernamemsg' => 'Nom d\'utilisateur invalide.', 'uadm-invalidemailmsg' => 'Adresse email invalide.', 'uadm-invalidpasswordmsg' => 'Mot de passe invalide.', 'uadm-invaliddomainmsg' => 'Domaine invalide', 'uadm-mailerrormsg' => 'Echec du mail: $1', 'uadm-externalupdateerrormsg' => 'External authentication plug-in update failed (wgAuth).', // Messages de log 'uadm-emailwelcomelog' => 'message de bienvenue avec mot de passe aléatoire envoyé à $1', 'uadm-changeduserpasswordlog' => 'mot de passe changé pour $1', 'uadm-changeduseremaillog' => 'email changé pour $1 de $2 à $3', 'uadm-changedusernamelog' => 'nom de l\'utilisateur avec id $1 changé de $2 à $3', 'uadm-changeduserrealnamelog' => 'nom réel de $1 changé de $2 à $3', 'uadm-emailpasswordlog' => 'mot de passe aléatoire envoyé à $1', 'uadm-userspurgedlog' => 'utilisateurs suivants supprimés: $1',

// Panneau d'administration des utilisateurs 'uadm-uappurgeactionlabel' => 'Supprimer', 'uadm-uapnewuseractionlabel' => 'Ajouter utilisateur', 'uadm-filterbylabel' => 'Filtrer par',

// Modification des comptes utilisateurs 'uadm-edituserlabel' => 'Modifier utilisateur', 'uadm-saveuserlabel' => 'Sauvegarder', 'uadm-changestogroupsuccessmsg' => 'Modifications à $1 sauvegardées.', 'uadm-changestousersuccessmsg' => 'Modifications à $1 sauvegardées.', 'uadm-passwordactionlabel' => 'Mot de passe action',

// Ajout d'utilisateurs 'uadm-newusersuccessmsg' => 'Utilisateur $1 créé avec succès.', 'uadm-adduserlabel' => 'Ajouter un utilisateur', 'uadm-hookblocknewusermsg' => 'AbortNewAccount hook blocked account creation: $1', 'uadm-wgauthaddfailmsg' => 'wgAuth addUser failed', 'uadm-createextacctfailmsg' => 'La création de comptes n\'est pas autorisée (wgAuth).',

// Suppression des utilisateurs 'uadm-purgeauserlabel' => 'Supprimer un utilisateur:', 'uadm-confirmpurgelabel' => 'Confirmer la suppression', 'uadm-confirmpurgewarningmsg' => 'AVERTISSEMENT: Cette operation ne peut être annulée! AVERTISSEMENT: TOUTES les pages, historiques, et fichiers téléversés par les utilisateurs suivants seront supprimés définitivement. AVERTISSEMENT: Faites une sauvegarde de la base de données!', 'uadm-nopurgeadminmsg' => 'Supprimer le compte administrateur $1 n\'est pas autorisé.', 'uadm-invalidversionmsg' => 'La page spéciale PurgeUser ne supporte pas cette version de MediaWiki version.', 'uadm-purgesuccessmsg' => 'Toutes les suppressions demandées ont été effectuées.',

// Bloquage des utilisateurs 'uadm-confirmblocklabel' => 'Confirmer le blocage', );