[ Index ] |
PHP Cross Reference of moodle-2.8 |
[Summary view] [Print] [Text view]
1 <?php 2 3 // This file defines settingpages and externalpages under the "appearance" category 4 5 $capabilities = array( 6 'moodle/my:configsyspages', 7 'moodle/tag:manage' 8 ); 9 10 if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) { // speedup for non-admins, add all caps used on this page 11 12 $ADMIN->add('appearance', new admin_category('themes', new lang_string('themes'))); 13 // "themesettings" settingpage 14 $temp = new admin_settingpage('themesettings', new lang_string('themesettings', 'admin')); 15 $temp->add(new admin_setting_configtext('themelist', new lang_string('themelist', 'admin'), new lang_string('configthemelist','admin'), '', PARAM_NOTAGS)); 16 $setting = new admin_setting_configcheckbox('themedesignermode', new lang_string('themedesignermode', 'admin'), new lang_string('configthemedesignermode', 'admin'), 0); 17 $setting->set_updatedcallback('theme_reset_all_caches'); 18 $temp->add($setting); 19 $temp->add(new admin_setting_configcheckbox('allowuserthemes', new lang_string('allowuserthemes', 'admin'), new lang_string('configallowuserthemes', 'admin'), 0)); 20 $temp->add(new admin_setting_configcheckbox('allowcoursethemes', new lang_string('allowcoursethemes', 'admin'), new lang_string('configallowcoursethemes', 'admin'), 0)); 21 $temp->add(new admin_setting_configcheckbox('allowcategorythemes', new lang_string('allowcategorythemes', 'admin'), new lang_string('configallowcategorythemes', 'admin'), 0)); 22 $temp->add(new admin_setting_configcheckbox('allowthemechangeonurl', new lang_string('allowthemechangeonurl', 'admin'), new lang_string('configallowthemechangeonurl', 'admin'), 0)); 23 $temp->add(new admin_setting_configcheckbox('allowuserblockhiding', new lang_string('allowuserblockhiding', 'admin'), new lang_string('configallowuserblockhiding', 'admin'), 1)); 24 $temp->add(new admin_setting_configcheckbox('allowblockstodock', new lang_string('allowblockstodock', 'admin'), new lang_string('configallowblockstodock', 'admin'), 1)); 25 $temp->add(new admin_setting_configtextarea('custommenuitems', new lang_string('custommenuitems', 'admin'), new lang_string('configcustommenuitems', 'admin'), '', PARAM_TEXT, '50', '10')); 26 $temp->add(new admin_setting_configtextarea( 27 'customusermenuitems', 28 new lang_string('customusermenuitems', 'admin'), 29 new lang_string('configcustomusermenuitems', 'admin'), 30 'messages,message|/message/index.php|message 31 myfiles,moodle|/user/files.php|download 32 mybadges,badges|/badges/mybadges.php|award', 33 PARAM_TEXT, 34 '50', 35 '10' 36 )); 37 $temp->add(new admin_setting_configcheckbox('enabledevicedetection', new lang_string('enabledevicedetection', 'admin'), new lang_string('configenabledevicedetection', 'admin'), 1)); 38 $temp->add(new admin_setting_devicedetectregex('devicedetectregex', new lang_string('devicedetectregex', 'admin'), new lang_string('devicedetectregex_desc', 'admin'), '')); 39 $ADMIN->add('themes', $temp); 40 $ADMIN->add('themes', new admin_externalpage('themeselector', new lang_string('themeselector','admin'), $CFG->wwwroot . '/theme/index.php')); 41 42 // settings for each theme 43 foreach (core_component::get_plugin_list('theme') as $theme => $themedir) { 44 $settings_path = "$themedir/settings.php"; 45 if (file_exists($settings_path)) { 46 $settings = new admin_settingpage('themesetting'.$theme, new lang_string('pluginname', 'theme_'.$theme)); 47 include($settings_path); 48 if ($settings) { 49 $ADMIN->add('themes', $settings); 50 } 51 } 52 } 53 54 55 // Calendar settings. 56 $temp = new admin_settingpage('calendar', new lang_string('calendarsettings','admin')); 57 58 $temp->add(new admin_setting_configselect('calendartype', new lang_string('calendartype', 'admin'), 59 new lang_string('calendartype_desc', 'admin'), 'gregorian', \core_calendar\type_factory::get_list_of_calendar_types())); 60 $temp->add(new admin_setting_special_adminseesall()); 61 //this is hacky because we do not want to include the stuff from calendar/lib.php 62 $temp->add(new admin_setting_configselect('calendar_site_timeformat', new lang_string('pref_timeformat', 'calendar'), 63 new lang_string('explain_site_timeformat', 'calendar'), '0', 64 array('0' => new lang_string('default', 'calendar'), 65 '%I:%M %p' => new lang_string('timeformat_12', 'calendar'), 66 '%H:%M' => new lang_string('timeformat_24', 'calendar')))); 67 $temp->add(new admin_setting_configselect('calendar_startwday', new lang_string('configstartwday', 'admin'), new lang_string('helpstartofweek', 'admin'), 0, 68 array( 69 0 => new lang_string('sunday', 'calendar'), 70 1 => new lang_string('monday', 'calendar'), 71 2 => new lang_string('tuesday', 'calendar'), 72 3 => new lang_string('wednesday', 'calendar'), 73 4 => new lang_string('thursday', 'calendar'), 74 5 => new lang_string('friday', 'calendar'), 75 6 => new lang_string('saturday', 'calendar') 76 ))); 77 $temp->add(new admin_setting_special_calendar_weekend()); 78 $options = array(); 79 for ($i=1; $i<=99; $i++) { 80 $options[$i] = $i; 81 } 82 $temp->add(new admin_setting_configselect('calendar_lookahead',new lang_string('configlookahead','admin'),new lang_string('helpupcominglookahead', 'admin'),21,$options)); 83 $options = array(); 84 for ($i=1; $i<=20; $i++) { 85 $options[$i] = $i; 86 } 87 $temp->add(new admin_setting_configselect('calendar_maxevents',new lang_string('configmaxevents','admin'),new lang_string('helpupcomingmaxevents', 'admin'),10,$options)); 88 $temp->add(new admin_setting_configcheckbox('enablecalendarexport', new lang_string('enablecalendarexport', 'admin'), new lang_string('configenablecalendarexport','admin'), 1)); 89 90 // Calendar custom export settings. 91 $days = array(365 => new lang_string('numdays', '', 365), 92 180 => new lang_string('numdays', '', 180), 93 150 => new lang_string('numdays', '', 150), 94 120 => new lang_string('numdays', '', 120), 95 90 => new lang_string('numdays', '', 90), 96 60 => new lang_string('numdays', '', 60), 97 30 => new lang_string('numdays', '', 30), 98 5 => new lang_string('numdays', '', 5)); 99 $temp->add(new admin_setting_configcheckbox('calendar_customexport', new lang_string('configcalendarcustomexport', 'admin'), new lang_string('helpcalendarcustomexport','admin'), 1)); 100 $temp->add(new admin_setting_configselect('calendar_exportlookahead', new lang_string('configexportlookahead','admin'), new lang_string('helpexportlookahead', 'admin'), 365, $days)); 101 $temp->add(new admin_setting_configselect('calendar_exportlookback', new lang_string('configexportlookback','admin'), new lang_string('helpexportlookback', 'admin'), 5, $days)); 102 $temp->add(new admin_setting_configtext('calendar_exportsalt', new lang_string('calendarexportsalt','admin'), new lang_string('configcalendarexportsalt', 'admin'), random_string(60))); 103 $temp->add(new admin_setting_configcheckbox('calendar_showicalsource', new lang_string('configshowicalsource', 'admin'), new lang_string('helpshowicalsource','admin'), 1)); 104 $ADMIN->add('appearance', $temp); 105 106 // blog 107 $temp = new admin_settingpage('blog', new lang_string('blog','blog'), 'moodle/site:config', empty($CFG->enableblogs)); 108 $temp->add(new admin_setting_configcheckbox('useblogassociations', new lang_string('useblogassociations', 'blog'), new lang_string('configuseblogassociations','blog'), 1)); 109 $temp->add(new admin_setting_bloglevel('bloglevel', new lang_string('bloglevel', 'admin'), new lang_string('configbloglevel', 'admin'), 4, array(BLOG_GLOBAL_LEVEL => new lang_string('worldblogs','blog'), 110 BLOG_SITE_LEVEL => new lang_string('siteblogs','blog'), 111 BLOG_USER_LEVEL => new lang_string('personalblogs','blog')))); 112 $temp->add(new admin_setting_configcheckbox('useexternalblogs', new lang_string('useexternalblogs', 'blog'), new lang_string('configuseexternalblogs','blog'), 1)); 113 $temp->add(new admin_setting_configselect('externalblogcrontime', new lang_string('externalblogcrontime', 'blog'), new lang_string('configexternalblogcrontime', 'blog'), 86400, 114 array(43200 => new lang_string('numhours', '', 12), 115 86400 => new lang_string('numhours', '', 24), 116 172800 => new lang_string('numdays', '', 2), 117 604800 => new lang_string('numdays', '', 7)))); 118 $temp->add(new admin_setting_configtext('maxexternalblogsperuser', new lang_string('maxexternalblogsperuser','blog'), new lang_string('configmaxexternalblogsperuser', 'blog'), 1)); 119 $temp->add(new admin_setting_configcheckbox('blogusecomments', new lang_string('enablecomments', 'admin'), new lang_string('configenablecomments', 'admin'), 1)); 120 $temp->add(new admin_setting_configcheckbox('blogshowcommentscount', new lang_string('showcommentscount', 'admin'), new lang_string('configshowcommentscount', 'admin'), 1)); 121 $ADMIN->add('appearance', $temp); 122 123 // Navigation settings 124 $temp = new admin_settingpage('navigation', new lang_string('navigation')); 125 $choices = array( 126 HOMEPAGE_SITE => new lang_string('site'), 127 HOMEPAGE_MY => new lang_string('mymoodle', 'admin'), 128 HOMEPAGE_USER => new lang_string('userpreference', 'admin') 129 ); 130 $temp->add(new admin_setting_configselect('defaulthomepage', new lang_string('defaulthomepage', 'admin'), new lang_string('configdefaulthomepage', 'admin'), HOMEPAGE_SITE, $choices)); 131 $temp->add(new admin_setting_configcheckbox('allowguestmymoodle', new lang_string('allowguestmymoodle', 'admin'), new lang_string('configallowguestmymoodle', 'admin'), 1)); 132 $temp->add(new admin_setting_configcheckbox('navshowfullcoursenames', new lang_string('navshowfullcoursenames', 'admin'), new lang_string('navshowfullcoursenames_help', 'admin'), 0)); 133 $temp->add(new admin_setting_configcheckbox('navshowcategories', new lang_string('navshowcategories', 'admin'), new lang_string('confignavshowcategories', 'admin'), 1)); 134 $temp->add(new admin_setting_configcheckbox('navshowmycoursecategories', new lang_string('navshowmycoursecategories', 'admin'), new lang_string('navshowmycoursecategories_help', 'admin'), 0)); 135 $temp->add(new admin_setting_configcheckbox('navshowallcourses', new lang_string('navshowallcourses', 'admin'), new lang_string('confignavshowallcourses', 'admin'), 0)); 136 $temp->add(new admin_setting_configcheckbox('navexpandmycourses', new lang_string('navexpandmycourses', 'admin'), new lang_string('navexpandmycourses_desc', 'admin'), 1)); 137 $sortoptions = array( 138 'sortorder' => new lang_string('sort_sortorder', 'admin'), 139 'fullname' => new lang_string('sort_fullname', 'admin'), 140 'shortname' => new lang_string('sort_shortname', 'admin'), 141 'idnumber' => new lang_string('sort_idnumber', 'admin'), 142 ); 143 $temp->add(new admin_setting_configselect('navsortmycoursessort', new lang_string('navsortmycoursessort', 'admin'), new lang_string('navsortmycoursessort_help', 'admin'), 'sortorder', $sortoptions)); 144 $temp->add(new admin_setting_configtext('navcourselimit',new lang_string('navcourselimit','admin'),new lang_string('confignavcourselimit', 'admin'),20,PARAM_INT)); 145 $temp->add(new admin_setting_configcheckbox('usesitenameforsitepages', new lang_string('usesitenameforsitepages', 'admin'), new lang_string('configusesitenameforsitepages', 'admin'), 0)); 146 $temp->add(new admin_setting_configcheckbox('linkadmincategories', new lang_string('linkadmincategories', 'admin'), new lang_string('linkadmincategories_help', 'admin'), 0)); 147 $temp->add(new admin_setting_configcheckbox('navshowfrontpagemods', new lang_string('navshowfrontpagemods', 'admin'), new lang_string('navshowfrontpagemods_help', 'admin'), 1)); 148 $temp->add(new admin_setting_configcheckbox('navadduserpostslinks', new lang_string('navadduserpostslinks', 'admin'), new lang_string('navadduserpostslinks_help', 'admin'), 1)); 149 150 $ADMIN->add('appearance', $temp); 151 152 // "htmlsettings" settingpage 153 $temp = new admin_settingpage('htmlsettings', new lang_string('htmlsettings', 'admin')); 154 $temp->add(new admin_setting_configcheckbox('formatstringstriptags', new lang_string('stripalltitletags', 'admin'), new lang_string('configstripalltitletags', 'admin'), 1)); 155 $temp->add(new admin_setting_emoticons()); 156 $ADMIN->add('appearance', $temp); 157 $ADMIN->add('appearance', new admin_externalpage('resetemoticons', new lang_string('emoticonsreset', 'admin'), 158 new moodle_url('/admin/resetemoticons.php'), 'moodle/site:config', true)); 159 160 161 // The "media" subpage. 162 $temp = new admin_settingpage('mediasettings', get_string('mediasettings', 'core_media')); 163 164 $temp->add(new admin_setting_heading('mediaformats', get_string('mediaformats', 'core_media'), 165 format_text(get_string('mediaformats_desc', 'core_media'), FORMAT_MARKDOWN))); 166 167 // External services. 168 $temp->add(new admin_setting_configcheckbox('core_media_enable_youtube', 169 get_string('siteyoutube', 'core_media'), get_string('siteyoutube_desc', 'core_media'), 1)); 170 $temp->add(new admin_setting_configcheckbox('core_media_enable_vimeo', 171 get_string('sitevimeo', 'core_media'), get_string('sitevimeo_desc', 'core_media'), 0)); 172 173 // Options which require Flash. 174 $temp->add(new admin_setting_configcheckbox('core_media_enable_mp3', 175 get_string('mp3audio', 'core_media'), get_string('mp3audio_desc', 'core_media'), 1)); 176 $temp->add(new admin_setting_configcheckbox('core_media_enable_flv', 177 get_string('flashvideo', 'core_media'), get_string('flashvideo_desc', 'core_media'), 1)); 178 $temp->add(new admin_setting_configcheckbox('core_media_enable_swf', 179 get_string('flashanimation', 'core_media'), get_string('flashanimation_desc', 'core_media'), 1)); 180 181 // HTML 5 media. 182 // Audio now enabled by default so that it can provide a fallback for mp3 on devices without flash. 183 $temp->add(new admin_setting_configcheckbox('core_media_enable_html5audio', 184 get_string('html5audio', 'core_media'), get_string('html5audio_desc', 'core_media'), 1)); 185 // Video now enabled by default so it can provide mp4 support. 186 $temp->add(new admin_setting_configcheckbox('core_media_enable_html5video', 187 get_string('html5video', 'core_media'), get_string('html5video_desc', 'core_media'), 1)); 188 189 // Legacy players. 190 $temp->add(new admin_setting_heading('legacymediaformats', 191 get_string('legacyheading', 'core_media'), get_string('legacyheading_desc', 'core_media'))); 192 193 $temp->add(new admin_setting_configcheckbox('core_media_enable_qt', 194 get_string('legacyquicktime', 'core_media'), get_string('legacyquicktime_desc', 'core_media'), 1)); 195 $temp->add(new admin_setting_configcheckbox('core_media_enable_wmp', 196 get_string('legacywmp', 'core_media'), get_string('legacywmp_desc', 'core_media'), 1)); 197 $temp->add(new admin_setting_configcheckbox('core_media_enable_rm', 198 get_string('legacyreal', 'core_media'), get_string('legacyreal_desc', 'core_media'), 1)); 199 200 $ADMIN->add('appearance', $temp); 201 202 203 // "documentation" settingpage 204 $temp = new admin_settingpage('documentation', new lang_string('moodledocs')); 205 $temp->add(new admin_setting_configtext('docroot', new lang_string('docroot', 'admin'), new lang_string('configdocroot', 'admin'), 'http://docs.moodle.org', PARAM_URL)); 206 $ltemp = array('' => get_string('forceno')); 207 $ltemp += get_string_manager()->get_list_of_translations(true); 208 $temp->add(new admin_setting_configselect('doclang', get_string('doclang', 'admin'), get_string('configdoclang', 'admin'), '', $ltemp)); 209 $temp->add(new admin_setting_configcheckbox('doctonewwindow', new lang_string('doctonewwindow', 'admin'), new lang_string('configdoctonewwindow', 'admin'), 0)); 210 $ADMIN->add('appearance', $temp); 211 212 $temp = new admin_externalpage('mypage', new lang_string('mypage', 'admin'), $CFG->wwwroot . '/my/indexsys.php', 213 'moodle/my:configsyspages'); 214 $ADMIN->add('appearance', $temp); 215 216 $temp = new admin_externalpage('profilepage', new lang_string('myprofile', 'admin'), $CFG->wwwroot . '/user/profilesys.php', 217 'moodle/my:configsyspages'); 218 $ADMIN->add('appearance', $temp); 219 220 // coursecontact is the person responsible for course - usually manages enrolments, receives notification, etc. 221 $temp = new admin_settingpage('coursecontact', new lang_string('courses')); 222 $temp->add(new admin_setting_special_coursecontact()); 223 $temp->add(new admin_setting_configcheckbox('courselistshortnames', 224 new lang_string('courselistshortnames', 'admin'), 225 new lang_string('courselistshortnames_desc', 'admin'), 0)); 226 $temp->add(new admin_setting_configtext('coursesperpage', new lang_string('coursesperpage', 'admin'), new lang_string('configcoursesperpage', 'admin'), 20, PARAM_INT)); 227 $temp->add(new admin_setting_configtext('courseswithsummarieslimit', new lang_string('courseswithsummarieslimit', 'admin'), new lang_string('configcourseswithsummarieslimit', 'admin'), 10, PARAM_INT)); 228 $temp->add(new admin_setting_configtext('courseoverviewfileslimit', new lang_string('courseoverviewfileslimit'), 229 new lang_string('configcourseoverviewfileslimit', 'admin'), 1, PARAM_INT)); 230 $temp->add(new admin_setting_configtext('courseoverviewfilesext', new lang_string('courseoverviewfilesext'), 231 new lang_string('configcourseoverviewfilesext', 'admin'), '.jpg,.gif,.png')); 232 $ADMIN->add('appearance', $temp); 233 234 $temp = new admin_settingpage('ajax', new lang_string('ajaxuse')); 235 $temp->add(new admin_setting_configcheckbox('useexternalyui', new lang_string('useexternalyui', 'admin'), new lang_string('configuseexternalyui', 'admin'), 0)); 236 $temp->add(new admin_setting_configcheckbox('yuicomboloading', new lang_string('yuicomboloading', 'admin'), new lang_string('configyuicomboloading', 'admin'), 1)); 237 $setting = new admin_setting_configcheckbox('cachejs', new lang_string('cachejs', 'admin'), new lang_string('cachejs_help', 'admin'), 1); 238 $setting->set_updatedcallback('js_reset_all_caches'); 239 $temp->add($setting); 240 $temp->add(new admin_setting_configcheckbox('modchooserdefault', new lang_string('modchooserdefault', 'admin'), new lang_string('configmodchooserdefault', 'admin'), 1)); 241 $temp->add(new admin_setting_configcheckbox('modeditingmenu', new lang_string('modeditingmenu', 'admin'), new lang_string('modeditingmenu_desc', 'admin'), 1)); 242 $temp->add(new admin_setting_configcheckbox('blockeditingmenu', new lang_string('blockeditingmenu', 'admin'), new lang_string('blockeditingmenu_desc', 'admin'), 1)); 243 $ADMIN->add('appearance', $temp); 244 245 // link to tag management interface 246 $ADMIN->add('appearance', new admin_externalpage('managetags', new lang_string('managetags', 'tag'), $CFG->wwwroot.'/tag/manage.php', 'moodle/tag:manage')); 247 248 $temp = new admin_settingpage('additionalhtml', new lang_string('additionalhtml', 'admin')); 249 $temp->add(new admin_setting_heading('additionalhtml_heading', new lang_string('additionalhtml_heading', 'admin'), new lang_string('additionalhtml_desc', 'admin'))); 250 $temp->add(new admin_setting_configtextarea('additionalhtmlhead', new lang_string('additionalhtmlhead', 'admin'), new lang_string('additionalhtmlhead_desc', 'admin'), '', PARAM_RAW)); 251 $temp->add(new admin_setting_configtextarea('additionalhtmltopofbody', new lang_string('additionalhtmltopofbody', 'admin'), new lang_string('additionalhtmltopofbody_desc', 'admin'), '', PARAM_RAW)); 252 $temp->add(new admin_setting_configtextarea('additionalhtmlfooter', new lang_string('additionalhtmlfooter', 'admin'), new lang_string('additionalhtmlfooter_desc', 'admin'), '', PARAM_RAW)); 253 $ADMIN->add('appearance', $temp); 254 255 } // end of speedup 256
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:29:05 2014 | Cross-referenced by PHPXref 0.7.1 |