Package TWiki::User
A User object is an internal representation of a user in the real world. The object knows about users having login names, wiki names, personal topics, and email addresses.
Groups are also handled here. A group is really a subclass of a user, in that it is a user with a set of users within it.
The User package also provides methods for managing the passwords of the user.
ClassMethod new ($session,$loginname,$wikiname)
Construct a new user object for the given login name, wiki name.
The wiki name can either be a wiki word or it can be a web- qualified wiki word. If the wiki name is not web qualified, the user is assumed to have their home topic in the $TWiki::cfg{UsersWebName} web.
ObjectMethod wikiName () -> $wikiName
Return the wikiname of the user (without the web!)
ObjectMethod webDotWikiName () -> $webDotWiki
Return the fully qualified wikiname of the user
ObjectMethod login () -> $loginName
Return the login name of the user
ObjectMethod web () -> $webName
Return the registration web of the user
ObjectMethod equals () -> $boolean
Test is this is the same user as another user object
ObjectMethod stringify () -> $string
Generate a string representation of this object, suitable for debugging
ObjectMethod passwordExists () -> $boolean
Checks to see if there is an entry in the password system Return '1' if true, '' if not
ObjectMethod checkPassword ($password) -> $boolean
used to check the user's password
$password
unencrypted password
$success
'1' if success
TODO: need to improve the error mechanism so TWikiAdmins? know what failed
ObjectMethod removePassword () -> $boolean
Used to remove the user and password from the password system. Returns true if success
ObjectMethod changePassword ($user,$oldUserPassword,$newUserPassword) -> $boolean
used to change the user's password $oldUserPassword
unencrypted password $newUserPassword
unencrypted password '1' if success
ObjectMethod addPassword ($newPassword) -> $boolean
creates a password entry
$newUserPassword
unencrypted password '1' if success TODO: need to improve the error mechanism so
TWikiAdmins? know what failed
ObjectMethod resetPassword () -> $newPassword
Reset the users password, returning the new generated password.
ObjectMethod emails () -> @emailAddress
If this is a user, return their email addresses. If it is a group, return the addresses of everyone in the group.
ObjectMethod setEmails ($user,@emails)
Fetch the email address(es) for the given username
ObjectMethod isAdmin () -> $boolean
True if the user is an admin (is a member of the $TWiki::cfg{SuperAdminGroup})
ObjectMethod getGroups () -> @groups
Get a list of user objects for the groups a user is in
ObjectMethod isInList ($list) -> $boolean
Return true we are in the list of user objects passed.
$list is a string representation of a user list.
ObjectMethod isGroup () -> $boolean
Test if this is a group user or not
ObjectMethod groupMembers () -> @members
Return a list of user objects that are members of this group. Should only be called on groups.