Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Authentication API

From MoodleDocs

Moodle authentication interface

Authentication API This file describes Moodle interface functions to authentication modules. (This page is incomplete , I'll update it after I have phpdoc commented auth/ldap/lib.php)

Most of functions are from ldap-authentication module and are not implemented (yet?) on other modules. Please feel free to extend other modules to support same features or roll your own module.

Some of new function are still tested and are not documented here yet.

Authentication functions

Basic functions to authenticate users with external db

Mandatory:

auth_user_login ($username, $password)

Authenticate username, password with userdatabase.

Returns: true if the username and password work and false if they don't

Optional:

Following functions are optional , but if present they extends module asability with Moodle.

auth_get_userinfo($username)

Query other userinformation from database.

Returns:

Userinformation in array ( name => value, .... or false in case of error Function honors update-flags so if $CFG->auth_user_(atribute)_updatelocal is present, it will return value anly if flag is true.

COURSE CREATING

auth_iscreator($username)

should user have rights to create courses

Returns: True if user have rights to create cources otherwise false

USER CREATION

Functions that enable usercreation, activation and deactivation from moodle to external database

auth_user_exists ($username)

Checks if given username exist on external db

Returns: true if given usernname exist or false

auth_user_create ($userobject,$plainpass)

Creates new user to external db. User should be created in inactive stage until confirmed by email.

Returns: True on success otherwise false

auth_user_activate ($username)

activate new user after email-address is confirmed

Returns: True on success otherwise false

auth_user_disable ($username) {

deactivate user in external db.

Returns: True on success otherwise false

USER INFORMATION AND SYNCRONIZATION

auth_get_userlist ()

Get list of usernames in external db.

Returns: All usernames in array or false on error.

auth_get_users($filter='*')

Get ALL USEROBJECTS FROM EXTERNAL DB.

Returns: Array of all users as objects from external db