I have $USER->id and $course->id how do i test if the user is enrolled

I have $USER->id and $course->id how do i test if the user is enrolled

par dirty slit,
Nombre de réponses : 3
so i have the user id and the course id

whats the code to test if the user is enrolled in the course?
Moyenne des évaluations  -
En réponse à dirty slit

Re: I have $USER->id and $course->id how do i test if the user is enrolled

par Sam Hemelryk,
Hi,

The following will return true if the user is enrolled in the course given $courseid, and $userid.


$context = get_context_instance(CONTEXT_COURSE, $courseid);
is_enrolled($context, $userid);


Cheers
Sam
Moyenne des évaluations Useful (2)
En réponse à Sam Hemelryk

Re: I have $USER->id and $course->id how do i test if the user is enrolled

par dirty slit,
Hi Sam,

I am currently using moodle 1.9 and I get this error with your code

Fatal error: Call to undefined function is_enrolled()

The function is_enrolled() is not listed here either http://xref.moodle.org/nav.html?_functions


How are you able to use this function?
En réponse à dirty slit

Re: I have $USER->id and $course->id how do i test if the user is enrolled

par Shane Elliott,
Avatar Core developers Avatar Plugin developers
Sam was referring to a moodle 2.0 function. In 1.9 the concept of "enrolled" is a bit different. You are really checking who can view the course so the following should suffice:

$context = get_context_instance(CONTEXT_COURSE, $courseid);
if (has_capability('moodle/course:view', $context, $userid)) {
/// user can view the course
}


HTH
Shane.