Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
// This file is part of Moodle - http://moodle.org/
3
//
4
// Moodle is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// Moodle is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
16
 
17
/**
18
 * Settings
19
 *
20
 * @package     factor_grace
21
 * @author      Peter Burnett <peterburnett@catalyst-au.net>
22
 * @copyright   Catalyst IT
23
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
24
 */
25
 
26
defined('MOODLE_INTERNAL') || die();
27
 
28
$enabled = new admin_setting_configcheckbox('factor_grace/enabled',
29
    new lang_string('settings:enablefactor', 'tool_mfa'),
30
    new lang_string('settings:enablefactor_help', 'tool_mfa'), 0);
31
$enabled->set_updatedcallback(function () {
32
    \tool_mfa\manager::do_factor_action('grace', get_config('factor_grace', 'enabled') ? 'enable' : 'disable');
33
});
34
$settings->add($enabled);
35
 
36
$settings->add(new admin_setting_configtext('factor_grace/weight',
37
    new lang_string('settings:weight', 'tool_mfa'),
38
    new lang_string('settings:weight_help', 'tool_mfa'), 100, PARAM_INT));
39
 
40
$settings->add(new admin_setting_configcheckbox('factor_grace/forcesetup',
41
    new lang_string('settings:forcesetup', 'factor_grace'),
42
    new lang_string('settings:forcesetup_help', 'factor_grace'), 0));
43
 
44
$settings->add(new admin_setting_configduration('factor_grace/graceperiod',
45
    new lang_string('settings:graceperiod', 'factor_grace'),
46
    new lang_string('settings:graceperiod_help', 'factor_grace'), '604800'));
47
 
48
$gracefactor = \tool_mfa\plugininfo\factor::get_factor('grace');
49
$factors = $gracefactor->get_all_affecting_factors();
50
$gracefactors = [];
51
foreach ($factors as $factor) {
52
    $gracefactors[$factor->name] = $factor->get_display_name();
53
}
54
$settings->add(new admin_setting_configmultiselect('factor_grace/ignorelist',
55
    new lang_string('settings:ignorelist', 'factor_grace'),
56
    new lang_string('settings:ignorelist_help', 'factor_grace'), [], $gracefactors));
57
 
58
$settings->add(new admin_setting_confightmleditor('factor_grace/customwarning',
59
    new lang_string('settings:customwarning', 'factor_grace'),
60
    new lang_string('settings:customwarning_help', 'factor_grace'), '', PARAM_RAW));