para un alumno mostrar sus cursos

para un alumno mostrar sus cursos

de primitivo cachero -
Número de respuestas: 2

existe algo así? por más que he mirado módulos no he encontrado. dentro de un curso puedes ver los alumnos, pero... si un tutor, o administrador se va a un alumno en concreto para que le mostrase sus cursos (los cursos en los que está matriculado ese alumno). Tengo la query que realiza eso:

 

SELECT  
mdl_user.id as 'id Usuario'
,mdl_user.firstname as 'Nombre'
,mdl_user.lastname as 'Apellidos'
,mdl_course.id as 'id Curso'
,mdl_course_categories.name as 'categoria Curso'
,mdl_course.shortname as 'Ref. Curso'
,mdl_course.fullname as 'Curso'
FROM mdl_user
INNER JOIN mdl_role_assignments
ON (mdl_user.id = mdl_role_assignments.userid)
INNER JOIN mdl_context
ON (mdl_role_assignments.contextid = mdl_context.id)
INNER JOIN mdl_course
ON (mdl_context.instanceid = mdl_course.id)
INNER JOIN mdl_course_categories
ON (mdl_course.category = mdl_course_categories.id)
WHERE mdl_role_assignments.roleid =5;

Pero yo quería saber si existe esa funcionalidad en moodle ya mediante algún módulo o algo.

Muchas gracias

Promedio de valoraciones: -
En respuesta a primitivo cachero

Re: para un alumno mostrar sus cursos

de Xavier Paz -
Tienes dos opciones:
  • get_user_courses_bycap() que obtiene los cursos del usuario según las acciones que tiene permitidas sobre ellos. Por ejemplo, obtener todos los cursos visibles por el usuario.
  • get_my_courses() que solo consulta los cursos donde el usuario tiene un rol asociado, del tipo que sea.
La primera está en /lib/datalib.php: linea 775 y la segunda en /lib/accesslib.php: linea 926.