MDL-12296:
[moodle-linuxchix.git] / admin / settings / security.php
blob9c91e16d043ceb7461d3dbd6c8b82957f3605294
1 <?php // $Id$
3 if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
6 // "sitepolicies" settingpage
7 $temp = new admin_settingpage('sitepolicies', get_string('sitepolicies', 'admin'));
8 $temp->add(new admin_setting_configcheckbox('protectusernames', get_string('protectusernames', 'admin'), get_string('configprotectusernames', 'admin'), 1));
9 $temp->add(new admin_setting_configcheckbox('forcelogin', get_string('forcelogin', 'admin'), get_string('configforcelogin', 'admin'), 0));
10 $temp->add(new admin_setting_configcheckbox('forceloginforprofiles', get_string('forceloginforprofiles', 'admin'), get_string('configforceloginforprofiles', 'admin'), 1));
11 $temp->add(new admin_setting_configcheckbox('opentogoogle', get_string('opentogoogle', 'admin'), get_string('configopentogoogle', 'admin'), 0));
13 $max_upload_choices = get_max_upload_sizes();
14 // maxbytes set to 0 will allow the maxium server lmit for uploads
15 $max_upload_choices[0] = get_string('serverlimit', 'admin');
16 $temp->add(new admin_setting_configselect('maxbytes', get_string('maxbytes', 'admin'), get_string('configmaxbytes', 'admin'), 0, $max_upload_choices));
18 $temp->add(new admin_setting_configcheckbox('messaging', get_string('messaging', 'admin'), get_string('configmessaging','admin'), 1));
19 $temp->add(new admin_setting_configcheckbox('allowobjectembed', get_string('allowobjectembed', 'admin'), get_string('configallowobjectembed', 'admin'), 0));
20 $temp->add(new admin_setting_configcheckbox('enabletrusttext', get_string('enabletrusttext', 'admin'), get_string('configenabletrusttext', 'admin'), 0));
21 $temp->add(new admin_setting_configselect('maxeditingtime', get_string('maxeditingtime','admin'), get_string('configmaxeditingtime','admin'), 1800,
22 array(60 => get_string('numminutes', '', 1),
23 300 => get_string('numminutes', '', 5),
24 900 => get_string('numminutes', '', 15),
25 1800 => get_string('numminutes', '', 30),
26 2700 => get_string('numminutes', '', 45),
27 3600 => get_string('numminutes', '', 60))));
28 $temp->add(new admin_setting_configselect('fullnamedisplay', get_string('fullnamedisplay', 'admin'), get_string('configfullnamedisplay', 'admin'),
29 'firstname lastname', array('language' => get_string('language'),
30 'firstname lastname' => get_string('firstname') . ' + ' . get_string('lastname'),
31 'lastname firstname' => get_string('lastname') . ' + ' . get_string('firstname'),
32 'firstname' => get_string('firstname'))));
33 $temp->add(new admin_setting_configcheckbox('extendedusernamechars', get_string('extendedusernamechars', 'admin'), get_string('configextendedusernamechars', 'admin'), 0));
34 $temp->add(new admin_setting_configtext('sitepolicy', get_string('sitepolicy', 'admin'), get_string('configsitepolicy', 'admin'), '', PARAM_RAW));
35 $temp->add(new admin_setting_configselect('bloglevel', get_string('bloglevel', 'admin'), get_string('configbloglevel', 'admin'), 4, array(5 => get_string('worldblogs','blog'),
36 4 => get_string('siteblogs','blog'),
37 3 => get_string('courseblogs','blog'),
38 2 => get_string('groupblogs','blog'),
39 1 => get_string('personalblogs','blog'),
40 0 => get_string('disableblogs','blog'))));
41 $temp->add(new admin_setting_configcheckbox('usetags', get_string('usetags','admin'),get_string('configusetags', 'admin'),'1'));
42 $temp->add(new admin_setting_configcheckbox('keeptagnamecase', get_string('keeptagnamecase','admin'),get_string('configkeeptagnamecase', 'admin'),'0'));
43 $temp->add(new admin_setting_configcheckbox('cronclionly', get_string('cronclionly', 'admin'), get_string('configcronclionly', 'admin'), 0));
44 $temp->add(new admin_setting_configpasswordunmask('cronremotepassword', get_string('cronremotepassword', 'admin'), get_string('configcronremotepassword', 'admin'), '', PARAM_RAW));
46 $temp->add(new admin_setting_configcheckbox('passwordpolicy', get_string('passwordpolicy', 'admin'), get_string('configpasswordpolicy', 'admin'), 0));
47 $temp->add(new admin_setting_configtext('minpasswordlength', get_string('minpasswordlength', 'admin'), get_string('configminpasswordlength', 'admin'), 8, PARAM_INT));
48 $temp->add(new admin_setting_configtext('minpassworddigits', get_string('minpassworddigits', 'admin'), get_string('configminpassworddigits', 'admin'), 1, PARAM_INT));
49 $temp->add(new admin_setting_configtext('minpasswordlower', get_string('minpasswordlower', 'admin'), get_string('configminpasswordlower', 'admin'), 1, PARAM_INT));
50 $temp->add(new admin_setting_configtext('minpasswordupper', get_string('minpasswordupper', 'admin'), get_string('configminpasswordupper', 'admin'), 1, PARAM_INT));
51 $temp->add(new admin_setting_configtext('minpasswordnonalphanum', get_string('minpasswordnonalphanum', 'admin'), get_string('configminpasswordnonalphanum', 'admin'), 1, PARAM_INT));
52 $temp->add(new admin_setting_configcheckbox('disableuserimages', get_string('disableuserimages', 'admin'), get_string('configdisableuserimages', 'admin'), 0));
53 $ADMIN->add('security', $temp);
58 // "httpsecurity" settingpage
59 $temp = new admin_settingpage('httpsecurity', get_string('httpsecurity', 'admin'));
60 $temp->add(new admin_setting_configcheckbox('loginhttps', get_string('loginhttps', 'admin'), get_string('configloginhttps', 'admin'), 0));
61 $ADMIN->add('security', $temp);
64 // "modulesecurity" settingpage
65 $temp = new admin_settingpage('modulesecurity', get_string('modulesecurity', 'admin'));
66 $temp->add(new admin_setting_configselect('restrictmodulesfor', get_string('restrictmodulesfor', 'admin'), get_string('configrestrictmodulesfor', 'admin'), 'none', array('none' => 'No courses',
67 'all' => 'All courses',
68 'requested' => 'Requested courses')));
69 $temp->add(new admin_setting_configcheckbox('restrictbydefault', get_string('restrictbydefault', 'admin'), get_string('configrestrictbydefault', 'admin'), 0));
70 if (!$options = get_records("modules")) {
71 $options = array();
73 $options2 = array();
74 foreach ($options as $option) {
75 $options2[$option->id] = $option->name;
77 $temp->add(new admin_setting_configmultiselect('defaultallowedmodules', get_string('defaultallowedmodules', 'admin'), get_string('configdefaultallowedmodules', 'admin'), array(), $options2));
78 $ADMIN->add('security', $temp);
82 // "notifications" settingpage
83 $temp = new admin_settingpage('notifications', get_string('notifications', 'admin'));
84 $temp->add(new admin_setting_configselect('displayloginfailures', get_string('displayloginfailures', 'admin'), get_string('configdisplayloginfailures', 'admin'), '', array('' => get_string('nobody'),
85 'admin' => get_string('administrators'),
86 'teacher' => get_string('administratorsandteachers'),
87 'everybody' => get_string('everybody'))));
88 $temp->add(new admin_setting_configselect('notifyloginfailures', get_string('notifyloginfailures', 'admin'), get_string('confignotifyloginfailures', 'admin'), '', array('' => get_string('nobody'),
89 'mainadmin' => get_string('administrator'),
90 'alladmins' => get_string('administratorsall'))));
91 $options = array();
92 for ($i = 1; $i <= 100; $i++) {
93 $options[$i] = $i;
95 $temp->add(new admin_setting_configselect('notifyloginthreshold', get_string('notifyloginthreshold', 'admin'), get_string('confignotifyloginthreshold', 'admin'), '10', $options));
96 $ADMIN->add('security', $temp);
103 // "antivirus" settingpage
104 $temp = new admin_settingpage('antivirus', get_string('antivirus', 'admin'));
105 $temp->add(new admin_setting_configcheckbox('runclamonupload', get_string('runclamavonupload', 'admin'), get_string('configrunclamavonupload', 'admin'), 0));
106 $temp->add(new admin_setting_configtext('pathtoclam', get_string('pathtoclam', 'admin'), get_string('configpathtoclam', 'admin'), '', PARAM_RAW)); // TODO: add path validation
107 $temp->add(new admin_setting_configtext('quarantinedir', get_string('quarantinedir', 'admin'), get_string('configquarantinedir', 'admin'), '', PARAM_RAW)); // TODO: add path validation
108 $temp->add(new admin_setting_configselect('clamfailureonupload', get_string('clamfailureonupload', 'admin'), get_string('configclamfailureonupload', 'admin'), 'donothing', array('donothing' => get_string('configclamdonothing', 'admin'),
109 'actlikevirus' => get_string('configclamactlikevirus', 'admin'))));
110 $ADMIN->add('security', $temp);
112 } // end of speedup