. /** * Settings * * @package factor_role * @author Peter Burnett * @copyright Catalyst IT * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die(); $enabled = new admin_setting_configcheckbox('factor_role/enabled', new lang_string('settings:enablefactor', 'tool_mfa'), new lang_string('settings:enablefactor_help', 'tool_mfa'), 0); $enabled->set_updatedcallback(function () { \tool_mfa\manager::do_factor_action('role', get_config('factor_role', 'enabled') ? 'enable' : 'disable'); }); $settings->add($enabled); $settings->add(new admin_setting_configtext('factor_role/weight', new lang_string('settings:weight', 'tool_mfa'), new lang_string('settings:weight_help', 'tool_mfa'), 100, PARAM_INT)); $choices = ['admin' => get_string('administrator')]; $roles = get_all_roles(); foreach ($roles as $role) { $choices[$role->id] = role_get_name($role); } $settings->add(new admin_setting_configmultiselect('factor_role/roles', new lang_string('settings:roles', 'factor_role'), new lang_string('settings:roles_help', 'factor_role'), ['admin'], $choices));