diff --git a/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java b/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java index ab1200002d7767f0627c7cbc9ded1f6a4673f6e8..3ff68f54fbaeb636ebd20a359a0d29c3804c3157 100644 --- a/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java +++ b/src/main/java/org/olat/course/nodes/basiclti/LTIRunController.java @@ -265,13 +265,20 @@ public class LTIRunController extends BasicController { * @return */ private String setRoles(Roles roles) { - StringBuilder rolesStr = new StringBuilder("Learner"); - if (roles.isAuthor()) rolesStr.append(",").append("Instructor"); - if (roles.isOLATAdmin()) rolesStr.append(",").append("Administrator"); + StringBuilder rolesStr; if (roles.isGuestOnly()) { - rolesStr = new StringBuilder(); - rolesStr.append("Guest"); + rolesStr = new StringBuilder("Guest"); + } else { + rolesStr = new StringBuilder("Learner"); + boolean coach = courseEnv.getCourseGroupManager().isIdentityCourseCoach(getIdentity()); + if (coach) { + rolesStr.append(",").append("Instructor"); + } + if (roles.isOLATAdmin()) { + rolesStr.append(",").append("Administrator"); + } } + return rolesStr.toString(); }