Moodle release 2.3beta
[moodle.git] / admin / settings / development.php
CommitLineData
11b749ca 1<?php
a7c72afc 2
721d74b0 3// * Miscellaneous settings
50999a0b 4
a559f630 5if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
6
220a90c5 7 // Experimental settings page
e106013f 8 $ADMIN->add('development', new admin_category('experimental', new lang_string('experimental','admin')));
3b49f849 9
e106013f 10 $temp = new admin_settingpage('experimentalsettings', new lang_string('experimentalsettings', 'admin'));
cbb9e9b8 11 //TODO: Re-enable cc-import once re-implemented in 2.0.x
e106013f
SH
12 //$temp->add(new admin_setting_configcheckbox('enableimsccimport', new lang_string('enable_cc_import', 'imscc'), new lang_string('enable_cc_import_description', 'imscc'), 0));
13 $temp->add(new admin_setting_configcheckbox('enablesafebrowserintegration', new lang_string('enablesafebrowserintegration', 'admin'), new lang_string('configenablesafebrowserintegration', 'admin'), 0));
14 $temp->add(new admin_setting_configcheckbox('enablegroupmembersonly', new lang_string('enablegroupmembersonly', 'admin'), new lang_string('configenablegroupmembersonly', 'admin'), 0));
a559f630 15
1ddc3d1f 16 $temp->add(new admin_setting_configcheckbox('dndallowtextandlinks', new lang_string('dndallowtextandlinks', 'admin'), new lang_string('configdndallowtextandlinks', 'admin'), 0));
8f856cd0 17 $temp->add(new admin_setting_configcheckbox('enablecssoptimiser', new lang_string('enablecssoptimiser','admin'), new lang_string('enablecssoptimiser_desc','admin'), 0));
f684250b 18
3b49f849 19 $ADMIN->add('experimental', $temp);
20
7689a0f3 21 // "debugging" settingpage
e106013f 22 $temp = new admin_settingpage('debugging', new lang_string('debugging', 'admin'));
7689a0f3 23 $temp->add(new admin_setting_special_debug());
e106013f
SH
24 $temp->add(new admin_setting_configcheckbox('debugdisplay', new lang_string('debugdisplay', 'admin'), new lang_string('configdebugdisplay', 'admin'), ini_get_bool('display_errors')));
25 $temp->add(new admin_setting_configcheckbox('xmlstrictheaders', new lang_string('xmlstrictheaders', 'admin'), new lang_string('configxmlstrictheaders', 'admin'), 0));
26 $temp->add(new admin_setting_configcheckbox('debugsmtp', new lang_string('debugsmtp', 'admin'), new lang_string('configdebugsmtp', 'admin'), 0));
27 $temp->add(new admin_setting_configcheckbox('perfdebug', new lang_string('perfdebug', 'admin'), new lang_string('configperfdebug', 'admin'), '7', '15', '7'));
28 $temp->add(new admin_setting_configcheckbox('debugstringids', new lang_string('debugstringids', 'admin'), new lang_string('debugstringids_desc', 'admin'), 0));
29 $temp->add(new admin_setting_configcheckbox('debugvalidators', new lang_string('debugvalidators', 'admin'), new lang_string('configdebugvalidators', 'admin'), 0));
30 $temp->add(new admin_setting_configcheckbox('debugpageinfo', new lang_string('debugpageinfo', 'admin'), new lang_string('configdebugpageinfo', 'admin'), 0));
7689a0f3 31 $ADMIN->add('development', $temp);
32
6af80cae
EL
33 // "profiling" settingpage (conditionally if the 'xhprof' extension is available only)
34 if (extension_loaded('xhprof') && function_exists('xhprof_enable')) {
e106013f 35 $temp = new admin_settingpage('profiling', new lang_string('profiling', 'admin'));
6af80cae 36 // Main profiling switch
e106013f 37 $temp->add(new admin_setting_configcheckbox('profilingenabled', new lang_string('profilingenabled', 'admin'), new lang_string('profilingenabled_help', 'admin'), false));
6af80cae 38 // List of URLs that will be automatically profiled
e106013f 39 $temp->add(new admin_setting_configtextarea('profilingincluded', new lang_string('profilingincluded', 'admin'), new lang_string('profilingincluded_help', 'admin'), ''));
6af80cae 40 // List of URLs that won't be profiled ever
e106013f 41 $temp->add(new admin_setting_configtextarea('profilingexcluded', new lang_string('profilingexcluded', 'admin'), new lang_string('profilingexcluded_help', 'admin'), ''));
6af80cae 42 // Allow random profiling each XX requests
e106013f 43 $temp->add(new admin_setting_configtext('profilingautofrec', new lang_string('profilingautofrec', 'admin'), new lang_string('profilingautofrec_help', 'admin'), 0, PARAM_INT));
6af80cae 44 // Allow PROFILEME/DONTPROFILEME GPC
e106013f 45 $temp->add(new admin_setting_configcheckbox('profilingallowme', new lang_string('profilingallowme', 'admin'), new lang_string('profilingallowme_help', 'admin'), false));
6af80cae 46 // Allow PROFILEALL/PROFILEALLSTOP GPC
e106013f 47 $temp->add(new admin_setting_configcheckbox('profilingallowall', new lang_string('profilingallowall', 'admin'), new lang_string('profilingallowall_help', 'admin'), false));
6af80cae
EL
48 // TODO: Allow to skip PHP functions (XHPROF_FLAGS_NO_BUILTINS)
49 // TODO: Allow to skip call_user functions (ignored_functions array)
50 // Specify the life time (in minutes) of profiling runs
e106013f
SH
51 $temp->add(new admin_setting_configselect('profilinglifetime', new lang_string('profilinglifetime', 'admin'), new lang_string('profilinglifetime_help', 'admin'), 24*60, array(
52 0 => new lang_string('neverdeleteruns', 'admin'),
53 30*24*60 => new lang_string('numdays', '', 30),
54 15*24*60 => new lang_string('numdays', '', 15),
55 7*24*60 => new lang_string('numdays', '', 7),
56 4*24*60 => new lang_string('numdays', '', 4),
57 2*24*60 => new lang_string('numdays', '', 2),
58 24*60 => new lang_string('numhours', '', 24),
59 16*80 => new lang_string('numhours', '', 16),
60 8*60 => new lang_string('numhours', '', 8),
61 4*60 => new lang_string('numhours', '', 4),
62 2*60 => new lang_string('numhours', '', 2),
63 60 => new lang_string('numminutes', '', 60),
64 30 => new lang_string('numminutes', '', 30),
65 15 => new lang_string('numminutes', '', 15))));
6af80cae
EL
66
67 // Add the 'profiling' page to admin block
68 $ADMIN->add('development', $temp);
69 }
70
7689a0f3 71
75537cbf 72 // Web service test clients DO NOT COMMIT : THE EXTERNAL WEB PAGE IS NOT AN ADMIN PAGE !!!!!
e106013f 73 $ADMIN->add('development', new admin_externalpage('testclient', new lang_string('testclient', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/testclient.php"));
75537cbf 74
75
de260e0f 76 if ($CFG->mnet_dispatcher_mode !== 'off') {
e106013f 77 $ADMIN->add('development', new admin_externalpage('mnettestclient', new lang_string('testclient', 'mnet'), "$CFG->wwwroot/$CFG->admin/mnet/testclient.php"));
de260e0f 78 }
ba6c97ee 79
e106013f 80 $ADMIN->add('development', new admin_externalpage('purgecaches', new lang_string('purgecaches','admin'), "$CFG->wwwroot/$CFG->admin/purgecaches.php"));
a559f630 81} // end of speedup