mantisbt:issue:3444
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
mantisbt:issue:3444 [2009/11/24 10:42] – More detailed specs sveyret | mantisbt:issue:3444 [2010/03/05 05:05] (current) – sveyret | ||
---|---|---|---|
Line 127: | Line 127: | ||
The access API is modified to manage the new access system. Instead of quering for levels, one should only test if the access (using the representation string) is allowed to a given user. | The access API is modified to manage the new access system. Instead of quering for levels, one should only test if the access (using the representation string) is allowed to a given user. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
===== Login plugin ===== | ===== Login plugin ===== | ||
Line 133: | Line 140: | ||
A new class is created for the login plugins. Login plugins should simply extend the MantisLogin.class.php which itself extends the MantisPlugin.class.php. This class handles the newly created events: | A new class is created for the login plugins. Login plugins should simply extend the MantisLogin.class.php which itself extends the MantisPlugin.class.php. This class handles the newly created events: | ||
- | * EVENT_LOGIN_AUTHENTICATE (EVENT_TYPE_CHAIN): Each plugin tries to authenticate the user and gives a result. The input/ | + | * EVENT_LOGIN_AUTHENTICATE (EVENT_TYPE_FIRST): Plugins try to authenticate the user. Returns null if user cannot be authenticated or the instance of the User.class otherwise. |
- | * ' | + | * EVENT_LOGIN_AUTHENTICATE_BY_NAME |
- | * ' | + | * EVENT_LOGIN_NEED_FORM (EVENT_TYPE_DEFAULT): |
- | * EVENT_LOGIN_INFO | + | * EVENT_LOGIN_FIELDS (EVENT_TYPE_OUTPUT): |
- | * EVENT_LOGIN_GET_USER (EVENT_TYPE_CHAIN): The parameter is the company_id of the user, given as a string. | + | * EVENT_LOGIN_EXTRA |
- | * EVENT_LOGIN_GET_GROUP (EVENT_TYPE_CHAIN): Same than EVENT_LOGIN_GET_USER, | + | * EVENT_LOGIN_GET_USER (EVENT_TYPE_FIRST): The parameter is the company_id of the user, given as a string. |
+ | * EVENT_LOGIN_GET_GROUP (EVENT_TYPE_FIRST): Same than EVENT_LOGIN_GET_USER, | ||
* EVENT_LOGIN_SEARCH_USERS (EVENT_TYPE_DEFAULT): | * EVENT_LOGIN_SEARCH_USERS (EVENT_TYPE_DEFAULT): | ||
* EVENT_LOGIN_SEARCH_GROUPS (EVENT_TYPE_DEFAULT): | * EVENT_LOGIN_SEARCH_GROUPS (EVENT_TYPE_DEFAULT): | ||
* EVENT_LOGIN_LOGOUT (EVENT_TYPE_EXECUTE): | * EVENT_LOGIN_LOGOUT (EVENT_TYPE_EXECUTE): | ||
+ | * EVENT_LOGIN_LOST_PWD (EVENT_TYPE_FIRST): | ||
The login procedure is the following: | The login procedure is the following: | ||
* First of all, the EVENT_LOGIN_AUTHENTICATE event is sent. | * First of all, the EVENT_LOGIN_AUTHENTICATE event is sent. | ||
- | * For each plugin | + | * The first plugin |
- | * If the input is either UNKNOWN or INFO_REQUIRED, | + | * If the event result is null (no plugin |
- | * After execution | + | * If at least one of the plugin answers true, display a login page (sending an EVENT_LOGIN_INFO event) which will call this procedure again. |
- | * If the login procedure already has username or password information (meaning it already is the second chance, with info provided), then the INFO_REQUIRED | + | * If the login procedure already has username or password information (meaning it already is the second chance, with info provided), then a null result |
* When the user is authenticated, | * When the user is authenticated, | ||
The User.class contains methods to get information about a user: | The User.class contains methods to get information about a user: | ||
- | * getUserName() -> returns the username (internally used name) of the user. | + | * getName() -> returns the real name of the user. |
- | * getRealName() -> returns the real name of the user. | + | |
* getEMail() -> returns the e-mail addresse of the user. | * getEMail() -> returns the e-mail addresse of the user. | ||
+ | * getAvatar() -> returns the avatar for the user. | ||
* isEnabled() -> indicates if the user is enabled. | * isEnabled() -> indicates if the user is enabled. | ||
* update() -> returns an URL to use to update the user data or null if not modifiable. | * update() -> returns an URL to use to update the user data or null if not modifiable. |
mantisbt/issue/3444.1259077328.txt.gz · Last modified: 2010/01/12 06:03 (external edit)