From eb3c25b26d99e8511dc4be8808ad68ab25e4f066 Mon Sep 17 00:00:00 2001 From: aboeckle <alexander.boeckle@frentix.com> Date: Thu, 20 Aug 2020 11:43:37 +0200 Subject: [PATCH] OO-4844 Ignore guest related consents --- .../manager/CourseDisclaimerManagerImpl.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/org/olat/course/disclaimer/manager/CourseDisclaimerManagerImpl.java b/src/main/java/org/olat/course/disclaimer/manager/CourseDisclaimerManagerImpl.java index 0c3f0a07ed9..f8f172fe1f1 100644 --- a/src/main/java/org/olat/course/disclaimer/manager/CourseDisclaimerManagerImpl.java +++ b/src/main/java/org/olat/course/disclaimer/manager/CourseDisclaimerManagerImpl.java @@ -22,6 +22,7 @@ package org.olat.course.disclaimer.manager; import java.util.List; import org.apache.logging.log4j.Logger; +import org.olat.basesecurity.BaseSecurityManager; import org.olat.basesecurity.IdentityRef; import org.olat.core.commons.persistence.DB; import org.olat.core.id.Identity; @@ -48,6 +49,9 @@ public class CourseDisclaimerManagerImpl implements CourseDisclaimerManager, Use @Autowired private CourseDisclaimerDAO courseDisclaimerDAO; + + @Autowired + private BaseSecurityManager baseSecurityManager; @Autowired private DB dbInstance; @@ -69,6 +73,10 @@ public class CourseDisclaimerManagerImpl implements CourseDisclaimerManager, Use @Override public void acceptDisclaimer(RepositoryEntry repositoryEntry, Identity identitiy, boolean disc1Accepted, boolean disc2Accepted) { + if (baseSecurityManager.getRoles(identitiy).isGuestOnly()) { + return; + } + CourseDisclaimerConsent consent = courseDisclaimerDAO.getCourseDisclaimerConsent(repositoryEntry, identitiy); if (consent != null) { @@ -107,6 +115,9 @@ public class CourseDisclaimerManagerImpl implements CourseDisclaimerManager, Use accessGranted &= false; } } + if (baseSecurityManager.getRoles(identitiyRef).isGuestOnly()) { + accessGranted &= false; + } } return accessGranted; -- GitLab