guest = invité ?

guest = invité ?

par Thirot Jean-Luc,
Nombre de réponses : 5
Le message de Colin connecté, identifié et pourtant invité soulève la question suivante.
Est-ce que le rôle moodle/legacy:guest correspond à l'utilisateur "normalement" non identifié "guest (invité)" ?



Moyenne des évaluations  -
En réponse à Thirot Jean-Luc

Re: guest = invité ?

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

je dirais "oui", plus ou moins...

En fait, il correspond surtout à ce rôle dans les versions jusqu'à Moodle 1.6, et il peut y avoir de légères différences ensuite.

Il faut bien comprendre que le rôle invité est un rôle spécial, dont les droits effectifs sur les capacités sont (en partie) codés en interne, et ne tiennent donc pas compte des changements que l'on peut y apporter... et donc du comportement que l'on s'attend à obtenir.

Cordialement,
Séverin


En réponse à Séverin Terrier

Re: guest = invité ?

par Nicolas Martignoni,
Avatar Développeurs Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

> dont les droits effectifs sur les capacités sont (en partie) codés en interne, et ne tiennent donc pas compte des changements que l'on peut y apporter... et donc du comportement que l'on s'attend à obtenir.

Ce que tu décris, Séverin, provient de la capacité moodle/legacy:guest. Cette capacité a notamment une fonction d'assurance de compatibilité par rapport aux anciennes versions. En effet le code contient encore quelques appels à la fonction obsolète isguest(), qui tient compte de la capacité en question.

En réponse à Thirot Jean-Luc

Re: guest = invité ?

par Nicolas Martignoni,
Avatar Développeurs Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Attention aux confusions !

  1. moodle/legacy:guest n'est pas un rôle, mais une capacité !
  2. cette capacité est en effet autorisée pour le rôle Invité (guest en anglais).
En réponse à Nicolas Martignoni

Re: guest = invité ?

par Thirot Jean-Luc,
Donc un utilisateur non identifié (invité) obtient les droits/capacités correspondant au rôle qui a la capacité moodle/legacy:guest.
Si aucun rôle n'a cette capacité alors les "invités" n'ont aucune capacité.
J'ai vérifié sur la version 1.8.4 et il ne faut pas enlever la capacité "
moodle/legacy:guest" sinon la gestion des capacités en est perturbée pour l'invité (il est possible d'entrer dans un cours du type invité avec clef sans la clef !).
"invité" pourrait (devrait) hériter des capacités par défaut enregistrées avec
moodle/legacy:guest?

J'ai vérifié 2x et aucun autre rôle n'a la capacité moodle/legacy:guest

La confusion est facile car l'utilisateur non identifié "invité" existe forcément même si la capacité legay/guest n'est pas attribuée à un rôle.

PS: ne pas oublier "admin" et "authenticated user"


En réponse à Thirot Jean-Luc

Re: guest = invité ?

par Nicolas Martignoni,
Avatar Développeurs Avatar Développeurs de plugins Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs

Pas tout à fait. C'est un tout petit peu différent :

  1. Un utilisateur non identifié obtient dans le Moodle le rôle spécifié par le paramètre Rôle des utilisateurs non connectés dans les "Règles utilisateurs" de l'administration.
  2. Un utilisateur non identifié obtient dans les cours du Moodle où il peut entrer comme invité le rôle spécifié par le paramètre Rôle pour utilisateur invité dans les "Règles utilisateurs" de l'administration.
  3. Sauf très très très bonne raison, il ne faut pas changer ces deux paramètres.
  4. Sauf d'autres très très très bonnes raisons, il ne faut pas modifier la permission de la capacité moodle/legacy:guest dans le rôle invité, sans quoi un certain nombre de choses non désirables se passeront, puisque tous les appels à la fonction obsolète isguest() livreront un résultat erroné.
  5. Tu confonds rôle et capacité : moodle/legacy:guest est une capacité. Cette capacité a la permission Autoriser dans le rôle Invité. Cette capacité sert à la compatibilité (voir point précédent) et aussi à restaurer le rôle à ses réglages par défaut, quand clique sur le bouton Réinitialiser le rôle.