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 * Self enrolment plugin settings and presets. 19 * 20 * @package enrol_self 21 * @copyright 2010 Petr Skoda {@link http://skodak.org} 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 25 defined('MOODLE_INTERNAL') || die(); 26 27 if ($ADMIN->fulltree) { 28 29 //--- general settings ----------------------------------------------------------------------------------- 30 $settings->add(new admin_setting_heading('enrol_self_settings', '', get_string('pluginname_desc', 'enrol_self'))); 31 32 $settings->add(new admin_setting_configcheckbox('enrol_self/requirepassword', 33 get_string('requirepassword', 'enrol_self'), get_string('requirepassword_desc', 'enrol_self'), 0)); 34 35 $settings->add(new admin_setting_configcheckbox('enrol_self/usepasswordpolicy', 36 get_string('usepasswordpolicy', 'enrol_self'), get_string('usepasswordpolicy_desc', 'enrol_self'), 0)); 37 38 $settings->add(new admin_setting_configcheckbox('enrol_self/showhint', 39 get_string('showhint', 'enrol_self'), get_string('showhint_desc', 'enrol_self'), 0)); 40 41 // Note: let's reuse the ext sync constants and strings here, internally it is very similar, 42 // it describes what should happend when users are not supposed to be enerolled any more. 43 $options = array( 44 ENROL_EXT_REMOVED_KEEP => get_string('extremovedkeep', 'enrol'), 45 ENROL_EXT_REMOVED_SUSPENDNOROLES => get_string('extremovedsuspendnoroles', 'enrol'), 46 ENROL_EXT_REMOVED_UNENROL => get_string('extremovedunenrol', 'enrol'), 47 ); 48 $settings->add(new admin_setting_configselect('enrol_self/expiredaction', get_string('expiredaction', 'enrol_self'), get_string('expiredaction_help', 'enrol_self'), ENROL_EXT_REMOVED_KEEP, $options)); 49 50 $options = array(); 51 for ($i=0; $i<24; $i++) { 52 $options[$i] = $i; 53 } 54 $settings->add(new admin_setting_configselect('enrol_self/expirynotifyhour', get_string('expirynotifyhour', 'core_enrol'), '', 6, $options)); 55 56 //--- enrol instance defaults ---------------------------------------------------------------------------- 57 $settings->add(new admin_setting_heading('enrol_self_defaults', 58 get_string('enrolinstancedefaults', 'admin'), get_string('enrolinstancedefaults_desc', 'admin'))); 59 60 $settings->add(new admin_setting_configcheckbox('enrol_self/defaultenrol', 61 get_string('defaultenrol', 'enrol'), get_string('defaultenrol_desc', 'enrol'), 1)); 62 63 $options = array(ENROL_INSTANCE_ENABLED => get_string('yes'), 64 ENROL_INSTANCE_DISABLED => get_string('no')); 65 $settings->add(new admin_setting_configselect('enrol_self/status', 66 get_string('status', 'enrol_self'), get_string('status_desc', 'enrol_self'), ENROL_INSTANCE_DISABLED, $options)); 67 68 $options = array(1 => get_string('yes'), 0 => get_string('no')); 69 $settings->add(new admin_setting_configselect('enrol_self/newenrols', 70 get_string('newenrols', 'enrol_self'), get_string('newenrols_desc', 'enrol_self'), 1, $options)); 71 72 $options = array(1 => get_string('yes'), 73 0 => get_string('no')); 74 $settings->add(new admin_setting_configselect('enrol_self/groupkey', 75 get_string('groupkey', 'enrol_self'), get_string('groupkey_desc', 'enrol_self'), 0, $options)); 76 77 if (!during_initial_install()) { 78 $options = get_default_enrol_roles(context_system::instance()); 79 $student = get_archetype_roles('student'); 80 $student = reset($student); 81 $settings->add(new admin_setting_configselect('enrol_self/roleid', 82 get_string('defaultrole', 'enrol_self'), 83 get_string('defaultrole_desc', 'enrol_self'), 84 $student->id ?? null, 85 $options)); 86 } 87 88 $settings->add(new admin_setting_configduration('enrol_self/enrolperiod', 89 get_string('enrolperiod', 'enrol_self'), get_string('enrolperiod_desc', 'enrol_self'), 0)); 90 91 $options = array(0 => get_string('no'), 92 1 => get_string('expirynotifyenroller', 'enrol_self'), 93 2 => get_string('expirynotifyall', 'enrol_self')); 94 $settings->add(new admin_setting_configselect('enrol_self/expirynotify', 95 get_string('expirynotify', 'core_enrol'), get_string('expirynotify_help', 'core_enrol'), 0, $options)); 96 97 $settings->add(new admin_setting_configduration('enrol_self/expirythreshold', 98 get_string('expirythreshold', 'core_enrol'), get_string('expirythreshold_help', 'core_enrol'), 86400, 86400)); 99 100 $options = array(0 => get_string('never'), 101 1800 * 3600 * 24 => get_string('numdays', '', 1800), 102 1000 * 3600 * 24 => get_string('numdays', '', 1000), 103 365 * 3600 * 24 => get_string('numdays', '', 365), 104 180 * 3600 * 24 => get_string('numdays', '', 180), 105 150 * 3600 * 24 => get_string('numdays', '', 150), 106 120 * 3600 * 24 => get_string('numdays', '', 120), 107 90 * 3600 * 24 => get_string('numdays', '', 90), 108 60 * 3600 * 24 => get_string('numdays', '', 60), 109 30 * 3600 * 24 => get_string('numdays', '', 30), 110 21 * 3600 * 24 => get_string('numdays', '', 21), 111 14 * 3600 * 24 => get_string('numdays', '', 14), 112 7 * 3600 * 24 => get_string('numdays', '', 7)); 113 $settings->add(new admin_setting_configselect('enrol_self/longtimenosee', 114 get_string('longtimenosee', 'enrol_self'), get_string('longtimenosee_help', 'enrol_self'), 0, $options)); 115 116 $settings->add(new admin_setting_configtext('enrol_self/maxenrolled', 117 get_string('maxenrolled', 'enrol_self'), get_string('maxenrolled_help', 'enrol_self'), 0, PARAM_INT)); 118 119 $settings->add(new admin_setting_configselect('enrol_self/sendcoursewelcomemessage', 120 get_string('sendcoursewelcomemessage', 'enrol_self'), 121 get_string('sendcoursewelcomemessage_help', 'enrol_self'), 122 ENROL_SEND_EMAIL_FROM_COURSE_CONTACT, 123 enrol_send_welcome_email_options())); 124 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body