function course_get_course in Course 6
Same name and namespace in other branches
- 8.3 course.module \course_get_course()
 - 8.2 course.module \course_get_course()
 - 7.2 course.module \course_get_course()
 - 7 course.module \course_get_course()
 - 3.x course.module \course_get_course()
 
Get a loaded Course.
Parameters
stdClass $node: The course node object.
stdClass $account: The user with which to instantiate course objects and fulfillment.
Return value
34 calls to course_get_course()
- CourseGradeTestCase::testCourseFinalGrade in tests/
CourseGradeTestCase.test  - Test that the final grade is calculated correctly.
 - CourseGradeTestCase::testCourseGradeAccess in tests/
CourseGradeTestCase.test  - Test that the course grade access plugin functions properly.
 - CourseObject::setCourse in includes/
course_object.core.inc  - Set the Course for this CourseObject.
 - CourseObjectAccessConditionalTestCase::testTimeAfterCompletion in tests/
CourseObjectAccessConditionalTestCase.test  - Test the completion based trigger for object access.
 - CourseObjectAccessConditionalTestCase::testTimeAfterStart in tests/
CourseObjectAccessConditionalTestCase.test  - Test the time based trigger for object access.
 
File
- ./
course.module, line 1674  - course.module Core functionality for Courses.
 
Code
function course_get_course($node, $account = NULL, $flush = FALSE) {
  if (!$node) {
    return FALSE;
  }
  if (!$account) {
    global $user;
    $account = $user;
  }
  static $courses = array();
  if ($flush || !isset($courses[$node->nid]) || !isset($courses[$node->nid][$account->uid])) {
    $course = new Course($node, $account);
    $courses[$node->nid][$account->uid] = $course;
  }
  return $courses[$node->nid][$account->uid];
}