Perfecto Xavier,
estoy trabajando en el modulo questionnarie,
estoy en la funcion questionnaire_load_capabilities($cmid)
obtengo el $context asi:
$context = questionnaire_get_context($cmid);
logre obtener el rol en el arreglo asi:
$roles = get_user_roles($context, $USER->id;
Donde $roles me devuelve algo como:
Array
(
[299478] => stdClass Object
(
[roleid] => 5
[contextid] => 331669
[userid] => 41119
[hidden] => 0
[timestart] => 1327381200
[timeend] => 0
[timemodified] => 1327421507
[modifierid] => 48
[enrol] => manual
[sortorder] => 0
[name] => Student
[shortname] => student
[id] => 299478
)
[137117] => stdClass Object
(
[roleid] => 1
[contextid] => 1
[userid] => 41119
[hidden] => 0
[timestart] => 1265000400
[timeend] => 0
[timemodified] => 1265063501
[modifierid] => 2
[enrol] => manual
[sortorder] => 0
[name] => Administrator
[shortname] => admin
[id] => 137117
)
)
$roles es entonces un arreglo de Objetos tipo Roles. Aparece cada rol que tenga el usuario.
Y los objetos tienen los atributos que necesito: "roleid", "name" y "shortname".
Hasta pronto.