diff --git a/src/main/java/org/olat/course/nodes/cal/CourseCalendars.java b/src/main/java/org/olat/course/nodes/cal/CourseCalendars.java index a9eebdcab6c7a95dda039f3b8bf239f3188888d0..1b8f04ee7715b85e3c6cd8fd6d2dabab854f8062 100644 --- a/src/main/java/org/olat/course/nodes/cal/CourseCalendars.java +++ b/src/main/java/org/olat/course/nodes/cal/CourseCalendars.java @@ -145,13 +145,11 @@ public class CourseCalendars { // learning groups List<BusinessGroup> ownerGroups = cgm.getOwnedBusinessGroups(identity); addCalendars(ureq, userCourseEnv, ownerGroups, !readOnly, clpc, calendars); - List<BusinessGroup> attendedGroups = cgm.getParticipatingBusinessGroups(identity); - for (BusinessGroup ownerGroup : ownerGroups) { - if (attendedGroups.contains(ownerGroup)) { - attendedGroups.remove(ownerGroup); - } - } - addCalendars(ureq, userCourseEnv, attendedGroups, false, clpc, calendars); + // always add all group calendars in this course no matter if the identity is a member + // as public entries should be visible anyway + List<BusinessGroup> allGroups = cgm.getAllBusinessGroups(); + allGroups.removeAll(ownerGroups); + addCalendars(ureq, userCourseEnv, allGroups, false, clpc, calendars); } return new CourseCalendars(courseKalendarWrapper, calendars); }