[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/admin/settings/ -> appearance.php (source)

   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          'grades,grades|/grade/report/mygrades.php|grades
  31  messages,message|/message/index.php|message
  32  preferences,moodle|/user/preferences.php|preferences',
  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'),
  68          new lang_string('helpstartofweek', 'admin'), get_string('firstdayofweek', 'langconfig'),
  69      array(
  70              0 => new lang_string('sunday', 'calendar'),
  71              1 => new lang_string('monday', 'calendar'),
  72              2 => new lang_string('tuesday', 'calendar'),
  73              3 => new lang_string('wednesday', 'calendar'),
  74              4 => new lang_string('thursday', 'calendar'),
  75              5 => new lang_string('friday', 'calendar'),
  76              6 => new lang_string('saturday', 'calendar')
  77          )));
  78      $temp->add(new admin_setting_special_calendar_weekend());
  79      $options = array(365 => new lang_string('numyear', '', 1),
  80              270 => new lang_string('nummonths', '', 9),
  81              180 => new lang_string('nummonths', '', 6),
  82              150 => new lang_string('nummonths', '', 5),
  83              120 => new lang_string('nummonths', '', 4),
  84              90  => new lang_string('nummonths', '', 3),
  85              60  => new lang_string('nummonths', '', 2),
  86              30  => new lang_string('nummonth', '', 1),
  87              21  => new lang_string('numweeks', '', 3),
  88              14  => new lang_string('numweeks', '', 2),
  89              7  => new lang_string('numweek', '', 1),
  90              6  => new lang_string('numdays', '', 6),
  91              5  => new lang_string('numdays', '', 5),
  92              4  => new lang_string('numdays', '', 4),
  93              3  => new lang_string('numdays', '', 3),
  94              2  => new lang_string('numdays', '', 2),
  95              1  => new lang_string('numday', '', 1));
  96      $temp->add(new admin_setting_configselect('calendar_lookahead', new lang_string('configlookahead', 'admin'), new lang_string('helpupcominglookahead', 'admin'), 21, $options));
  97      $options = array();
  98      for ($i=1; $i<=20; $i++) {
  99          $options[$i] = $i;
 100      }
 101      $temp->add(new admin_setting_configselect('calendar_maxevents',new lang_string('configmaxevents','admin'),new lang_string('helpupcomingmaxevents', 'admin'),10,$options));
 102      $temp->add(new admin_setting_configcheckbox('enablecalendarexport', new lang_string('enablecalendarexport', 'admin'), new lang_string('configenablecalendarexport','admin'), 1));
 103  
 104      // Calendar custom export settings.
 105      $days = array(365 => new lang_string('numdays', '', 365),
 106              180 => new lang_string('numdays', '', 180),
 107              150 => new lang_string('numdays', '', 150),
 108              120 => new lang_string('numdays', '', 120),
 109              90  => new lang_string('numdays', '', 90),
 110              60  => new lang_string('numdays', '', 60),
 111              30  => new lang_string('numdays', '', 30),
 112              5  => new lang_string('numdays', '', 5));
 113      $temp->add(new admin_setting_configcheckbox('calendar_customexport', new lang_string('configcalendarcustomexport', 'admin'), new lang_string('helpcalendarcustomexport','admin'), 1));
 114      $temp->add(new admin_setting_configselect('calendar_exportlookahead', new lang_string('configexportlookahead','admin'), new lang_string('helpexportlookahead', 'admin'), 365, $days));
 115      $temp->add(new admin_setting_configselect('calendar_exportlookback', new lang_string('configexportlookback','admin'), new lang_string('helpexportlookback', 'admin'), 5, $days));
 116      $temp->add(new admin_setting_configtext('calendar_exportsalt', new lang_string('calendarexportsalt','admin'), new lang_string('configcalendarexportsalt', 'admin'), random_string(60)));
 117      $temp->add(new admin_setting_configcheckbox('calendar_showicalsource', new lang_string('configshowicalsource', 'admin'), new lang_string('helpshowicalsource','admin'), 1));
 118      $ADMIN->add('appearance', $temp);
 119  
 120      // blog
 121      $temp = new admin_settingpage('blog', new lang_string('blog','blog'), 'moodle/site:config', empty($CFG->enableblogs));
 122      $temp->add(new admin_setting_configcheckbox('useblogassociations', new lang_string('useblogassociations', 'blog'), new lang_string('configuseblogassociations','blog'), 1));
 123      $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'),
 124                                                                                                                                             BLOG_SITE_LEVEL => new lang_string('siteblogs','blog'),
 125                                                                                                                                             BLOG_USER_LEVEL => new lang_string('personalblogs','blog'))));
 126      $temp->add(new admin_setting_configcheckbox('useexternalblogs', new lang_string('useexternalblogs', 'blog'), new lang_string('configuseexternalblogs','blog'), 1));
 127      $temp->add(new admin_setting_configselect('externalblogcrontime', new lang_string('externalblogcrontime', 'blog'), new lang_string('configexternalblogcrontime', 'blog'), 86400,
 128          array(43200 => new lang_string('numhours', '', 12),
 129                86400 => new lang_string('numhours', '', 24),
 130                172800 => new lang_string('numdays', '', 2),
 131                604800 => new lang_string('numdays', '', 7))));
 132      $temp->add(new admin_setting_configtext('maxexternalblogsperuser', new lang_string('maxexternalblogsperuser','blog'), new lang_string('configmaxexternalblogsperuser', 'blog'), 1));
 133      $temp->add(new admin_setting_configcheckbox('blogusecomments', new lang_string('enablecomments', 'admin'), new lang_string('configenablecomments', 'admin'), 1));
 134      $temp->add(new admin_setting_configcheckbox('blogshowcommentscount', new lang_string('showcommentscount', 'admin'), new lang_string('configshowcommentscount', 'admin'), 1));
 135      $ADMIN->add('appearance', $temp);
 136  
 137      // Navigation settings
 138      $temp = new admin_settingpage('navigation', new lang_string('navigation'));
 139      $choices = array(
 140          HOMEPAGE_SITE => new lang_string('site'),
 141          HOMEPAGE_MY => new lang_string('mymoodle', 'admin'),
 142          HOMEPAGE_USER => new lang_string('userpreference', 'admin')
 143      );
 144      $temp->add(new admin_setting_configselect('defaulthomepage', new lang_string('defaulthomepage', 'admin'),
 145              new lang_string('configdefaulthomepage', 'admin'), HOMEPAGE_MY, $choices));
 146      $temp->add(new admin_setting_configcheckbox('allowguestmymoodle', new lang_string('allowguestmymoodle', 'admin'), new lang_string('configallowguestmymoodle', 'admin'), 1));
 147      $temp->add(new admin_setting_configcheckbox('navshowfullcoursenames', new lang_string('navshowfullcoursenames', 'admin'), new lang_string('navshowfullcoursenames_help', 'admin'), 0));
 148      $temp->add(new admin_setting_configcheckbox('navshowcategories', new lang_string('navshowcategories', 'admin'), new lang_string('confignavshowcategories', 'admin'), 1));
 149      $temp->add(new admin_setting_configcheckbox('navshowmycoursecategories', new lang_string('navshowmycoursecategories', 'admin'), new lang_string('navshowmycoursecategories_help', 'admin'), 0));
 150      $temp->add(new admin_setting_configcheckbox('navshowallcourses', new lang_string('navshowallcourses', 'admin'), new lang_string('confignavshowallcourses', 'admin'), 0));
 151      $temp->add(new admin_setting_configcheckbox('navexpandmycourses', new lang_string('navexpandmycourses', 'admin'), new lang_string('navexpandmycourses_desc', 'admin'), 1));
 152      $sortoptions = array(
 153          'sortorder' => new lang_string('sort_sortorder', 'admin'),
 154          'fullname' => new lang_string('sort_fullname', 'admin'),
 155          'shortname' => new lang_string('sort_shortname', 'admin'),
 156          'idnumber' => new lang_string('sort_idnumber', 'admin'),
 157      );
 158      $temp->add(new admin_setting_configselect('navsortmycoursessort', new lang_string('navsortmycoursessort', 'admin'), new lang_string('navsortmycoursessort_help', 'admin'), 'sortorder', $sortoptions));
 159      $temp->add(new admin_setting_configtext('navcourselimit',new lang_string('navcourselimit','admin'),new lang_string('confignavcourselimit', 'admin'),20,PARAM_INT));
 160      $temp->add(new admin_setting_configcheckbox('usesitenameforsitepages', new lang_string('usesitenameforsitepages', 'admin'), new lang_string('configusesitenameforsitepages', 'admin'), 0));
 161      $temp->add(new admin_setting_configcheckbox('linkadmincategories', new lang_string('linkadmincategories', 'admin'), new lang_string('linkadmincategories_help', 'admin'), 0));
 162      $temp->add(new admin_setting_configcheckbox('linkcoursesections', new lang_string('linkcoursesections', 'admin'), new lang_string('linkcoursesections_help', 'admin'), 0));
 163      $temp->add(new admin_setting_configcheckbox('navshowfrontpagemods', new lang_string('navshowfrontpagemods', 'admin'), new lang_string('navshowfrontpagemods_help', 'admin'), 1));
 164      $temp->add(new admin_setting_configcheckbox('navadduserpostslinks', new lang_string('navadduserpostslinks', 'admin'), new lang_string('navadduserpostslinks_help', 'admin'), 1));
 165  
 166      $ADMIN->add('appearance', $temp);
 167  
 168      // "htmlsettings" settingpage
 169      $temp = new admin_settingpage('htmlsettings', new lang_string('htmlsettings', 'admin'));
 170      $temp->add(new admin_setting_configcheckbox('formatstringstriptags', new lang_string('stripalltitletags', 'admin'), new lang_string('configstripalltitletags', 'admin'), 1));
 171      $temp->add(new admin_setting_emoticons());
 172      $ADMIN->add('appearance', $temp);
 173      $ADMIN->add('appearance', new admin_externalpage('resetemoticons', new lang_string('emoticonsreset', 'admin'),
 174          new moodle_url('/admin/resetemoticons.php'), 'moodle/site:config', true));
 175  
 176  
 177      // The "media" subpage.
 178      $temp = new admin_settingpage('mediasettings', get_string('mediasettings', 'core_media'));
 179  
 180      $temp->add(new admin_setting_heading('mediaformats', get_string('mediaformats', 'core_media'),
 181              format_text(get_string('mediaformats_desc', 'core_media'), FORMAT_MARKDOWN)));
 182  
 183      // External services.
 184      $temp->add(new admin_setting_configcheckbox('core_media_enable_youtube',
 185              get_string('siteyoutube', 'core_media'), get_string('siteyoutube_desc', 'core_media'), 1));
 186      $temp->add(new admin_setting_configcheckbox('core_media_enable_vimeo',
 187              get_string('sitevimeo', 'core_media'), get_string('sitevimeo_desc', 'core_media'), 0));
 188  
 189      // Options which require Flash.
 190      $temp->add(new admin_setting_configcheckbox('core_media_enable_mp3',
 191              get_string('mp3audio', 'core_media'), get_string('mp3audio_desc', 'core_media'), 1));
 192      $temp->add(new admin_setting_configcheckbox('core_media_enable_flv',
 193              get_string('flashvideo', 'core_media'), get_string('flashvideo_desc', 'core_media'), 1));
 194      $temp->add(new admin_setting_configcheckbox('core_media_enable_swf',
 195              get_string('flashanimation', 'core_media'), get_string('flashanimation_desc', 'core_media'), 1));
 196  
 197      // HTML 5 media.
 198      // Audio now enabled by default so that it can provide a fallback for mp3 on devices without flash.
 199      $temp->add(new admin_setting_configcheckbox('core_media_enable_html5audio',
 200              get_string('html5audio', 'core_media'), get_string('html5audio_desc', 'core_media'), 1));
 201      // Video now enabled by default so it can provide mp4 support.
 202      $temp->add(new admin_setting_configcheckbox('core_media_enable_html5video',
 203              get_string('html5video', 'core_media'), get_string('html5video_desc', 'core_media'), 1));
 204  
 205      // Legacy players.
 206      $temp->add(new admin_setting_heading('legacymediaformats',
 207              get_string('legacyheading', 'core_media'), get_string('legacyheading_desc', 'core_media')));
 208  
 209      $temp->add(new admin_setting_configcheckbox('core_media_enable_qt',
 210              get_string('legacyquicktime', 'core_media'), get_string('legacyquicktime_desc', 'core_media'), 1));
 211      $temp->add(new admin_setting_configcheckbox('core_media_enable_wmp',
 212              get_string('legacywmp', 'core_media'), get_string('legacywmp_desc', 'core_media'), 1));
 213      $temp->add(new admin_setting_configcheckbox('core_media_enable_rm',
 214              get_string('legacyreal', 'core_media'), get_string('legacyreal_desc', 'core_media'), 1));
 215  
 216      $ADMIN->add('appearance', $temp);
 217  
 218  
 219      // "documentation" settingpage
 220      $temp = new admin_settingpage('documentation', new lang_string('moodledocs'));
 221      $temp->add(new admin_setting_configtext('docroot', new lang_string('docroot', 'admin'), new lang_string('configdocroot', 'admin'), 'http://docs.moodle.org', PARAM_URL));
 222      $ltemp = array('' => get_string('forceno'));
 223      $ltemp += get_string_manager()->get_list_of_translations(true);
 224      $temp->add(new admin_setting_configselect('doclang', get_string('doclang', 'admin'), get_string('configdoclang', 'admin'), '', $ltemp));
 225      $temp->add(new admin_setting_configcheckbox('doctonewwindow', new lang_string('doctonewwindow', 'admin'), new lang_string('configdoctonewwindow', 'admin'), 0));
 226      $ADMIN->add('appearance', $temp);
 227  
 228      $temp = new admin_externalpage('mypage', new lang_string('mypage', 'admin'), $CFG->wwwroot . '/my/indexsys.php',
 229              'moodle/my:configsyspages');
 230      $ADMIN->add('appearance', $temp);
 231  
 232      $temp = new admin_externalpage('profilepage', new lang_string('myprofile', 'admin'), $CFG->wwwroot . '/user/profilesys.php',
 233              'moodle/my:configsyspages');
 234      $ADMIN->add('appearance', $temp);
 235  
 236      // coursecontact is the person responsible for course - usually manages enrolments, receives notification, etc.
 237      $temp = new admin_settingpage('coursecontact', new lang_string('courses'));
 238      $temp->add(new admin_setting_special_coursecontact());
 239      $temp->add(new admin_setting_configcheckbox('courselistshortnames',
 240              new lang_string('courselistshortnames', 'admin'),
 241              new lang_string('courselistshortnames_desc', 'admin'), 0));
 242      $temp->add(new admin_setting_configtext('coursesperpage', new lang_string('coursesperpage', 'admin'), new lang_string('configcoursesperpage', 'admin'), 20, PARAM_INT));
 243      $temp->add(new admin_setting_configtext('courseswithsummarieslimit', new lang_string('courseswithsummarieslimit', 'admin'), new lang_string('configcourseswithsummarieslimit', 'admin'), 10, PARAM_INT));
 244      $temp->add(new admin_setting_configtext('courseoverviewfileslimit', new lang_string('courseoverviewfileslimit'),
 245              new lang_string('configcourseoverviewfileslimit', 'admin'), 1, PARAM_INT));
 246      $temp->add(new admin_setting_configtext('courseoverviewfilesext', new lang_string('courseoverviewfilesext'),
 247              new lang_string('configcourseoverviewfilesext', 'admin'), '.jpg,.gif,.png'));
 248      $ADMIN->add('appearance', $temp);
 249  
 250      $temp = new admin_settingpage('ajax', new lang_string('ajaxuse'));
 251      $temp->add(new admin_setting_configcheckbox('useexternalyui', new lang_string('useexternalyui', 'admin'), new lang_string('configuseexternalyui', 'admin'), 0));
 252      $temp->add(new admin_setting_configcheckbox('yuicomboloading', new lang_string('yuicomboloading', 'admin'), new lang_string('configyuicomboloading', 'admin'), 1));
 253      $setting = new admin_setting_configcheckbox('cachejs', new lang_string('cachejs', 'admin'), new lang_string('cachejs_help', 'admin'), 1);
 254      $setting->set_updatedcallback('js_reset_all_caches');
 255      $temp->add($setting);
 256      $temp->add(new admin_setting_configcheckbox('modchooserdefault', new lang_string('modchooserdefault', 'admin'), new lang_string('configmodchooserdefault', 'admin'), 1));
 257      $temp->add(new admin_setting_configcheckbox('modeditingmenu', new lang_string('modeditingmenu', 'admin'), new lang_string('modeditingmenu_desc', 'admin'), 1));
 258      $temp->add(new admin_setting_configcheckbox('blockeditingmenu', new lang_string('blockeditingmenu', 'admin'), new lang_string('blockeditingmenu_desc', 'admin'), 1));
 259      $ADMIN->add('appearance', $temp);
 260  
 261      // link to tag management interface
 262      $ADMIN->add('appearance', new admin_externalpage('managetags', new lang_string('managetags', 'tag'), $CFG->wwwroot.'/tag/manage.php', 'moodle/tag:manage'));
 263  
 264      $temp = new admin_settingpage('additionalhtml', new lang_string('additionalhtml', 'admin'));
 265      $temp->add(new admin_setting_heading('additionalhtml_heading', new lang_string('additionalhtml_heading', 'admin'), new lang_string('additionalhtml_desc', 'admin')));
 266      $temp->add(new admin_setting_configtextarea('additionalhtmlhead', new lang_string('additionalhtmlhead', 'admin'), new lang_string('additionalhtmlhead_desc', 'admin'), '', PARAM_RAW));
 267      $temp->add(new admin_setting_configtextarea('additionalhtmltopofbody', new lang_string('additionalhtmltopofbody', 'admin'), new lang_string('additionalhtmltopofbody_desc', 'admin'), '', PARAM_RAW));
 268      $temp->add(new admin_setting_configtextarea('additionalhtmlfooter', new lang_string('additionalhtmlfooter', 'admin'), new lang_string('additionalhtmlfooter_desc', 'admin'), '', PARAM_RAW));
 269      $ADMIN->add('appearance', $temp);
 270  
 271  } // end of speedup
 272  


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1