diff --git a/src/main/java/org/olat/upgrade/OLATUpgrade_13_3_0.java b/src/main/java/org/olat/upgrade/OLATUpgrade_13_3_0.java index ffc1b5ddff623aec874b84d27abeeb008965ce9c..d971d1dc3f3410425f9868cc3df95819e61da8ea 100644 --- a/src/main/java/org/olat/upgrade/OLATUpgrade_13_3_0.java +++ b/src/main/java/org/olat/upgrade/OLATUpgrade_13_3_0.java @@ -152,7 +152,9 @@ public class OLATUpgrade_13_3_0 extends OLATUpgrade { List<Identity> managers = groupDao.getMembers(group, CurriculumRoles.curriculummanager.name()); for(Identity manager:managers) { groupDao.removeMembership(group, manager, CurriculumRoles.curriculummanager.name()); - groupDao.addMembershipOneWay(group, manager, CurriculumRoles.curriculumowner.name()); + if(groupDao.getMembership(group, manager, CurriculumRoles.curriculumowner.name()) == null) { + groupDao.addMembershipOneWay(group, manager, CurriculumRoles.curriculumowner.name()); + } } dbInstance.commitAndCloseSession(); migrateCurriculumElementsRoles(curriculum); @@ -167,13 +169,17 @@ public class OLATUpgrade_13_3_0 extends OLATUpgrade { List<Identity> managers = groupDao.getMembers(group, CurriculumRoles.curriculummanager.name()); for(Identity manager:managers) { groupDao.removeMembership(group, manager, CurriculumRoles.curriculummanager.name()); - groupDao.addMembershipOneWay(group, manager, CurriculumRoles.curriculumowner.name()); + if(groupDao.getMembership(group, manager, CurriculumRoles.curriculumelementowner.name()) == null) { + groupDao.addMembershipOneWay(group, manager, CurriculumRoles.curriculumelementowner.name()); + } } List<Identity> owners = groupDao.getMembers(group, CurriculumRoles.curriculumowner.name()); for(Identity owner:owners) { - groupDao.removeMembership(group, owner, CurriculumRoles.curriculumelementowner.name()); - groupDao.addMembershipOneWay(group, owner, CurriculumRoles.curriculumelementowner.name()); + groupDao.removeMembership(group, owner, CurriculumRoles.curriculumowner.name()); + if(groupDao.getMembership(group, owner, CurriculumRoles.curriculumelementowner.name()) == null) { + groupDao.addMembershipOneWay(group, owner, CurriculumRoles.curriculumelementowner.name()); + } } dbInstance.commitAndCloseSession(); }