diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/delegateArticle.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/delegateArticle.jsp index adcb427..b8f68dc 100644 --- a/YACOSWeb/WebContent/WEB-INF/jsp/delegateArticle.jsp +++ b/YACOSWeb/WebContent/WEB-INF/jsp/delegateArticle.jsp @@ -90,7 +90,7 @@ } function removeRemote() { - var itemsToRemove = $('refereesList'+articleId).select('div.selected'); + var itemsToRemove = $('refereesArticleList'+articleId).select('div.selected'); var refereesId = itemsToRemove.pluck('id'); DelegateArticlesJS.removeReferees(refereesId, articleId, remove); } diff --git a/YACOSWeb/src/org/yacos/web/PCmember/controller/DelegateArticleController.java b/YACOSWeb/src/org/yacos/web/PCmember/controller/DelegateArticleController.java index 56a95bb..e5a7703 100644 --- a/YACOSWeb/src/org/yacos/web/PCmember/controller/DelegateArticleController.java +++ b/YACOSWeb/src/org/yacos/web/PCmember/controller/DelegateArticleController.java @@ -124,15 +124,11 @@ public List getRefereesWithTheArticle(int articleId ){ spectialities.add(speciality.getName()); } member.setSpecialities(spectialities); - List userRoles = conferenceManager.getRoles(user.getLogin(), conf.getId()); - boolean isMember = false; - for (Role role : userRoles) { - if(role.getType().equals(Role.RoleType.CHAIRMAN)||(role.getType().equals(Role.RoleType.PCMEMBER))){ - isMember = true; - } - } - //add the member to the return list - if (!refereesTmp.contains(user) && !isMember){ + + if (!refereesTmp.contains(user) + && !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId()) + && !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId()) + ){ members.add(member); } @@ -145,24 +141,19 @@ public List getRefereesWithTheArticle(int articleId ){ public void addReferees(List refereesId,int articleId){ for (String refereeId : refereesId) { articleManager.delegateArticleToReferee(articleId, refereeId,memberId); - conferenceManager.addRole(RoleType.REFEREE, refereeId, conf.getId()); + if(!userManager.hasRoleForConference(refereeId, RoleType.REFEREE, conf.getId())){ + conferenceManager.addRole(RoleType.REFEREE, refereeId, conf.getId()); + } } - logger.debug("add referee to article"); + logger.info("add referee to article"); } public void removeReferees(List refereesId,int articleId){ - for (String refereeId : refereesId) { - articleManager.undelegateArticleToReferee(articleId, refereeId, memberId); - User referee = userManager.getUser(refereeId); - List userRoles = conferenceManager.getRoles(referee.getLogin(), conf.getId()); - for (Role role : userRoles) { - if(role.getType().equals(Role.RoleType.REFEREE)){ - conferenceManager.removeRole(role); - } - } - - } - logger.debug("remove members to article"); + for (String refereeId : refereesId) { + articleManager.undelegateArticleToReferee(articleId, refereeId, memberId); + } + + logger.info("remove members to article"); } }