diff --git a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/Utils.java b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/Utils.java index 9b657a6..b4516af 100644 --- a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/Utils.java +++ b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/Utils.java @@ -156,12 +156,7 @@ public class Utils { checkIfRoleIsSetInCkanInstance(username, gCubeGroupName, gCubeGroup.getGroupId(), correspondentRoleToCheck, groupManager, gcubeCkanDataCatalogServiceImpl, orgsInWhichAtLeastEditorRole); - if(toReturn.equals(RolesCkanGroupOrOrg.ADMIN)) - continue; - else if(toReturn.equals(RolesCkanGroupOrOrg.EDITOR) && correspondentRoleToCheck.equals(RolesCkanGroupOrOrg.ADMIN)) - toReturn = RolesCkanGroupOrOrg.ADMIN; - else // it was MEMBER - toReturn = correspondentRoleToCheck; + toReturn = RolesCkanGroupOrOrg.getHigher(toReturn, correspondentRoleToCheck); } @@ -186,12 +181,7 @@ public class Utils { checkIfRoleIsSetInCkanInstance(username, gCubeGroupName, gCubeGroup.getGroupId(), correspondentRoleToCheck, groupManager, gcubeCkanDataCatalogServiceImpl, orgsInWhichAtLeastEditorRole); - if(toReturn.equals(RolesCkanGroupOrOrg.ADMIN)) - continue; - else if(toReturn.equals(RolesCkanGroupOrOrg.EDITOR) && correspondentRoleToCheck.equals(RolesCkanGroupOrOrg.ADMIN)) - toReturn = RolesCkanGroupOrOrg.ADMIN; - else - toReturn = correspondentRoleToCheck; + toReturn = RolesCkanGroupOrOrg.getHigher(toReturn, correspondentRoleToCheck); } }else if(groupManager.isVRE(currentGroupId)){