Fixed uneven column color below header
[moodle.git] / admin / settings / security.php
CommitLineData
11b749ca 1<?php
1ea1bcb3 2
a559f630 3if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
1ea1bcb3 4
5035228f 5 // "ip blocker" settingpage
6 $temp = new admin_settingpage('ipblocker', get_string('ipblocker', 'admin'));
7 $temp->add(new admin_setting_configcheckbox('allowbeforeblock', get_string('allowbeforeblock', 'admin'), get_string('allowbeforeblockdesc', 'admin'), 0));
8 $temp->add(new admin_setting_configiplist('allowedip', get_string('allowediplist', 'admin'),
fe6b274c 9 get_string('ipblockersyntax', 'admin'), ''));
5035228f 10 $temp->add(new admin_setting_configiplist('blockedip', get_string('blockediplist', 'admin'),
fe6b274c 11 get_string('ipblockersyntax', 'admin'), ''));
5035228f 12 $ADMIN->add('security', $temp);
24350e06 13
220a90c5 14 // "sitepolicies" settingpage
15 $temp = new admin_settingpage('sitepolicies', get_string('sitepolicies', 'admin'));
16 $temp->add(new admin_setting_configcheckbox('protectusernames', get_string('protectusernames', 'admin'), get_string('configprotectusernames', 'admin'), 1));
17 $temp->add(new admin_setting_configcheckbox('forcelogin', get_string('forcelogin', 'admin'), get_string('configforcelogin', 'admin'), 0));
18 $temp->add(new admin_setting_configcheckbox('forceloginforprofiles', get_string('forceloginforprofiles', 'admin'), get_string('configforceloginforprofiles', 'admin'), 1));
19 $temp->add(new admin_setting_configcheckbox('opentogoogle', get_string('opentogoogle', 'admin'), get_string('configopentogoogle', 'admin'), 0));
4f0c2d00
PS
20 $temp->add(new admin_setting_pickroles('profileroles',
21 get_string('profileroles','admin'),
22 get_string('configprofileroles', 'admin'),
23 array('student', 'teacher', 'editingteacher')));
ea1780ad 24
220a90c5 25 $max_upload_choices = get_max_upload_sizes();
eab8ed9f 26 // maxbytes set to 0 will allow the maximum server limit for uploads
220a90c5 27 $max_upload_choices[0] = get_string('serverlimit', 'admin');
28 $temp->add(new admin_setting_configselect('maxbytes', get_string('maxbytes', 'admin'), get_string('configmaxbytes', 'admin'), 0, $max_upload_choices));
ea1780ad
DC
29 // 100MB
30 $defaultuserquota = 104857600;
6bdfef5d 31 $params = new stdClass();
ea1780ad
DC
32 $params->bytes = $defaultuserquota;
33 $params->displaysize = display_size($defaultuserquota);
34 $temp->add(new admin_setting_configtext('userquota', get_string('userquota', 'admin'), get_string('configuserquota', 'admin', $params), $defaultuserquota));
220a90c5 35
39668e9b
PS
36 $item = new admin_setting_configcheckbox('enablehtmlpurifier', get_string('enablehtmlpurifier', 'admin'), get_string('configenablehtmlpurifier', 'admin'), 1);
37 $item->set_updatedcallback('reset_text_filters_cache');
38 $temp->add($item);
220a90c5 39 $temp->add(new admin_setting_configcheckbox('allowobjectembed', get_string('allowobjectembed', 'admin'), get_string('configallowobjectembed', 'admin'), 0));
40 $temp->add(new admin_setting_configcheckbox('enabletrusttext', get_string('enabletrusttext', 'admin'), get_string('configenabletrusttext', 'admin'), 0));
41 $temp->add(new admin_setting_configselect('maxeditingtime', get_string('maxeditingtime','admin'), get_string('configmaxeditingtime','admin'), 1800,
42 array(60 => get_string('numminutes', '', 1),
43 300 => get_string('numminutes', '', 5),
44 900 => get_string('numminutes', '', 15),
45 1800 => get_string('numminutes', '', 30),
46 2700 => get_string('numminutes', '', 45),
47 3600 => get_string('numminutes', '', 60))));
48 $temp->add(new admin_setting_configselect('fullnamedisplay', get_string('fullnamedisplay', 'admin'), get_string('configfullnamedisplay', 'admin'),
cdfedbd2 49 'language', array('language' => get_string('language'),
220a90c5 50 'firstname lastname' => get_string('firstname').' + '.get_string('lastname'),
51 'lastname firstname' => get_string('lastname').' + '.get_string('firstname'),
52 'firstname' => get_string('firstname'))));
53 $temp->add(new admin_setting_configcheckbox('extendedusernamechars', get_string('extendedusernamechars', 'admin'), get_string('configextendedusernamechars', 'admin'), 0));
54 $temp->add(new admin_setting_configtext('sitepolicy', get_string('sitepolicy', 'admin'), get_string('configsitepolicy', 'admin'), '', PARAM_RAW));
6e155d1c 55 $temp->add(new admin_setting_configcheckbox('usetags', get_string('usetags','admin'),get_string('configusetags', 'admin'),'1'));
419d5c6e 56 $temp->add(new admin_setting_configcheckbox('keeptagnamecase', get_string('keeptagnamecase','admin'),get_string('configkeeptagnamecase', 'admin'),'1'));
35f0660a 57
58 $temp->add(new admin_setting_configcheckbox('profilesforenrolledusersonly', get_string('profilesforenrolledusersonly','admin'),get_string('configprofilesforenrolledusersonly', 'admin'),'1'));
59
220a90c5 60 $temp->add(new admin_setting_configcheckbox('cronclionly', get_string('cronclionly', 'admin'), get_string('configcronclionly', 'admin'), 0));
61 $temp->add(new admin_setting_configpasswordunmask('cronremotepassword', get_string('cronremotepassword', 'admin'), get_string('configcronremotepassword', 'admin'), ''));
62
4c1ba3ff 63 $temp->add(new admin_setting_configcheckbox('passwordpolicy', get_string('passwordpolicy', 'admin'), get_string('configpasswordpolicy', 'admin'), 1));
220a90c5 64 $temp->add(new admin_setting_configtext('minpasswordlength', get_string('minpasswordlength', 'admin'), get_string('configminpasswordlength', 'admin'), 8, PARAM_INT));
65 $temp->add(new admin_setting_configtext('minpassworddigits', get_string('minpassworddigits', 'admin'), get_string('configminpassworddigits', 'admin'), 1, PARAM_INT));
66 $temp->add(new admin_setting_configtext('minpasswordlower', get_string('minpasswordlower', 'admin'), get_string('configminpasswordlower', 'admin'), 1, PARAM_INT));
67 $temp->add(new admin_setting_configtext('minpasswordupper', get_string('minpasswordupper', 'admin'), get_string('configminpasswordupper', 'admin'), 1, PARAM_INT));
68 $temp->add(new admin_setting_configtext('minpasswordnonalphanum', get_string('minpasswordnonalphanum', 'admin'), get_string('configminpasswordnonalphanum', 'admin'), 1, PARAM_INT));
b3a3a552 69 $temp->add(new admin_setting_configtext('maxconsecutiveidentchars', get_string('maxconsecutiveidentchars', 'admin'), get_string('configmaxconsecutiveidentchars', 'admin'), 0, PARAM_INT));
df997f84 70 $temp->add(new admin_setting_configcheckbox('groupenrolmentkeypolicy', get_string('groupenrolmentkeypolicy', 'admin'), get_string('groupenrolmentkeypolicy_desc', 'admin'), 1));
220a90c5 71 $temp->add(new admin_setting_configcheckbox('disableuserimages', get_string('disableuserimages', 'admin'), get_string('configdisableuserimages', 'admin'), 0));
64000c47 72 $temp->add(new admin_setting_configcheckbox('emailchangeconfirmation', get_string('emailchangeconfirmation', 'admin'), get_string('configemailchangeconfirmation', 'admin'), 1));
220a90c5 73 $ADMIN->add('security', $temp);
74
75
76
77
78 // "httpsecurity" settingpage
79 $temp = new admin_settingpage('httpsecurity', get_string('httpsecurity', 'admin'));
80 $temp->add(new admin_setting_configcheckbox('loginhttps', get_string('loginhttps', 'admin'), get_string('configloginhttps', 'admin'), 0));
4ea8df21 81 $temp->add(new admin_setting_configcheckbox('cookiesecure', get_string('cookiesecure', 'admin'), get_string('configcookiesecure', 'admin'), 0));
82 $temp->add(new admin_setting_configcheckbox('cookiehttponly', get_string('cookiehttponly', 'admin'), get_string('configcookiehttponly', 'admin'), 0));
b5bbeaf0 83 $temp->add(new admin_setting_configtext('excludeoldflashclients', get_string('excludeoldflashclients', 'admin'), get_string('configexcludeoldflashclients', 'admin'), '10.0.12', PARAM_TEXT));
220a90c5 84 $ADMIN->add('security', $temp);
85
86
87 // "modulesecurity" settingpage
88 $temp = new admin_settingpage('modulesecurity', get_string('modulesecurity', 'admin'));
8fed14f4 89 $temp->add(new admin_setting_configselect('restrictmodulesfor', get_string('restrictmodulesfor', 'admin'), get_string('configrestrictmodulesfor', 'admin'), 'none', array('none' => get_string('nocourses'),
ea1780ad 90 'all' => get_string('fulllistofcourses'),
8fed14f4 91 'requested' => get_string('requestedcourses'))));
220a90c5 92 $temp->add(new admin_setting_configcheckbox('restrictbydefault', get_string('restrictbydefault', 'admin'), get_string('configrestrictbydefault', 'admin'), 0));
823e64a7 93 if (!$options = $DB->get_records('modules')) {
220a90c5 94 $options = array();
95 }
96 $options2 = array();
97 foreach ($options as $option) {
98 $options2[$option->id] = $option->name;
99 }
100 $temp->add(new admin_setting_configmultiselect('defaultallowedmodules', get_string('defaultallowedmodules', 'admin'), get_string('configdefaultallowedmodules', 'admin'), array(), $options2));
101 $ADMIN->add('security', $temp);
102
103
104
105 // "notifications" settingpage
106 $temp = new admin_settingpage('notifications', get_string('notifications', 'admin'));
107 $temp->add(new admin_setting_configselect('displayloginfailures', get_string('displayloginfailures', 'admin'), get_string('configdisplayloginfailures', 'admin'), '', array('' => get_string('nobody'),
108 'admin' => get_string('administrators'),
109 'teacher' => get_string('administratorsandteachers'),
110 'everybody' => get_string('everybody'))));
4413941f 111 $temp->add(new admin_setting_users_with_capability('notifyloginfailures', get_string('notifyloginfailures', 'admin'), get_string('confignotifyloginfailures', 'admin'), array(), 'moodle/site:config'));
ccbdfdc7 112 $options = array();
220a90c5 113 for ($i = 1; $i <= 100; $i++) {
114 $options[$i] = $i;
115 }
116 $temp->add(new admin_setting_configselect('notifyloginthreshold', get_string('notifyloginthreshold', 'admin'), get_string('confignotifyloginthreshold', 'admin'), '10', $options));
117 $ADMIN->add('security', $temp);
ccbdfdc7 118
119
120
ccbdfdc7 121
122
123
220a90c5 124 // "antivirus" settingpage
125 $temp = new admin_settingpage('antivirus', get_string('antivirus', 'admin'));
126 $temp->add(new admin_setting_configcheckbox('runclamonupload', get_string('runclamavonupload', 'admin'), get_string('configrunclamavonupload', 'admin'), 0));
127 $temp->add(new admin_setting_configexecutable('pathtoclam', get_string('pathtoclam', 'admin'), get_string('configpathtoclam', 'admin'), ''));
128 $temp->add(new admin_setting_configdirectory('quarantinedir', get_string('quarantinedir', 'admin'), get_string('configquarantinedir', 'admin'), ''));
129 $temp->add(new admin_setting_configselect('clamfailureonupload', get_string('clamfailureonupload', 'admin'), get_string('configclamfailureonupload', 'admin'), 'donothing', array('donothing' => get_string('configclamdonothing', 'admin'),
130 'actlikevirus' => get_string('configclamactlikevirus', 'admin'))));
131 $ADMIN->add('security', $temp);
1ea1bcb3 132
a559f630 133} // end of speedup