file includeteachersgrade.html was added on branch MOODLE_15_STABLE on 2005-07-07...
[moodle.git] / admin / configvars.php
blobe91f640123a21ca1b797a55bdee707660987769c
1 <?php // $Id$
2 // Shane Elliott
4 /// Add new sitewide configuration variables to this file.
7 /// $configvars is parsed by config.php
8 /// It is an array of arrays of objects
9 /// $configvars[sectionname][configvariablename] = configvar object
10 $configvars = array();
13 /// no, yes strings and menu options are used in a number of places
14 /// so we define them here to save time on repeatedly calling
15 /// get_string()
16 $stryes = get_string('yes');
17 $strno = get_string('no');
19 $noyesoptions[0] = $strno;
20 $noyesoptions[1] = $stryes;
24 /// A class to hold the configurable information
25 /// $field - the html code for the form field
26 /// $help - help text for the field
27 /// $warning - optional warning text to be displayed
28 /// method display_warning() - a generic function that can be used in an extended class
29 /// e.g. enablerssfeeds
30 class configvar {
32 var $field;
33 var $help;
34 var $warning;
36 function configvar($help, $field, $warning='') {
37 $this->help = $help;
38 $this->field = $field;
39 $this->warning = $warning;
42 function display_warning() {
43 return false;
51 ////////////////////////////////////////////////////////////////////
52 /// Miscellaneous config variables
53 ////////////////////////////////////////////////////////////////////
54 $misc = array();
57 /// maxeditingtime
58 unset($options);
59 $options[3600] = get_string('numminutes', '', 60);
60 $options[2700] = get_string('numminutes', '', 45);
61 $options[1800] = get_string('numminutes', '', 30);
62 $options[900] = get_string('numminutes', '', 15);
63 $options[300] = get_string('numminutes', '', 5);
64 $options[60] = get_string('numminutes', '', 1);
66 $misc['maxeditingtime'] = new configvar (get_string('configmaxeditingtime', 'admin'),
67 choose_from_menu ($options, 'maxeditingtime', $config->maxeditingtime, '', '', '', true) );
69 /// debug
70 unset($options);
71 $options[7] = $strno;
72 $options[15] = $stryes;
74 $misc['debug'] = new configvar (get_string('configdebug', 'admin'),
75 choose_from_menu ($options, 'debug', $config->debug, '', '', '', true) );
77 /// enablerssfeeds
78 class configvarrss extends configvar {
79 function display_warning() {
80 return (!function_exists('utf8_encode'));
84 $misc['enablerssfeeds'] = new configvarrss (get_string('configenablerssfeeds', 'admin'),
85 choose_from_menu ($noyesoptions, 'enablerssfeeds', $config->enablerssfeeds, '', '', '', true),
86 '<font color="red"> You need to add XML support to your PHP installation.</font>' );
91 ////////////////////////////////////////////////////////////////////
92 /// OPERATING SYSTEM config variables
93 ////////////////////////////////////////////////////////////////////
94 $operatingsystem = array();
96 /// gdversion
97 unset($options);
98 $options[0] = get_string('gdnot');
99 $options[1] = get_string('gd1');
100 $options[2] = get_string('gd2');
102 $installed = check_gd_version();
104 $operatingsystem['gdversion'] = new configvar (get_string('configgdversion', 'admin'),
105 choose_from_menu ($options, 'gdversion', $installed, '', '', '', true) );
107 /// dbsessions
108 $operatingsystem['dbsessions'] = new configvar (get_string('configdbsessions', 'admin'),
109 choose_from_menu ($noyesoptions, 'dbsessions', $config->dbsessions, '', '', '', true) );
111 /// sessiontimeout
112 unset($options);
113 $options[14400] = get_string('numhours', '', 4);
114 $options[10800] = get_string('numhours', '', 3);
115 $options[7200] = get_string('numhours', '', 2);
116 $options[5400] = get_string('numhours', '', '1.5');
117 $options[3600] = get_string('numminutes', '', 60);
118 $options[2700] = get_string('numminutes', '', 45);
119 $options[1800] = get_string('numminutes', '', 30);
120 $options[900] = get_string('numminutes', '', 15);
121 $options[300] = get_string('numminutes', '', 5);
123 $operatingsystem['sessiontimeout'] = new configvar (get_string('configsessiontimeout', 'admin'),
124 choose_from_menu ($options, 'sessiontimeout', $config->sessiontimeout, '', '', '', true) );
126 /// sessioncookie
127 $operatingsystem['sessioncookie'] = new configvar (get_string('configsessioncookie', 'admin'),
128 '<input name="sessioncookie" type="text" size="10" value="'.s($config->sessioncookie).'" alt="sessioncookie" />' );
130 /// zip
131 $operatingsystem['zip'] = new configvar (get_string('configzip', 'admin'),
132 '<input name="zip" type="text" size="30" value="'.s($config->zip).'" alt="zip" />' );
134 /// unzip
135 $operatingsystem['unzip'] = new configvar (get_string('configunzip', 'admin'),
136 '<input name="unzip" type="text" size="30" value="'.s($config->unzip).'" alt="unzip" />' );
138 /// slasharguments
139 unset($options);
140 $options[0] = "file.php?file=/pic.jpg";
141 $options[1] = "file.php/pic.jpg";
143 $operatingsystem['slasharguments'] = new configvar (get_string('configslasharguments', 'admin'),
144 choose_from_menu ($options, 'slasharguments', $config->slasharguments, '', '', '', true) );
146 /// proxyhost
147 $operatingsystem['proxyhost'] = new configvar (get_string('configproxyhost', 'admin'),
148 '<input name="proxyhost" type="text" size="30" value="'.s($config->proxyhost).'" alt="proxyhost" />' );
150 /// proxyport
151 $operatingsystem['proxyport'] = new configvar ('',
152 '<input name="proxyport" type="text" size="5" value="'.s($config->proxyport).'" alt="proxyport" />' );
156 ////////////////////////////////////////////////////////////////////
157 /// PERMISSIONS config variables
158 ////////////////////////////////////////////////////////////////////
159 $permissions = array();
161 /// teacherassignteachers
162 $permissions['teacherassignteachers'] = new configvar (get_string('configteacherassignteachers', 'admin'),
163 choose_from_menu ($noyesoptions, 'teacherassignteachers', $config->teacherassignteachers, '', '', '', true) );
165 /// allowunenroll
166 $permissions['allowunenroll'] = new configvar (get_string('configallowunenroll', 'admin'),
167 choose_from_menu ($noyesoptions, 'allowunenroll', $config->allowunenroll, '', '', '', true) );
169 /// allusersaresitestudents
170 $permissions['allusersaresitestudents'] = new configvar (get_string('configallusersaresitestudents', 'admin'),
171 choose_from_menu ($noyesoptions, 'allusersaresitestudents', $config->allusersaresitestudents, '', '', '', true) );
173 /// showsiteparticipantslist
174 unset($options);
175 $options[0] = get_string('siteteachers');
176 $options[1] = get_string('allteachers');
177 $options[2] = get_string('studentsandteachers');
179 $permissions['showsiteparticipantslist'] = new configvar (get_string('configshowsiteparticipantslist', 'admin'),
180 choose_from_menu ($options, 'showsiteparticipantslist', $config->showsiteparticipantslist, '', '', '', true) );
182 /// forcelogin
183 $permissions['forcelogin'] = new configvar (get_string('configforcelogin', 'admin'),
184 choose_from_menu ($noyesoptions, 'forcelogin', $config->forcelogin, '', '', '', true) );
186 /// forceloginforprofiles
187 $permissions['forceloginforprofiles'] = new configvar (get_string('configforceloginforprofiles', 'admin'),
188 choose_from_menu ($noyesoptions, 'forceloginforprofiles', $config->forceloginforprofiles, '', '', '', true) );
190 /// opentogoogle
191 $permissions['opentogoogle'] = new configvar (get_string('configopentogoogle', 'admin'),
192 choose_from_menu ($noyesoptions, 'opentogoogle', $config->opentogoogle, '', '', '', true) );
194 /// maxbytes
195 $options = get_max_upload_sizes();
197 $permissions['maxbytes'] = new configvar (get_string('configmaxbytes', 'admin'),
198 choose_from_menu ($options, 'maxbytes', $config->maxbytes, '', '', 0, true) );
200 /// messaging
201 $permissions['messaging'] = new configvar (get_string('configmessaging', 'admin'),
202 choose_from_menu ($noyesoptions, 'messaging', $config->messaging, '', '', '', true) );
204 /// allowobjectembed
205 $permissions['allowobjectembed'] = new configvar (get_string('configallowobjectembed', 'admin'),
206 choose_from_menu ($noyesoptions, 'allowobjectembed', $config->allowobjectembed, '', '', '', true) );
210 ////////////////////////////////////////////////////////////////////
211 /// INTERFACE config variables
212 ////////////////////////////////////////////////////////////////////
213 $interface = array();
215 /// language settings
216 $interface['lang'] = new configvar ( get_string('configlang', 'admin'),
217 choose_from_menu(get_list_of_languages(), 'lang', $config->lang, '', '', '', true) );
219 /// language menu
220 $interface['langmenu'] = new configvar ( get_string('configlangmenu', 'admin'),
221 choose_from_menu($noyesoptions, 'langmenu', $config->langmenu, '', '', '', true) );
223 /// language list
224 $interface['langlist'] = new configvar ( get_string('configlanglist', 'admin'),
225 '<input name="langlist" type="text" size="60" value="'.s($config->langlist).'" alt="langlist" />' );
227 /// language menu
228 $interface['langcache'] = new configvar ( get_string('configlangcache', 'admin'),
229 choose_from_menu($noyesoptions, 'langcache', $config->langcache, '', '', '', true) );
230 /// locale
231 $interface['locale'] = new configvar ( get_string('configlocale', 'admin'),
232 '<input name="locale" type="text" size="10" value="'.s($config->locale).'" alt="locale" />' );
234 /// timezone
236 $interface['timezone'] = new configvar ( get_string('configtimezone', 'admin'),
237 choose_from_menu (get_list_of_timezones(), 'timezone', $config->timezone, get_string('serverlocaltime'), '', '99', true ) );
239 /// country
240 $interface['country'] = new configvar ( get_string('configcountry', 'admin'),
241 choose_from_menu (get_list_of_countries(), 'country', $config->country, get_string('selectacountry'), '', 0, true) );
243 /// framename
244 if (empty($config->framename)) {
245 $config->framename = "_top";
248 $interface['framename'] = new configvar (get_string('configframename', 'admin'),
249 '<input name="framename" type="text" size="15" value="'.s($config->framename).'" alt="framename" />' );
251 /// language list
252 $interface['themelist'] = new configvar ( get_string('configthemelist', 'admin'),
253 '<input name="themelist" type="text" size="60" value="'.s($config->themelist).'" alt="themelist" />' );
255 /// user themes
256 $interface['allowuserthemes'] = new configvar (get_string('configallowuserthemes', 'admin'),
257 choose_from_menu ($noyesoptions, 'allowuserthemes', $config->allowuserthemes, '', '', '', true) );
259 /// course themes
260 $interface['allowcoursethemes'] = new configvar (get_string('configallowcoursethemes', 'admin'),
261 choose_from_menu ($noyesoptions, 'allowcoursethemes', $config->allowcoursethemes, '', '', '', true) );
263 /// allowuserblockhiding
264 $interface['allowuserblockhiding'] = new configvar (get_string('configallowuserblockhiding', 'admin'),
265 choose_from_menu ($noyesoptions, 'allowuserblockhiding', $config->allowuserblockhiding, '', '', '', true) );
267 /// showblocksonmodpages
268 $interface['showblocksonmodpages'] = new configvar (get_string('configshowblocksonmodpages', 'admin'),
269 choose_from_menu ($noyesoptions, 'showblocksonmodpages', $config->showblocksonmodpages, '', '', '', true) );
272 /// tabselectedtofront
273 $interface['tabselectedtofront'] = new configvar (get_string('tabselectedtofront', 'admin'),
274 choose_from_menu ($noyesoptions, 'tabselectedtofront', $config->tabselectedtofront, '', '', '', true) );
278 ////////////////////////////////////////////////////////////////////
279 /// USER config variables
280 ////////////////////////////////////////////////////////////////////
281 $user = array();
283 /// sitepolicy
284 $user['sitepolicy'] = new configvar (get_string('configsitepolicy', 'admin'),
285 '<input type="text" name="sitepolicy" size="60" value="'.$config->sitepolicy.'" alt="sitepolicy" />' );
288 /// fullnamedisplay
289 unset($options);
290 $options['language'] = get_string('language');
291 $options['firstname lastname'] = get_string('firstname') . ' + ' . get_string('lastname');
292 $options['lastname firstname'] = get_string('lastname') . ' + ' . get_string('firstname');
293 $options['firstname'] = get_string('firstname');
295 $user['fullnamedisplay'] = new configvar (get_string('configfullnamedisplay', 'admin'),
296 choose_from_menu ($options, 'fullnamedisplay', $config->fullnamedisplay, '', '', '', true) );
298 /// extendedusernamechars
299 $user['extendedusernamechars'] = new configvar (get_string('configextendedusernamechars', 'admin'),
300 choose_from_menu ($noyesoptions, 'extendedusernamechars', $config->extendedusernamechars, '', '', '', true) );
302 /// autologinguests
303 $user['autologinguests'] = new configvar (get_string('configautologinguests', 'admin'),
304 choose_from_menu ($noyesoptions, 'autologinguests', $config->autologinguests, '', '', '', true) );
310 ////////////////////////////////////////////////////////////////////
311 /// SECURITY config variables
312 ////////////////////////////////////////////////////////////////////
313 $security = array();
315 /// displayloginfailures
316 unset($options);
317 $options[''] = get_string('nobody');
318 $options['admin'] = get_string('administrators');
319 $options['teacher'] = get_string('administratorsandteachers');
320 $options['everybody'] = get_string('everybody');
322 $security['displayloginfailures'] = new configvar (get_string('configdisplayloginfailures', 'admin'),
323 choose_from_menu($options, 'displayloginfailures', $config->displayloginfailures, '', '', '', true) );
325 /// notifyloginfailures
326 unset($options);
327 $options[''] = get_string('nobody');
328 $options['mainadmin'] = get_string('administrator');
329 $options['alladmins'] = get_string('administratorsall');
331 $security['notifyloginfailures'] = new configvar (get_string('confignotifyloginfailures', 'admin'),
332 choose_from_menu($options, 'notifyloginfailures', $config->notifyloginfailures, '', '', '', true) );
334 /// notifyloginthreshold
335 unset($options);
336 for ($i=1; $i<=100; $i++) {
337 $options[$i] = "$i";
340 $security['notifyloginthreshold'] = new configvar (get_string('confignotifyloginthreshold', 'admin'),
341 choose_from_menu($options, 'notifyloginthreshold', $config->notifyloginthreshold, '', '', '', true) );
343 /// secureforms
344 $security['secureforms'] = new configvar (get_string('configsecureforms', 'admin'),
345 choose_from_menu ($noyesoptions, 'secureforms', $config->secureforms, '', '', '', true) );
347 /// loginhttps
348 $security['loginhttps'] = new configvar (get_string('configloginhttps', 'admin'),
349 choose_from_menu ($noyesoptions, 'loginhttps', $config->loginhttps, '', '', '', true) );
351 /// runclamonupload
352 $security['runclamonupload'] = new configvar (get_string('configrunclamonupload', 'admin'),
353 choose_from_menu($noyesoptions, 'runclamonupload', $config->runclamonupload, '', '', '', true) );
355 /// pathtoclam
356 $security['pathtoclam'] = new configvar (get_string('configpathtoclam', 'admin'),
357 '<input type="text" name="pathtoclam" size="30" value="'.$config->pathtoclam.'" alt="pathtoclam" />' );
359 /// quarantinedir
360 $security['quarantinedir'] = new configvar (get_string('configquarantinedir', 'admin'),
361 '<input type="text" name="quarantinedir" size="30" value="'.$config->quarantinedir.'" alt="quarantinedir" />' );
363 /// clamfailureonupload
364 unset($options);
365 $options['donothing'] = get_string('configclamdonothing', 'admin');
366 $options['actlikevirus'] = get_string('configclamactlikevirus', 'admin');
368 $security['clamfailureonupload'] = new configvar (get_string('configclamfailureonupload', 'admin'),
369 choose_from_menu($options, 'clamfailureonupload', $config->clamfailureonupload, '', '', '', true) );
374 ////////////////////////////////////////////////////////////////////
375 /// MAINTENANCE config variables
376 ////////////////////////////////////////////////////////////////////
377 $maintenance = array();
379 /// longtimenosee
380 unset($options);
381 $options[0] = get_string('never');
382 $options[1000] = get_string('numdays', '', 1000);
383 $options[365] = get_string('numdays', '', 365);
384 $options[180] = get_string('numdays', '', 180);
385 $options[150] = get_string('numdays', '', 150);
386 $options[120] = get_string('numdays', '', 120);
387 $options[90] = get_string('numdays', '', 90);
388 $options[60] = get_string('numdays', '', 60);
389 $options[30] = get_string('numdays', '', 30);
390 $options[21] = get_string('numdays', '', 21);
391 $options[14] = get_string('numdays', '', 14);
392 $options[7] = get_string('numdays', '', 7);
394 $maintenance['longtimenosee'] = new configvar (get_string('configlongtimenosee', 'admin'),
395 choose_from_menu ($options, 'longtimenosee', $config->longtimenosee, '', '', '', true) );
397 /// deleteunconfirmed
398 unset($options);
399 $options[0] = get_string('never');
400 $options[168] = get_string('numdays', '', 7);
401 $options[144] = get_string('numdays', '', 6);
402 $options[120] = get_string('numdays', '', 5);
403 $options[96] = get_string('numdays', '', 4);
404 $options[72] = get_string('numdays', '', 3);
405 $options[48] = get_string('numdays', '', 2);
406 $options[24] = get_string('numdays', '', 1);
407 $options[12] = get_string('numhours', '', 12);
408 $options[6] = get_string('numhours', '', 6);
409 $options[1] = get_string('numhours', '', 1);
411 $maintenance['deleteunconfirmed'] = new configvar (get_string('configdeleteunconfirmed', 'admin'),
412 choose_from_menu ($options, 'deleteunconfirmed', $config->deleteunconfirmed, '', '', '', true) );
414 /// loglifetime
415 unset($options);
416 $options[0] = get_string('neverdeletelogs');
417 $options[1000] = get_string('numdays', '', 1000);
418 $options[365] = get_string('numdays', '', 365);
419 $options[180] = get_string('numdays', '', 180);
420 $options[150] = get_string('numdays', '', 150);
421 $options[120] = get_string('numdays', '', 120);
422 $options[90] = get_string('numdays', '', 90);
423 $options[60] = get_string('numdays', '', 60);
424 $options[30] = get_string('numdays', '', 30);
426 $maintenance['loglifetime'] = new configvar (get_string('configloglifetime', 'admin'),
427 choose_from_menu ($options, 'loglifetime', $config->loglifetime, '', '', '', true) );
430 ////////////////////////////////////////////////////////////////////
431 /// MAIL config variables
432 ////////////////////////////////////////////////////////////////////
433 $mail = array();
435 /// smtphosts
436 $mail['smtphosts'] = new configvar (get_string('configsmtphosts', 'admin'),
437 '<input name="smtphosts" type="text" size="30" value="'.s($config->smtphosts).'" alt="smtphosts" />' );
439 /// smtpuser
440 $mail['smtpuser'] = new configvar (get_string('configsmtpuser', 'admin'),
441 '<input name="smtpuser" type="text" size="10" value="'.s($config->smtpuser).'" alt="smtpuser" />' );
443 /// smtppass
444 $mail['smtppass'] = new configvar ('',
445 '<input name="smtppass" type="password" size="10" value="'.s($config->smtppass).'" alt="smtppass" />' );
447 /// noreplyaddress
448 $mail['noreplyaddress'] = new configvar (get_string('confignoreplyaddress', 'admin'),
449 '<input name="noreplyaddress" type="text" size="30" value="'.s($config->noreplyaddress).'" alt="noreplyaddress" />' );
451 /// digestmailtime
452 $hours = array();
453 for ($i=0; $i<=23; $i++) {
454 $hours[$i] = sprintf("%02d",$i);
457 $mail['digestmailtime'] = new configvar (get_string('configdigestmailtime', 'admin'),
458 choose_from_menu($hours, 'digestmailtime', $config->digestmailtime, '', '', 0, true) );
460 /// allowemailaddresses
461 $mail['allowemailaddresses'] = new configvar (get_string('configallowemailaddresses', 'admin'),
462 '<input name="allowemailaddresses" type="text" size="60" value="'.s($config->allowemailaddresses).'" alt="allowemailaddresses" />' );
464 /// denyemailaddresses
465 $mail['denyemailaddresses'] = new configvar (get_string('configdenyemailaddresses', 'admin'),
466 '<input name="denyemailaddresses" type="text" size="60" value="'.s($config->denyemailaddresses).'" alt="denyemailaddresses" />' );
473 ////////////////////////////////////////////////////////////////////
475 $configvars['interface'] = $interface;
476 $configvars['security'] = $security;
477 $configvars['operatingsystem'] = $operatingsystem;
478 $configvars['maintenance'] = $maintenance;
479 $configvars['mail'] = $mail;
480 $configvars['user'] = $user;
481 $configvars['permissions'] = $permissions;
482 $configvars['misc'] = $misc;