Bloc "Mes cours" : liste des cours ou je suis inscrit seulement ?

Bloc "Mes cours" : liste des cours ou je suis inscrit seulement ?

par Nicolas Sicard,
Nombre de réponses : 2
Hello,

J'ai remarqué que le bloc "Mes cours" contient la liste des cours accessibles par l'utilisateur et non la liste des cours où l'utilisateur est inscrit. La nuance n'est pas anodine.

Par exemple, on peut créer un rôle particulier permettant aux utilisateurs qui en dispose de visualiser le contenu de tous les cours du site, ou de tous les cours d'une catégorie... sans y être inscrits. Ces utilisateurs "voient" alors tous ces cours dans leur liste "Mes cours", potentiellement très longue...

La fonction utilisée dans le bloc (get_my_courses) récupère en effet tous les cours pour lesquel l'utilisateur a la capacité moodle/course:view. Est-il possible de modifier très légèrement le code de ce bloc (quitte à en créer un nouveau quasi identique mais avec un autre nom) pour ne conserver dans la liste que les cours où l'utilisateur est inscrit ?

nico
Moyenne des évaluations  -
En réponse à Nicolas Sicard

Re: Bloc "Mes cours" : liste des cours ou je suis inscrit seulement ?

par Séverin Terrier,
Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs
Bonjour,

je ne suis pas sur de bien comprendre.

en effet, il est possible d'attribuer un rôle à un certain contexte (ou niveau), sachant qu'il y aura héritage dans les contextes inférieurs.

En résumé :
  • si on attribue à quelqu'un le rôle "étudiant" à un cours, il a accès à ce cours.
  • si on attribue à quelqu'un le rôle "étudiant" à une catégorie de cours, il a accès à tous les cours de la catégorie (et des sous catégories éventuellement)
Je ne vois donc pas ce qu'il y a d'anormal à afficher tous les cours dans le bloc "Mes cours", sachant que la capacité moodle/course:view est celle permettant d'accéder à un cours...

cordialement,
Séverin
En réponse à Séverin Terrier

Re: Bloc "Mes cours" : liste des cours ou je suis inscrit seulement ?

par Nicolas Sicard,
Hello,

De mon point de vue, le comportement du bloc "Mes cours" n'est pas anormal. Il correspond simplement à un choix que je ne trouve pas toujours judicieux dans certaines situations.

Il y a une différence entre le fait de pouvoir accéder à un cours (ie avoir la capacité moodle/course:view) et le fait d'y être inscrit. En résumé, dans le premier cas on peut visualiser le contenu (ressources ou activités) mais on ne peut pas, la plupart du temps, participer aux activités (s'inscrire aux forums etc.).

Le tout est de définir le sens exact de "Mes cours". Sont-ce ceux auxquels j'ai accès (inscrit ou non), ou seulement ceux auxquels je suis inscrit ?

Prenons le cas concret d'un rôle de type "Inspector" qui permet à un utilisateur particulier (responsable de service, directeur etc.) qui peut être prof par ailleurs et donc inscrit à ce titre dans certains cours, d'accéder à tous les cours d'une catégorie voire du site entier. Cet utilisateur aura donc dans la liste de "Ses cours" tous les cours auxquels il a accès. Or la liste peut être très très longue... et sans grand intérêt.

C'est pourquoi je trouverais intéressant d'au moins laisser la possibilité de filtrer seulement les cours où l'utilisateur est inscrit.

Il me démange d'aller moi-même bidouiller le fichier source que je suis allé lire, mais je n'ai pas assez de connaissances en PHP et dans l'API de Moodle (il va falloir que je m'y mette sérieusement...) pour me lancer. Pourtant j'ai le sentiment que ce ne doit pas être grand chose (me trompe-je ?).

Je viens d'ailleurs de trouver une entrée dans le tracker à ce sujet, contenant des liens vers des discussions : http://tracker.moodle.org/browse/MDL-8902

nico