From 2ded89d564a94deefa8945cefffa2a83bf1e56bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 14 Nov 2012 19:15:56 +0100 Subject: [PATCH] MDL-36547 fix section handling in precreate_course_module() --- lib/phpunit/classes/module_generator.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/phpunit/classes/module_generator.php b/lib/phpunit/classes/module_generator.php index e6846575b07..1e536b5ebd3 100644 --- a/lib/phpunit/classes/module_generator.php +++ b/lib/phpunit/classes/module_generator.php @@ -87,13 +87,12 @@ abstract class phpunit_module_generator { $cm->course = $courseid; $cm->module = $DB->get_field('modules', 'id', array('name'=>$modulename)); $cm->instance = 0; - $cm->section = isset($options['section']) ? $options['section'] : 0; $cm->idnumber = isset($options['idnumber']) ? $options['idnumber'] : 0; $cm->added = time(); $columns = $DB->get_columns('course_modules'); foreach ($options as $key=>$value) { - if ($key === 'id' or !isset($columns[$key])) { + if ($key === 'id' or !isset($columns[$key]) or $key === 'section') { continue; } if (property_exists($cm, $key)) { @@ -105,7 +104,11 @@ abstract class phpunit_module_generator { $cm->id = $DB->insert_record('course_modules', $cm); $cm->coursemodule = $cm->id; - add_mod_to_section($cm); + // add_mod_to_section() expects sectionnum, not id, crazy! + $cm->section = isset($options['section']) ? $options['section'] : 0; + $sectionid = add_mod_to_section($cm); + // Store the real section id. + $DB->set_field('course_modules', 'section', $sectionid, array('id'=>$cm->id)); return $cm->id; }