Check for requiremodintro before attempting to set it to default
[mdk.git] / mdk / scripts / undev.php
1 <?php
2 /**
3 * Reset the dev settings to their defaults.
4 * See dev.php
5 */
6
7 define('CLI_SCRIPT', true);
8 require(dirname(__FILE__).'/config.php');
9 require_once($CFG->libdir . '/adminlib.php');
10
11 function mdk_set_config($name, $value, $plugin = null) {
12 set_config($name, $value, $plugin);
13 $value = is_bool($value) ? (int) $value : $value;
14
15 if ($plugin) {
16 // Make a fancy name.
17 $name = "$plugin/$name";
18 }
19 mtrace("Setting $name to $value");
20 }
21
22 // Load all the settings.
23 if (class_exists('\core\session\manager')) {
24 \core\session\manager::set_user(get_admin());
25 } else {
26 session_set_user(get_admin());
27 }
28 $adminroot = admin_get_root();
29
30
31 // Debugging settings.
32 $settingspage = $adminroot->locate('debugging', true);
33 $settings = $settingspage->settings;
34
35 // Set developer level.
36 $default = $settings->debug->get_defaultsetting();
37 mdk_set_config('debug', $default);
38
39 // Display debug messages.
40 $default = $settings->debugdisplay->get_defaultsetting();
41 mdk_set_config('debugdisplay', $default);
42
43 // Debug the performance.
44 $default = $settings->perfdebug->get_defaultsetting();
45 mdk_set_config('perfdebug', $default);
46
47 // Debug the information of the page.
48 $default = $settings->debugpageinfo->get_defaultsetting();
49 mdk_set_config('debugpageinfo', $default);
50
51
52 // Site policies settings.
53 $settingspage = $adminroot->locate('sitepolicies', true);
54 $settings = $settingspage->settings;
55
56 // Any kind of password is allowed.
57 $default = $settings->passwordpolicy->get_defaultsetting();
58 mdk_set_config('passwordpolicy', $default);
59
60 // Allow web cron.
61 $default = $settings->cronclionly->get_defaultsetting();
62 mdk_set_config('cronclionly', $default);
63
64
65 // Theme settings.
66 $settingspage = $adminroot->locate('themesettings', true);
67 $settings = $settingspage->settings;
68
69 // Allow themes to be changed from the URL.
70 $default = $settings->allowthemechangeonurl->get_defaultsetting();
71 mdk_set_config('allowthemechangeonurl', $default);
72
73 // Enable designer mode.
74 $default = $settings->themedesignermode->get_defaultsetting();
75 mdk_set_config('themedesignermode', $default);
76
77
78 // Language settings.
79 $settingspage = $adminroot->locate('langsettings', true);
80 $settings = $settingspage->settings;
81
82 // Restore core_string_manager application caching.
83 $default = $settings->langstringcache->get_defaultsetting();
84 mdk_set_config('langstringcache', $default);
85
86
87 // Javascript settings.
88 $settingspage = $adminroot->locate('ajax', true);
89 $settings = $settingspage->settings;
90
91 // Do not cache JavaScript.
92 $default = $settings->cachejs->get_defaultsetting();
93 mdk_set_config('cachejs', $default);
94
95 // Do not use YUI combo loading.
96 $default = $settings->yuicomboloading->get_defaultsetting();
97 mdk_set_config('yuicomboloading', $default);
98
99 // Restore modintro for conciencious devs.
100 $resources = array('book', 'folder', 'imscp', 'page', 'resource', 'url');
101 foreach ($resources as $r) {
102 $settingpage = $adminroot->locate('modsetting' . $r, true);
103 $settings = $settingpage->settings;
104 if (isset($settings->requiremodintro)) {
105 $default = $settings->requiremodintro->get_defaultsetting();
106 mdk_set_config('requiremodintro', $default, $r);
107 }
108 }