From 00702d9435ff4809768641037ca70f10ef0711a2 Mon Sep 17 00:00:00 2001 From: uhensler <urs.hensler@frentix.com> Date: Tue, 8 Oct 2019 15:12:29 +0200 Subject: [PATCH] OO-4285: Reset current role if current role no longer available --- .../repository/model/SingleRoleRepositoryEntrySecurity.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/org/olat/repository/model/SingleRoleRepositoryEntrySecurity.java b/src/main/java/org/olat/repository/model/SingleRoleRepositoryEntrySecurity.java index e9380bd9875..2940dc0aa91 100644 --- a/src/main/java/org/olat/repository/model/SingleRoleRepositoryEntrySecurity.java +++ b/src/main/java/org/olat/repository/model/SingleRoleRepositoryEntrySecurity.java @@ -67,6 +67,12 @@ public class SingleRoleRepositoryEntrySecurity implements RepositoryEntrySecurit public void setWrappedSecurity(RepositoryEntrySecurity wrappedSecurity) { this.wrappedSecurity = wrappedSecurity; + // current role no longer possible + if ((Role.participant.equals(currentRole) && !isParticipant()) + || (Role.coach.equals(currentRole) && !isCoach()) + || (Role.owner.equals(currentRole) && !isOwner())) { + currentRole = getDefaultRole(); + } } public Set<Role> getOtherRoles() { -- GitLab