upgrade.php 2.47 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.

/**
 * CAS authentication plugin upgrade code
 *
 * @package    auth_cas
 * @copyright  2013 Iñaki Arenaza
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
 */

25
26
defined('MOODLE_INTERNAL') || die();

27
/**
28
 * Function to upgrade auth_cas.
29
30
31
32
 * @param int $oldversion the version we are upgrading from
 * @return bool result
 */
function xmldb_auth_cas_upgrade($oldversion) {
33
    global $CFG, $DB;
34

35
36
37
    // Moodle v2.8.0 release upgrade line.
    // Put any upgrade step following this.

38
39
40
41
42
43
44
45
46
47
48
49
    if ($oldversion < 2014111001) {
        // From now on the default LDAP objectClass setting for AD has been changed, from 'user' to '(samaccounttype=805306368)'.
        if (is_enabled_auth('cas')
                && ($DB->get_field('config_plugins', 'value', array('name' => 'user_type', 'plugin' => 'auth/cas')) === 'ad')
                && ($DB->get_field('config_plugins', 'value', array('name' => 'objectclass', 'plugin' => 'auth/cas')) === '')) {
            // Save the backwards-compatible default setting.
            set_config('objectclass', 'user', 'auth/cas');
        }

        upgrade_plugin_savepoint(true, 2014111001, 'auth', 'cas');
    }

50
51
52
    // Moodle v2.9.0 release upgrade line.
    // Put any upgrade step following this.

53
54
55
    // Moodle v3.0.0 release upgrade line.
    // Put any upgrade step following this.

56
57
58
    // Moodle v3.1.0 release upgrade line.
    // Put any upgrade step following this.

59
60
61
    // Automatically generated Moodle v3.2.0 release upgrade line.
    // Put any upgrade step following this.

62
63
64
65
66
67
    if ($oldversion < 2017020700) {
        // Convert info in config plugins from auth/cas to auth_cas.
        $DB->set_field('config_plugins', 'plugin', 'auth_cas', array('plugin' => 'auth/cas'));
        upgrade_plugin_savepoint(true, 2017020700, 'auth', 'cas');
    }

68
69
    return true;
}