MDL-54891 Block_activity_results: Allow admin defaults
[moodle.git] / blocks / activity_results / edit_form.php
index 0a07151..aa3f0b0 100644 (file)
@@ -42,6 +42,9 @@ class block_activity_results_edit_form extends block_edit_form {
     protected function specific_definition($mform) {
         global $DB;
 
     protected function specific_definition($mform) {
         global $DB;
 
+        // Load defaults.
+        $blockconfig = get_config('block_activity_results');
+
         // Fields for editing activity_results block title and contents.
         $mform->addElement('header', 'configheader', get_string('blocksettings', 'block'));
 
         // Fields for editing activity_results block title and contents.
         $mform->addElement('header', 'configheader', get_string('blocksettings', 'block'));
 
@@ -64,15 +67,25 @@ class block_activity_results_edit_form extends block_edit_form {
 
         $mform->addElement('text', 'config_showbest',
                 get_string('config_show_best', 'block_activity_results'), array('size' => 3));
 
         $mform->addElement('text', 'config_showbest',
                 get_string('config_show_best', 'block_activity_results'), array('size' => 3));
-        $mform->setDefault('config_showbest', 3);
+        $mform->setDefault('config_showbest', $blockconfig->config_showbest);
         $mform->setType('config_showbest', PARAM_INT);
         $mform->setType('config_showbest', PARAM_INT);
+        if ($blockconfig->config_showbest_locked) {
+            $mform->freeze('config_showbest');
+        }
 
         $mform->addElement('text', 'config_showworst',
                 get_string('config_show_worst', 'block_activity_results'), array('size' => 3));
 
         $mform->addElement('text', 'config_showworst',
                 get_string('config_show_worst', 'block_activity_results'), array('size' => 3));
-        $mform->setDefault('config_showworst', 0);
+        $mform->setDefault('config_showworst', $blockconfig->config_showworst);
         $mform->setType('config_showworst', PARAM_INT);
         $mform->setType('config_showworst', PARAM_INT);
+        if ($blockconfig->config_showworst_locked) {
+            $mform->freeze('config_showworst');
+        }
 
         $mform->addElement('selectyesno', 'config_usegroups', get_string('config_use_groups', 'block_activity_results'));
 
         $mform->addElement('selectyesno', 'config_usegroups', get_string('config_use_groups', 'block_activity_results'));
+        $mform->setDefault('config_usegroups', $blockconfig->config_usegroups);
+        if ($blockconfig->config_usegroups_locked) {
+            $mform->freeze('config_usegroups');
+        }
 
         $nameoptions = array(
             B_ACTIVITYRESULTS_NAME_FORMAT_FULL => get_string('config_names_full', 'block_activity_results'),
 
         $nameoptions = array(
             B_ACTIVITYRESULTS_NAME_FORMAT_FULL => get_string('config_names_full', 'block_activity_results'),
@@ -81,7 +94,10 @@ class block_activity_results_edit_form extends block_edit_form {
         );
         $mform->addElement('select', 'config_nameformat',
                 get_string('config_name_format', 'block_activity_results'), $nameoptions);
         );
         $mform->addElement('select', 'config_nameformat',
                 get_string('config_name_format', 'block_activity_results'), $nameoptions);
-        $mform->setDefault('config_nameformat', B_ACTIVITYRESULTS_NAME_FORMAT_FULL);
+        $mform->setDefault('config_nameformat', $blockconfig->config_nameformat);
+        if ($blockconfig->config_nameformat_locked) {
+            $mform->freeze('config_nameformat');
+        }
 
         $gradeeoptions = array(
             B_ACTIVITYRESULTS_GRADE_FORMAT_PCT => get_string('config_format_percentage', 'block_activity_results'),
 
         $gradeeoptions = array(
             B_ACTIVITYRESULTS_GRADE_FORMAT_PCT => get_string('config_format_percentage', 'block_activity_results'),
@@ -90,7 +106,10 @@ class block_activity_results_edit_form extends block_edit_form {
         );
         $mform->addElement('select', 'config_gradeformat',
                 get_string('config_grade_format', 'block_activity_results'), $gradeeoptions);
         );
         $mform->addElement('select', 'config_gradeformat',
                 get_string('config_grade_format', 'block_activity_results'), $gradeeoptions);
-        $mform->setDefault('config_gradeformat', B_ACTIVITYRESULTS_GRADE_FORMAT_PCT);
+        $mform->setDefault('config_gradeformat', $blockconfig->config_gradeformat);
+        if ($blockconfig->config_gradeformat_locked) {
+            $mform->freeze('config_gradeformat');
+        }
 
         $options = array();
         for ($i = 0; $i <= 5; $i++) {
 
         $options = array();
         for ($i = 0; $i <= 5; $i++) {
@@ -98,7 +117,10 @@ class block_activity_results_edit_form extends block_edit_form {
         }
         $mform->addElement('select', 'config_decimalpoints', get_string('config_decimalplaces', 'block_activity_results'),
                 $options);
         }
         $mform->addElement('select', 'config_decimalpoints', get_string('config_decimalplaces', 'block_activity_results'),
                 $options);
-        $mform->setDefault('config_decimalpoints', 2);
+        $mform->setDefault('config_decimalpoints', $blockconfig->config_decimalpoints);
         $mform->setType('config_decimalpoints', PARAM_INT);
         $mform->setType('config_decimalpoints', PARAM_INT);
+        if ($blockconfig->config_decimalpoints_locked) {
+            $mform->freeze('config_decimalpoints');
+        }
     }
 }
\ No newline at end of file
     }
 }
\ No newline at end of file