From e25a7aa27ee13217df3210deb11b4ce758dd2099 Mon Sep 17 00:00:00 2001 From: Adrian Greeve Date: Tue, 8 Jan 2013 13:17:24 +0800 Subject: [PATCH] MDL-30797 - backup groups: Added a parameter to the groups_assign_grouping function. $timeadded has now been included so that the backup / restore functions can now use this API rather than duplicating the code. --- backup/moodle2/restore_stepslib.php | 5 ++++- group/lib.php | 9 +++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/backup/moodle2/restore_stepslib.php b/backup/moodle2/restore_stepslib.php index 8a2578a272e..d2b1c3a7292 100644 --- a/backup/moodle2/restore_stepslib.php +++ b/backup/moodle2/restore_stepslib.php @@ -844,8 +844,11 @@ class restore_groups_structure_step extends restore_structure_step { public function process_grouping_group($data) { global $CFG; + require_once($CFG->dirroot.'/group/lib.php'); - groups_assign_grouping($this->get_new_parentid('grouping'), $this->get_mappingid('group', $data->groupid)); + + $data = (object)$data; + groups_assign_grouping($this->get_new_parentid('grouping'), $this->get_mappingid('group', $data->groupid), $data->timeadded); } protected function after_execute() { diff --git a/group/lib.php b/group/lib.php index 024e81b0ed8..c9e2cc00a3d 100644 --- a/group/lib.php +++ b/group/lib.php @@ -634,9 +634,10 @@ function groups_parse_name($format, $groupnumber) { * * @param int groupingid * @param int groupid + * @param int $timeadded The time the group was added to the grouping. * @return bool true or exception */ -function groups_assign_grouping($groupingid, $groupid) { +function groups_assign_grouping($groupingid, $groupid, $timeadded = null) { global $DB; if ($DB->record_exists('groupings_groups', array('groupingid'=>$groupingid, 'groupid'=>$groupid))) { @@ -645,7 +646,11 @@ function groups_assign_grouping($groupingid, $groupid) { $assign = new stdClass(); $assign->groupingid = $groupingid; $assign->groupid = $groupid; - $assign->timeadded = time(); + if ($timeadded != null) { + $assign->timeadded = (integer)$timeadded; + } else { + $assign->timeadded = time(); + } $DB->insert_record('groupings_groups', $assign); return true; -- 2.43.0