| Línea 71... | Línea 71... | 
          
            | 71 |      * and there is an area with the active grading method set to 'guide'.
 | 71 |      * and there is an area with the active grading method set to 'guide'.
 | 
          
            | 72 |      *
 | 72 |      *
 | 
          
            | 73 |      * @param settings_navigation $settingsnav {@link settings_navigation}
 | 73 |      * @param settings_navigation $settingsnav {@link settings_navigation}
 | 
          
            | 74 |      * @param navigation_node $node {@link navigation_node}
 | 74 |      * @param navigation_node $node {@link navigation_node}
 | 
          
            | 75 |      */
 | 75 |      */
 | 
          
            | 76 |     public function extend_settings_navigation(settings_navigation $settingsnav, navigation_node $node=null) {
 | 76 |     public function extend_settings_navigation(settings_navigation $settingsnav, ?navigation_node $node=null) {
 | 
          
            | 77 |         $node->add(get_string('definemarkingguide', 'gradingform_guide'),
 | 77 |         $node->add(get_string('definemarkingguide', 'gradingform_guide'),
 | 
          
            | 78 |             $this->get_editor_url(), settings_navigation::TYPE_CUSTOM,
 | 78 |             $this->get_editor_url(), settings_navigation::TYPE_CUSTOM,
 | 
          
            | 79 |             null, null, new pix_icon('icon', '', 'gradingform_guide'));
 | 79 |             null, null, new pix_icon('icon', '', 'gradingform_guide'));
 | 
          
            | 80 |     }
 | 80 |     }
 | 
          
            | Línea 87... | Línea 87... | 
          
            | 87 |      *
 | 87 |      *
 | 
          
            | 88 |      * @param global_navigation $navigation {@link global_navigation}
 | 88 |      * @param global_navigation $navigation {@link global_navigation}
 | 
          
            | 89 |      * @param navigation_node $node {@link navigation_node}
 | 89 |      * @param navigation_node $node {@link navigation_node}
 | 
          
            | 90 |      * @return void
 | 90 |      * @return void
 | 
          
            | 91 |      */
 | 91 |      */
 | 
          
            | 92 |     public function extend_navigation(global_navigation $navigation, navigation_node $node=null) {
 | 92 |     public function extend_navigation(global_navigation $navigation, ?navigation_node $node=null) {
 | 
          
            | 93 |         if (has_capability('moodle/grade:managegradingforms', $this->get_context())) {
 | 93 |         if (has_capability('moodle/grade:managegradingforms', $this->get_context())) {
 | 
          
            | 94 |             // No need for preview if user can manage forms, he will have link to manage.php in settings instead.
 | 94 |             // No need for preview if user can manage forms, he will have link to manage.php in settings instead.
 | 
          
            | 95 |             return;
 | 95 |             return;
 | 
          
            | 96 |         }
 | 96 |         }
 | 
          
            | 97 |         if ($this->is_form_defined() && ($options = $this->get_options()) && !empty($options['alwaysshowdefinition'])) {
 | 97 |         if ($this->is_form_defined() && ($options = $this->get_options()) && !empty($options['alwaysshowdefinition'])) {
 | 
          
            | Línea 855... | Línea 855... | 
          
            | 855 |         global $DB;
 | 855 |         global $DB;
 | 
          
            | 856 |         $currentgrade = $this->get_guide_filling();
 | 856 |         $currentgrade = $this->get_guide_filling();
 | 
          
            | 857 |         parent::update($data);
 | 857 |         parent::update($data);
 | 
          
            | Línea 858... | Línea 858... | 
          
            | 858 |  
 | 858 |  
 | 
          
            | - |   | 859 |         foreach ($data['criteria'] as $criterionid => $record) {
 | 
          
            | - |   | 860 |             // Hardcoding/defaulting to html format for new/existing record
 | 
          
            | - |   | 861 |             $record['remarkformat'] = FORMAT_HTML;
 | 
          
            | 859 |         foreach ($data['criteria'] as $criterionid => $record) {
 | 862 |  
 | 
          
            | 860 |             if (!array_key_exists($criterionid, $currentgrade['criteria'])) {
 | 863 |             if (!array_key_exists($criterionid, $currentgrade['criteria'])) {
 | 
          
            | 861 |                 $newrecord = array('instanceid' => $this->get_id(), 'criterionid' => $criterionid,
 | 864 |                 $newrecord = array('instanceid' => $this->get_id(), 'criterionid' => $criterionid,
 | 
          
            | 862 |                     'score' => $record['score'], 'remarkformat' => FORMAT_MOODLE);
 | 865 |                     'score' => $record['score'], 'remarkformat' => $record['remarkformat']);
 | 
          
            | 863 |                 if (isset($record['remark'])) {
 | 866 |                 if (isset($record['remark'])) {
 | 
          
            | 864 |                     $newrecord['remark'] = $record['remark'];
 | 867 |                     $newrecord['remark'] = $record['remark'];
 | 
          
            | 865 |                 }
 | 868 |                 }
 | 
          
            | 866 |                 $DB->insert_record('gradingform_guide_fillings', $newrecord);
 | 869 |                 $DB->insert_record('gradingform_guide_fillings', $newrecord);
 | 
          
            | 867 |             } else {
 | 870 |             } else {
 | 
          
            | 868 |                 $newrecord = array('id' => $currentgrade['criteria'][$criterionid]['id']);
 | 871 |                 $newrecord = array('id' => $currentgrade['criteria'][$criterionid]['id']);
 | 
          
            | 869 |                 foreach (array('score', 'remark'/*, 'remarkformat' TODO */) as $key) {
 | 872 |                 foreach (array('score', 'remark', 'remarkformat') as $key) {
 | 
          
            | 870 |                     if (isset($record[$key]) && $currentgrade['criteria'][$criterionid][$key] != $record[$key]) {
 | 873 |                     if (isset($record[$key]) && $currentgrade['criteria'][$criterionid][$key] != $record[$key]) {
 | 
          
            | 871 |                         $newrecord[$key] = $record[$key];
 | 874 |                         $newrecord[$key] = $record[$key];
 | 
          
            | 872 |                     }
 | 875 |                     }
 | 
          
            | 873 |                 }
 | 876 |                 }
 | 
          
            | Línea 1014... | Línea 1017... | 
          
            | 1014 |  *
 | 1017 |  *
 | 
          
            | 1015 |  * @return array
 | 1018 |  * @return array
 | 
          
            | 1016 |  */
 | 1019 |  */
 | 
          
            | 1017 | function gradingform_guide_get_fontawesome_icon_map(): array {
 | 1020 | function gradingform_guide_get_fontawesome_icon_map(): array {
 | 
          
            | 1018 |     return [
 | 1021 |     return [
 | 
          
            | 1019 |         'gradingform_guide:info' => 'fa-info-circle',
 | 1022 |         'gradingform_guide:info' => 'fa-circle-info',
 | 
          
            | 1020 |         'gradingform_guide:plus' => 'fa-plus',
 | 1023 |         'gradingform_guide:plus' => 'fa-circle-plus',
 | 
          
            | 1021 |     ];
 | 1024 |     ];
 | 
          
            | 1022 | }
 | 1025 | }
 |