]> git.mjollnir.org Git - moodle.git/commitdiff
Fixes for Bug MDL-8617 "Implement groupings & course modules..."
authornfreear <nfreear>
Thu, 22 Feb 2007 12:59:39 +0000 (12:59 +0000)
committernfreear <nfreear>
Thu, 22 Feb 2007 12:59:39 +0000 (12:59 +0000)
group/db/dbgroupinglib.php

index aa06598334eb6d5d854215e95ecc9c30feb1fe48..9971ba23a92a5c40cec9379362a1f408cb7e5a17 100644 (file)
@@ -124,20 +124,19 @@ function groups_db_get_grouping_settings($groupingid) {
  * @return int The id of the grouping or false if there is no such id recorded 
  * or if an error occurred. 
  */
-function groups_db_get_grouping_for_coursemodule($coursemoduleid) {
-       if (!$coursemoduleid) {
-               $groupingid = false;
-       } else {
-               $record = get_record('course_modules', 'id', $coursemoduleid, 'id, ' .
-                                            'groupingid');
-               if (!$record) {
-                       $groupingid = false;
-               } else {
-                       $groupingid = $record->groupingid;
-               }
-       }
-       
-       return $groupingid;
+function groups_db_get_grouping_for_coursemodule($cm) {
+       if (is_object($cm) and isset($cm->course) and isset($cm->groupingid)) {
+        //Do NOT rely on cm->module!
+        return $cm->groupingid;
+    } elseif (is_numeric($cm)) {
+        // Treat param as the course module ID.
+        $coursemoduleid = $cm;
+        $record = get_record('course_modules', 'id', $coursemoduleid, 'id, groupingid');
+        if ($record and isset($record->groupingid)) {
+            return $record->groupingid;
+        }
+    }
+    return false;
 }