SmythSys IT Consulting

Moodle: hacer que las categorías no muestren cursos a los que no se tiene acceso

moodleA mi me gusta poner en la página de Moodle, un listado de categorías incluso si el usuario no se ha registrado. Así la gente externa puede ver las categorías que hay.

Pero, por defecto, si haces eso, cualquier usuario puede VER (no acceder) los cursos que hay en esas categorías. Y puede que no te interese (a mi no). Os explicamos cómo evitarlo.

Hay que modificar el fichero courses/renderer.php.  Como es un fichero del core, habrá que estar atento a las actualizaciones (cambiará el fichero). No nos gusta cambiar el core, pero ahora mismo no hemos visto otra manera de hacerlo.

  • Abre el fichero y ve a la función  coursecat_courses.
  • Justo encima de la línea: $content .= $this->coursecat_coursebox($chelper, $course, $classes); pon:
     if($course->can_access())
  • Salva el fichero y recarga la página. Ya tendría que estar resuelto.

A partir de ahora los usuarios pueden entrar en las categorías, pero no verán los cursos a los que no tienen acceso.

Nota: Esto también elimina de la página de Inicio los cursos incluso cuando estás registrado y el pie. Seguramente se puede evitar esto con alguna modificación del fichero renderer. Nosotros tuvimos que desactivar esta opción. Parece ser que por grupos puedes conseguir algo parecido.

Deja un comentario

Resumen de nuestra Política de Privacidad

  • Responsable: SmythSys IT Consulting SLNE.
  • Finalidad: Gestionar y moderar los comentarios.
  • Legitimación: Necesitas dar tu consentimiento para publicar un comentario.
  • Destinatarios: Tus datos se alojan en los servidores de OVH.
  • Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos en la dirección del responsable (en nuestra política de privacidad).