MDL-26140 hide unfinished experimental DTL pages
[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
b032b490 8 $ADMIN->add('development', new admin_category('experimental', get_string('experimental','admin')));
3b49f849 9
693fc4a2 10 require_once($CFG->dirroot .'/search/lib.php');
3b49f849 11 $temp = new admin_settingpage('experimentalsettings', get_string('experimentalsettings', 'admin'));
693fc4a2
AB
12 $englobalsearch = new admin_setting_configcheckbox('enableglobalsearch', get_string('enableglobalsearch', 'admin'), get_string('configenableglobalsearch', 'admin'), 0);
13 $englobalsearch->set_updatedcallback('search_updatedcallback');
14 $temp->add($englobalsearch);
cbb9e9b8
EL
15 //TODO: Re-enable cc-import once re-implemented in 2.0.x
16 //$temp->add(new admin_setting_configcheckbox('enableimsccimport', get_string('enable_cc_import', 'imscc'), get_string('enable_cc_import_description', 'imscc'), 0));
7d4dfc48 17 $temp->add(new admin_setting_configcheckbox('enablesafebrowserintegration', get_string('enablesafebrowserintegration', 'admin'), get_string('configenablesafebrowserintegration', 'admin'), 0));
98da6021 18 $temp->add(new admin_setting_configcheckbox('enablegroupmembersonly', get_string('enablegroupmembersonly', 'admin'), get_string('configenablegroupmembersonly', 'admin'), 0));
a559f630 19
3b49f849 20 $ADMIN->add('experimental', $temp);
21
22 // DB transfer related pages
dc80b142
PS
23 $ADMIN->add('experimental', new admin_externalpage('dbtransfer', get_string('dbtransfer', 'dbtransfer'), $CFG->wwwroot.'/'.$CFG->admin.'/dbtransfer/index.php', 'moodle/site:config', true));
24 $ADMIN->add('experimental', new admin_externalpage('dbexport', get_string('dbexport', 'dbtransfer'), $CFG->wwwroot.'/'.$CFG->admin.'/dbtransfer/dbexport.php', 'moodle/site:config', true));
778918fd 25
7689a0f3 26 // "debugging" settingpage
27 $temp = new admin_settingpage('debugging', get_string('debugging', 'admin'));
28 $temp->add(new admin_setting_special_debug());
29 $temp->add(new admin_setting_configcheckbox('debugdisplay', get_string('debugdisplay', 'admin'), get_string('configdebugdisplay', 'admin'), ini_get_bool('display_errors')));
30 $temp->add(new admin_setting_configcheckbox('xmlstrictheaders', get_string('xmlstrictheaders', 'admin'), get_string('configxmlstrictheaders', 'admin'), 0));
31 $temp->add(new admin_setting_configcheckbox('debugsmtp', get_string('debugsmtp', 'admin'), get_string('configdebugsmtp', 'admin'), 0));
32 $temp->add(new admin_setting_configcheckbox('perfdebug', get_string('perfdebug', 'admin'), get_string('configperfdebug', 'admin'), '7', '15', '7'));
33 $temp->add(new admin_setting_configcheckbox('debugstringids', get_string('debugstringids', 'admin'), get_string('configdebugstringids', 'admin'), 0));
34 $temp->add(new admin_setting_configcheckbox('debugvalidators', get_string('debugvalidators', 'admin'), get_string('configdebugvalidators', 'admin'), 0));
35 $temp->add(new admin_setting_configcheckbox('debugpageinfo', get_string('debugpageinfo', 'admin'), get_string('configdebugpageinfo', 'admin'), 0));
36 $ADMIN->add('development', $temp);
37
6af80cae
EL
38 // "profiling" settingpage (conditionally if the 'xhprof' extension is available only)
39 if (extension_loaded('xhprof') && function_exists('xhprof_enable')) {
40 $temp = new admin_settingpage('profiling', get_string('profiling', 'admin'));
41 // Main profiling switch
42 $temp->add(new admin_setting_configcheckbox('profilingenabled', get_string('profilingenabled', 'admin'), get_string('profilingenabled_help', 'admin'), false));
43 // List of URLs that will be automatically profiled
44 $temp->add(new admin_setting_configtextarea('profilingincluded', get_string('profilingincluded', 'admin'), get_string('profilingincluded_help', 'admin'), ''));
45 // List of URLs that won't be profiled ever
46 $temp->add(new admin_setting_configtextarea('profilingexcluded', get_string('profilingexcluded', 'admin'), get_string('profilingexcluded_help', 'admin'), ''));
47 // Allow random profiling each XX requests
48 $temp->add(new admin_setting_configtext('profilingautofrec', get_string('profilingautofrec', 'admin'), get_string('profilingautofrec_help', 'admin'), 0, PARAM_INT));
49 // Allow PROFILEME/DONTPROFILEME GPC
50 $temp->add(new admin_setting_configcheckbox('profilingallowme', get_string('profilingallowme', 'admin'), get_string('profilingallowme_help', 'admin'), false));
51 // Allow PROFILEALL/PROFILEALLSTOP GPC
52 $temp->add(new admin_setting_configcheckbox('profilingallowall', get_string('profilingallowall', 'admin'), get_string('profilingallowall_help', 'admin'), false));
53 // TODO: Allow to skip PHP functions (XHPROF_FLAGS_NO_BUILTINS)
54 // TODO: Allow to skip call_user functions (ignored_functions array)
55 // Specify the life time (in minutes) of profiling runs
56 $temp->add(new admin_setting_configselect('profilinglifetime', get_string('profilinglifetime', 'admin'), get_string('profilinglifetime_help', 'admin'), 24*60, array(
57 0 => get_string('neverdeleteruns', 'admin'),
58 30*24*60 => get_string('numdays', '', 30),
59 15*24*60 => get_string('numdays', '', 15),
60 7*24*60 => get_string('numdays', '', 7),
61 4*24*60 => get_string('numdays', '', 4),
62 2*24*60 => get_string('numdays', '', 2),
63 24*60 => get_string('numhours', '', 24),
64 16*80 => get_string('numhours', '', 16),
65 8*60 => get_string('numhours', '', 8),
66 4*60 => get_string('numhours', '', 4),
67 2*60 => get_string('numhours', '', 2),
68 60 => get_string('numminutes', '', 60),
69 30 => get_string('numminutes', '', 30),
70 15 => get_string('numminutes', '', 15))));
71
72 // Add the 'profiling' page to admin block
73 $ADMIN->add('development', $temp);
74 }
75
7689a0f3 76
220a90c5 77 // XMLDB editor
b032b490 78 $ADMIN->add('development', new admin_externalpage('xmldbeditor', get_string('xmldbeditor'), "$CFG->wwwroot/$CFG->admin/xmldb/"));
c9a49cea 79
75537cbf 80
81 // Web service test clients DO NOT COMMIT : THE EXTERNAL WEB PAGE IS NOT AN ADMIN PAGE !!!!!
220e5a76 82 $ADMIN->add('development', new admin_externalpage('testclient', get_string('testclient', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/testclient.php"));
75537cbf 83
84
de260e0f
PL
85 if ($CFG->mnet_dispatcher_mode !== 'off') {
86 $ADMIN->add('development', new admin_externalpage('mnettestclient', get_string('testclient', 'mnet'), "$CFG->wwwroot/$CFG->admin/mnet/testclient.php"));
87 }
ba6c97ee
MD
88
89 $ADMIN->add('development', new admin_externalpage('purgecaches', get_string('purgecaches','admin'), "$CFG->wwwroot/$CFG->admin/purgecaches.php"));
a559f630 90} // end of speedup