MailishUsername 1.21.1 (pre-release)

MailishUsername is a MediaWiki extension for login identification by email address. It provides an email address field instead of a username field in account creation and login pages. The actual identifier for the account is a modified form of the email address called a "mailish username". For example:

             Email address  Mailish username
   -----------------------  ------------------------------
            smith@acme.com  Smith-AcmeCom
            Smith@acme.com  Smith AcmeCom
             joe@gmail.com  Joe-GmailCom
            mike@zelea.com  Mike-ZeleaCom
   ThomasvonderElbe@gmx.de  ThomasvonderElbe GmxDe

For details on the form of mailish usernames, see votorola.a.voter.IDPair.appendUsername().

Requirements

This particular release was tested against MediaWiki 1.21.1. If you are running an older version, then look through the previous tagged releases. You might find an exact match.

Otherwise you may need to re-create the files MailishUsercreate.php and MailishUserlogin.php. They are modified copies of the original includes/templates/Usercreate.php and Userlogin.php files. Copy them from your own version of MediaWiki and apply the same or equivalent modifications. Usually that will suffice. Then install and test as described below.

Installation instructions

  1. Copy this subdirectory to the extensions directory of your MediaWiki installation. That will give you a new directory named extensions/MailishUsername with all the same files.

  2. Add the following to your LocalSettings.php configuration file:

    require_once( "$IP/extensions/MailishUsername/Extension.php" );
  3. Transfer the modifications marked 'Mailish' from this modified file to your own installed copy of SpecialUserlogin.php.

  4. Test by creating a new user account in the wiki, then logging out and back in, according to the usage instructions below.

Usage

When creating an account or logging into the wiki, enter your email address in the field provided. The username field no longer appears on the account creation and login forms.

To bypass this facility, enter a username appended by '@wiki' in the email address field. This allows you to create an account or to login under an ordinary, non-mailish username. For example, the username WikiSysop is entered as:

E-mail: WikiSysop@wiki

All accounts created by this bypass technique will have their email addresses initialized to the value of $wgPasswordSender.

Minder API

Property minder is added to the inprop request of the core query module.

An example request is:

http://reluk.ca/mediawiki/api.php?action=query&prop=info&inprop=minder&titles=User:Pipe%2B1138-ZeleaCom&format=xmlfm

When requested, each page item in the response includes a minder item, which normally specifies the username of the minder as resolved from the root page and the preferences of the page user. For example:

   <page pageid='1028' ns='2' title='User:Pipe+1138-ZeleaCom/subpage' ... >
      <minder username='Mike-ZeleaCom'/>
      </page>

But if no minder can be resolved, then a 'fail' message explains the reason:

   <page pageid='1028' ns='2' title='User:Pipe+1138-ZeleaCom/subpage' ... >
      <minder fail='Unable to resolve minder for wiki page User:Pipe+1138-ZeleaCom: Page sets no Minder property'/>
      </page>

Licence

Copyright 2010-2013, Michael Allan.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "MailishUsername Software"), to deal in the MailishUsername Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicence, and/or sell copies of the MailishUsername Software, and to permit persons to whom the MailishUsername Software is furnished to do so, subject to the following conditions:

The preceding copyright notice and this permission notice shall be included in all copies or substantial portions of the MailishUsername Software.

THE MAILISHUSERNAME SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MAILISHUSERNAME SOFTWARE OR THE USE OR OTHER DEALINGS IN THE MAILISHUSERNAME SOFTWARE.