8914bba3d865b9f7b80623bd350c151f189c74ae
[moodle.git] / auth / none / auth.php
1 <?php
3 /**
4  * @author Martin Dougiamas
5  * @license http://www.gnu.org/copyleft/gpl.html GNU Public License
6  * @package moodle multiauth
7  *
8  * Authentication Plugin: No Authentication
9  *
10  * No authentication at all. This method approves everything!
11  *
12  * 2006-08-31  File created.
13  */
15 if (!defined('MOODLE_INTERNAL')) {
16     die('Direct access to this script is forbidden.');    ///  It must be included from a Moodle page
17 }
19 require_once($CFG->libdir.'/authlib.php');
21 /**
22  * Plugin for no authentication.
23  */
24 class auth_plugin_none extends auth_plugin_base {
26     /**
27      * Constructor.
28      */
29     function auth_plugin_none() {
30         $this->authtype = 'none';
31         $this->config = get_config('auth/none');
32     }
34     /**
35      * Returns true if the username and password work or don't exist and false
36      * if the user exists and the password is wrong.
37      *
38      * @param string $username The username
39      * @param string $password The password
40      * @return bool Authentication success or failure.
41      */
42     function user_login ($username, $password) {
43         global $CFG, $DB;
44         if ($user = $DB->get_record('user', array('username'=>$username, 'mnethostid'=>$CFG->mnet_localhost_id))) {
45             return validate_internal_user_password($user, $password);
46         }
47         return true;
48     }
50     /**
51      * Updates the user's password.
52      *
53      * called when the user password is updated.
54      *
55      * @param  object  $user        User table object  (with system magic quotes)
56      * @param  string  $newpassword Plaintext password (with system magic quotes)
57      * @return boolean result
58      *
59      */
60     function user_update_password($user, $newpassword) {
61         $user = get_complete_user_data('id', $user->id);
62         return update_internal_user_password($user, $newpassword);
63     }
65     /**
66      * Returns true if this authentication plugin is 'internal'.
67      *
68      * @return bool
69      */
70     function is_internal() {
71         return true;
72     }
74     /**
75      * Returns true if this authentication plugin can change the user's
76      * password.
77      *
78      * @return bool
79      */
80     function can_change_password() {
81         return true;
82     }
84     /**
85      * Returns the URL for changing the user's pw, or empty if the default can
86      * be used.
87      *
88      * @return string
89      */
90     function change_password_url() {
91         return '';
92     }
94     /**
95      * Returns true if plugin allows resetting of internal password.
96      *
97      * @return bool
98      */
99     function can_reset_password() {
100         return true;
101     }
103     /**
104      * Prints a form for configuring this authentication plugin.
105      *
106      * This function is called from admin/auth.php, and outputs a full page with
107      * a form for configuring this plugin.
108      *
109      * @param array $page An object containing all the data for this page.
110      */
111     function config_form($config, $err, $user_fields) {
112         include "config.html";
113     }
115     /**
116      * Processes and stores configuration data for this authentication plugin.
117      */
118     function process_config($config) {
119         return true;
120     }
124 ?>