diff --git a/CHANGELOG.md b/CHANGELOG.md index 5f26762..40a2c7f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,11 +4,11 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [v2.5.2] - 2020-10-16 +## [v2.5.2] - 2020-10-19 Bug Fix -[#19978] LiferayUserManager#listMembershipRequestsByGroup issue in returned list +[#19978] LiferayUserManager#listMembershipRequestsByGroup issue in returned list and improved AcceptMembershipRequests method ## [v2.5.1] [r4.25.0] - 2020-07-10 diff --git a/src/main/java/org/gcube/vomanagement/usermanagement/impl/LiferayUserManager.java b/src/main/java/org/gcube/vomanagement/usermanagement/impl/LiferayUserManager.java index 182561f..38174cb 100644 --- a/src/main/java/org/gcube/vomanagement/usermanagement/impl/LiferayUserManager.java +++ b/src/main/java/org/gcube/vomanagement/usermanagement/impl/LiferayUserManager.java @@ -973,16 +973,17 @@ public class LiferayUserManager implements UserManager { public GCubeMembershipRequest acceptMembershipRequest(long requestUserId,long groupId, boolean addUserToGroup, String replyUsername, String replyComment) throws UserManagementSystemException, GroupRetrievalFault, UserManagementPortalException { try { GCubeUser replyMan = getUserByUsername(replyUsername); - List requests = listMembershipRequestsByGroup(groupId); - for (GCubeMembershipRequest req : requests) { - if (req.getRequestingUser().getUserId() == requestUserId) { + List requests = MembershipRequestLocalServiceUtil.getMembershipRequests(requestUserId, groupId, 0); + //List requests = listMembershipRequestsByGroup(groupId); + for (MembershipRequest req : requests) { + if (req.getUserId() == requestUserId) { MembershipRequestLocalServiceUtil.updateStatus(replyMan.getUserId(), req.getMembershipRequestId(), replyComment, 1, addUserToGroup, new ServiceContext()); //the method above just adds the user to the VRE, it is needed to add the user to the parent Sites as well (VO and RootVO) assignUserToGroup(GroupLocalServiceUtil.getGroup(groupId).getParentGroupId(), requestUserId); - + _log.info("Accepted membership request: requestUserId="+requestUserId); return mapLRMembershipRequest(MembershipRequestLocalServiceUtil.getMembershipRequest(req.getMembershipRequestId())); } - } + } } catch (UserRetrievalFault e) { e.printStackTrace();