Bonjour,
Je m'essaye depuis peu au développement de modules pour Moodle et j'essuie déjà un échec.
admettons que le module s'appelle newmodule.
Sur la page view.php du module newmodule j'ai ajouté là où il faut :
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
require_capability('mod/newmodule:view', $context);
Sur la page db/access.php j'ai ajouté là où il faut :
'mod/newmodule:view' => array(
'captype' => 'read',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => array(
'student' => CAP_ALLOW,
'teacher' => CAP_ALLOW,
'editingteacher'=> CAP_ALLOW,
'coursecreator' => CAP_ALLOW,
'manager' => CAP_ALLOW,
'admin' => CAP_ALLOW
)
)
Lorsque j'accède au contenu du module (view.php donc) avec un compte administrateur ça fonctionne.
Lorsque j'y accède avec un le compte d'une personne définie en tant qu'enseignant dans le cours où ce module est implémenté, ça ne fonctionne pas. Message : "Désolé, vous n'avez actuellement pas les autorisations pour effectuer ceci (Voir le module)".
Ca ne fonctionne pas non plus lorsque le dit compte possède le même rôle mais cette fois définie au niveau système.
J'aimerai savoir ce qui ne va pas selon vous ? J'utilise la version 1.9.19 de Moodle - j'y suis contraint.
Merci à vous,
Maxime D.