Proyectos de Subversion Moodle

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 11
Línea 83... Línea 83...
83
 
83
 
Línea 84... Línea 84...
84
        $transaction = $DB->start_delegated_transaction();
84
        $transaction = $DB->start_delegated_transaction();
85
 
85
 
-
 
86
        $gradeitemsids = [];
-
 
87
        foreach ($structure->get_sections() as $section) {
-
 
88
            // Only create a grade item for sections that contain at least one real question (not description).
-
 
89
            $hasrealquestion = false;
-
 
90
            foreach ($structure->get_slots_in_section($section->id) as $slot) {
-
 
91
                $hasrealquestion = $hasrealquestion || $structure->is_real_question($slot);
-
 
92
            }
-
 
93
            if (!$hasrealquestion) {
-
 
94
                continue;
-
 
95
            }
86
        $gradeitemsids = [];
96
 
87
        foreach ($structure->get_sections() as $section) {
97
            // Grade item required. Create it.
88
            $gradeitem = new stdClass();
98
            $gradeitem = new stdClass();
89
            $gradeitem->quizid = $quizid;
99
            $gradeitem->quizid = $quizid;
90
            $gradeitem->name = $section->heading;
100
            $gradeitem->name = $section->heading;
91
            $structure->create_grade_item($gradeitem);
101
            $structure->create_grade_item($gradeitem);
Línea 92... Línea 102...
92
            $gradeitemsids[$section->id] = $gradeitem->id;
102
            $gradeitemsids[$section->id] = $gradeitem->id;
-
 
103
        }
93
        }
104
 
-
 
105
        foreach ($structure->get_slots() as $slot) {
94
 
106
            if ($structure->is_real_question($slot->slot)) {
Línea 95... Línea 107...
95
        foreach ($structure->get_slots() as $slot) {
107
                $structure->update_slot_grade_item($slot, $gradeitemsids[$slot->section->id]);
96
            $structure->update_slot_grade_item($slot, $gradeitemsids[$slot->section->id]);
108
            }