---+ Package =TWiki::UI::Register=

User registration handling.


%TOC%

---++ StaticMethod *register_cgi* <tt>($session)</tt>

=register= command handler.
This method is designed to be
invoked via the =UI::run= method.



---++ StaticMethod *bulkRegister* <tt>($session)</tt>

  Called by ManageCgiScript::bulkRegister (requires authentication) with topic = the page with the entries on it.



---++ StaticMethod *registerAndNext* <tt>($session)</tt>

This is called when action = register or action = ""

It calls register and either Verify or Finish.

Hopefully we will get workflow integrated and rewrite this to be table driven



---++ StaticMethod *register* <tt>($session)</tt>

This is called through: TWikiRegistration -> RegisterCgiScript -> here



---++ StaticMethod *resetPassword* <tt>($session)</tt>

Generates a password. Mails it to them and asks them to change it. Entry
point intended to be called from UI::run



---++ StaticMethod *changePassword* <tt>($session)</tt>

Change the user's password and/or email. Details of the user and password
are passed in CGI parameters.

   1 Checks required fields have values
   2 get wikiName and userName from getUserByEitherLoginOrWikiName(username)
   3 check passwords match each other, and that the password is correct, otherwise 'wrongpassword'
   4 TWiki::User::updateUserPassword
   5 'oopschangepasswd'

The NoPasswdUser case is not handled.

An admin user can change other user's passwords.



---++ StaticMethod *verifyEmailAddress* <tt>($session)</tt>

This is called: on receipt of the activation password -> RegisterCgiScript -> here
   1 calls _loadPendingRegistration(activation password)
   2 throws oops if appropriate
   3 calls emailRegistrationConfirmations
   4 still calls 'oopssendmailerr' if a problem, but this is not done uniformly


