function course_get_course_object_by_id in Course 6
Same name and namespace in other branches
- 8.3 course.module \course_get_course_object_by_id()
- 8.2 course.module \course_get_course_object_by_id()
- 7.2 course.module \course_get_course_object_by_id()
- 7 course.module \course_get_course_object_by_id()
- 3.x course.module \course_get_course_object_by_id()
Get a course object by its identifier.
Parameters
int $coid: The numeric ID of the course object.
stdClass $account: If specified the CourseObject will be loaded with this user (for access and fulfillment tracking).
Return value
CourseObject|FALSE A loaded CourseObject or FALSE if no object found.
12 calls to course_get_course_object_by_id()
- CourseObjectBookTestCase::testBookCourseObject in modules/
course_book/ course_book.test - CourseObjectQuizTestCase::testQuizCourseObject in modules/
course_quiz/ course_quiz.test - CourseObjectTestCase::testCourseObjectBasicCrud in tests/
CourseObjectTestCase.test - Test basic save/load of CourseObjects.
- CourseObjectTestCase::testCourseObjectConfigurations in tests/
CourseObjectTestCase.test - Test CourseObject configurations.
- CourseObjectWebformTestCase::testWebformCourseObject in modules/
course_webform/ course_webform.test
File
- ./
course.module, line 1521 - course.module Core functionality for Courses.
Code
function course_get_course_object_by_id($coid, $account = NULL, $course = NULL) {
if (!$account) {
global $user;
$account = $user;
}
$available = course_get_handlers('object');
if (!is_numeric($coid)) {
return _course_get_course_object_by_uniqid($coid, $account, $course);
}
$result = db_query('SELECT * FROM {course_outline} WHERE coid = %d', $coid);
if ($row = db_fetch_object($result)) {
$ret = $available[$row->module][$row->object_type];
if (!class_exists($ret['class'])) {
drupal_set_message(t("Could not find class for %m-%c!", array(
'%m' => $row->module,
'%c' => $row->object_type,
)), 'error');
return FALSE;
}
else {
if (!$course) {
$course = new Course(node_load($row->nid), $account);
}
return new $ret['class']($row, $account, $course);
}
}
else {
return FALSE;
}
}