- |
+ |
Delegated to:
@@ -31,8 +31,18 @@
+ |
+
+
+
+ ">
+
+
+
+
+
|
-
+ |
">Evaluate
diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp
new file mode 100644
index 0000000..32e3ee2
--- /dev/null
+++ b/YACOSWeb/WebContent/WEB-INF/jsp/listReportAuthor.jsp
@@ -0,0 +1,52 @@
+<%@ include file="/WEB-INF/decorators/include.jsp"%>
+
+
+
+
+
+
+
+
+
+
+ There is no report for this article at the moment.
+
+
+
+
+
+
+
+
+ | : ${report.referee.firstName} ${report.referee.lastName} |
+
+
+ |
+ ${report.article.title} |
+
+
+
+
+ |
+ ${rating.criterion.name} is: |
+ ${rating.value} |
+
+
+
+
+ |
+ ${report.commentAuthor} |
+
+
+
+
+
+
+
+
+
+
+">
+
+
+
diff --git a/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp b/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp
index 57968d2..38dde5c 100644
--- a/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp
+++ b/YACOSWeb/WebContent/WEB-INF/jsp/manageArticle.jsp
@@ -54,9 +54,19 @@
|
+
+
+
+
+
+
To evaluate
@@ -322,10 +327,7 @@ function showArticleReferee() {
Accepted
-
-
-
-
+
|
${article.conference.title}
diff --git a/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml b/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml
index 11b0d87..e5f7e50 100644
--- a/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml
+++ b/YACOSWeb/WebContent/WEB-INF/yacos-servlet.xml
@@ -44,6 +44,7 @@
ArticleDownloadController
ArticleDeleteController
ListReportController
+ ListReportAuthorController
ForgotPasswordController
DetailArticleController
UserBoardController
@@ -216,7 +217,8 @@
-
+
+
@@ -295,6 +297,11 @@
+
+
+
+
listArticles = articleManager.getArticlesOfMember(conf.getId(), login);
+ List listArticlesTmp = articleManager.getArticlesOfMember(conf.getId(), login);
+ List listArticles = new ArrayList();
+
+ for (Article a : listArticlesTmp) {
+ Report rpt = evaluationManager.getReportforArticleAndReferee(a.getId(), SessionService.getInstance().getCurrentUserLogin());
+ if (rpt == null) {
+ if (a.getState() != State.ACCEPTED && a.getState() != State.REJECTED)
+ listArticles.add(a);
+ }
+ }
+
+
logger.info("returning delegateArticle with "+ listArticles.size() +" article");
+
return new ModelAndView("delegateArticle","articles", listArticles);
}
-public List getRefereesWithTheArticle(int articleId ){
-
+ public List getRefereesWithTheArticle(int articleId ){
+
RefereeBean member;
//Conference conf = SessionService.getInstance().getCurrentConference();
-
- //List de RefereeBean qui sera retourné
+
+ //List de RefereeBean qui sera retourn�
List articleMembers = new ArrayList();
-
+
//list of the member who have this article
List articleMembersTmp = userManager.getRefereesOfPcMemberForArticle(memberId, articleId);
-
+
for (User user : articleMembersTmp) {
member = new RefereeBean();
member.setFirstName(user.getFirstName());
member.setLastName(user.getLastName());
member.setLogin(user.getLogin());
-
-
- //recuperation des specialitées
+
+
+ //recuperation des specialit�es
List spectialities = new ArrayList();
List listSpe = userManager.getSpecialitiesFromUser(member.getLogin());
for (Speciality speciality : listSpe) {
spectialities.add(speciality.getName());
}
member.setSpecialities(spectialities);
-
+
//add the member to the return list
articleMembers.add(member);
}
-
+
return articleMembers;
}
-
+
public List getRefereesWithoutTheArticle(int articleId ){
-
+
RefereeBean member;
//Conference conf = SessionService.getInstance().getCurrentConference();
-
- //List de RefereeBean qui sera retourné
+
+ //List de RefereeBean qui sera retourn�
List members = new ArrayList();
-
+
//list of all pcmembers of the conference
List membersTmp = userManager.getUsers();
-
+
//list of the member who have this article
List refereesTmp = userManager.getRefereesOfPcMemberForArticle(memberId, articleId);
-
+
for (User user : membersTmp) {
member = new RefereeBean();
member.setFirstName(user.getFirstName());
member.setLastName(user.getLastName());
member.setLogin(user.getLogin());
-
-
- //recuperation des specialitées
+
+
+ //recuperation des specialit�es
List spectialities = new ArrayList();
List listSpe = userManager.getSpecialitiesFromUser(member.getLogin());
for (Speciality speciality : listSpe) {
spectialities.add(speciality.getName());
}
member.setSpecialities(spectialities);
-
+
if (!refereesTmp.contains(user)
- && !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId())
- && !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId())
+ && !userManager.hasRoleForConference(user.getLogin(), RoleType.CHAIRMAN, conf.getId())
+ && !userManager.hasRoleForConference(user.getLogin(), RoleType.PCMEMBER, conf.getId())
){
members.add(member);
}
-
+
}
logger.debug("return"+ members.size() +"members");
return members;
}
-
-
+
+
public void addReferees(List refereesId,int articleId){
for (String refereeId : refereesId) {
articleManager.delegateArticleToReferee(articleId, refereeId,memberId);
@@ -149,11 +169,11 @@ public List getRefereesWithTheArticle(int articleId ){
}
public void removeReferees(List refereesId,int articleId){
-
+
for (String refereeId : refereesId) {
articleManager.undelegateArticleToReferee(articleId, refereeId, memberId);
}
-
+
logger.info("remove members to article");
}
}
diff --git a/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java b/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java
index 86623d2..f7e1521 100644
--- a/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java
+++ b/YACOSWeb/src/org/yacos/web/PCmember/controller/ListReportController.java
@@ -128,6 +128,7 @@ public class ListReportController extends SimpleFormController {
+
model.put("whereIcome", request.getHeader("REFERER"));
/* double[] moyennes=new double[listReport.size()];
@@ -138,7 +139,6 @@ public class ListReportController extends SimpleFormController {
}*/
-
return new ModelAndView("listReport", model);
}
@@ -154,12 +154,4 @@ public class ListReportController extends SimpleFormController {
public void setEvaluationManager(IEvaluationManager evaluationManager) {
this.evaluationManager = evaluationManager;
}
-
- public IUserManager getUserManager() {
- return userManager;
- }
-
- public void setUserManager(IUserManager userManager) {
- this.userManager = userManager;
- }
}
\ No newline at end of file
diff --git a/YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java b/YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java
new file mode 100644
index 0000000..fae145a
--- /dev/null
+++ b/YACOSWeb/src/org/yacos/web/author/controller/ListReportAuthorController.java
@@ -0,0 +1,75 @@
+package org.yacos.web.author.controller;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.springframework.web.servlet.ModelAndView;
+import org.springframework.web.servlet.ModelAndViewDefiningException;
+import org.springframework.web.servlet.mvc.SimpleFormController;
+import org.yacos.core.evaluation.IEvaluationManager;
+import org.yacos.core.evaluation.Rating;
+import org.yacos.core.evaluation.Report;
+import org.yacos.web.system.controller.NoConferenceSelectedException;
+
+
+public class ListReportAuthorController extends SimpleFormController {
+
+ protected final Log logger = LogFactory.getLog(getClass());
+
+ private IEvaluationManager evaluationManager;
+
+ public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException, NoConferenceSelectedException {
+
+ logger.info("Returning listReport view");
+
+ List listReport;
+ String reportId = request.getParameter("id");
+
+ try {
+
+ Integer id = new Integer(reportId);
+
+ Map model = new HashMap();
+
+ listReport = evaluationManager.getReportsForArticle(id);
+
+ if (listReport.isEmpty())
+ return new ModelAndView("listReport", "listReport", null);
+
+ model.put("listReport", listReport);
+
+ List> container = new ArrayList>();
+
+ for (int i=0; i<=listReport.size()-1;i++){
+ List ratings = evaluationManager.getRatingForReport(listReport.get(i).getId());
+ container.add(ratings);
+ }
+ model.put("container", container);
+ model.put("whereIcome", request.getHeader("REFERER"));
+
+ return new ModelAndView("listReport", model);
+ }
+
+ catch (NumberFormatException e) {
+ throw new ModelAndViewDefiningException(new ModelAndView("404error"));
+ }
+ }
+
+ public IEvaluationManager getEvaluationManager() {
+ return evaluationManager;
+ }
+
+ public void setEvaluationManager(IEvaluationManager evaluationManager) {
+ this.evaluationManager = evaluationManager;
+ }
+}
\ No newline at end of file
diff --git a/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java b/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java
index 05b4fda..70d5198 100644
--- a/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java
+++ b/YACOSWeb/src/org/yacos/web/system/controller/UserBoardController.java
@@ -160,15 +160,29 @@ public class UserBoardController extends SimpleFormController {
ab.setURL_article(a.getURL_article());
ab.setConference(articleManager.getConferenceForArticle(a.getId()));
List referee = userManager.getRefereesOfPcMemberForArticle(SessionService.getInstance().getCurrentUserLogin(), a.getId());
- if (referee != null)
+ if (referee != null) {
ab.setReferee(referee);
- else
+ }
+ else {
ab.setReferee(null);
+ }
Report rpt = evaluationManager.getReportforArticleAndReferee(a.getId(), SessionService.getInstance().getCurrentUserLogin());
if (rpt == null) {
- ab.setEvaluated(false);
- if (! a.getState().equals(State.ACCEPTED) && ! a.getState().equals(State.REJECTED))
+ if (referee != null) {
+ for (User r : referee) {
+ Report tmp = evaluationManager.getReportforArticleAndReferee(a.getId(), r.getLogin());
+ if (tmp != null) {
+ ab.setEvaluated(true);
+ break;
+ }
+ }
+ }
+ else {
+ ab.setEvaluated(false);
+ }
+
+ if (! a.getState().equals(State.ACCEPTED) && ! a.getState().equals(State.REJECTED) && referee == null)
numberNotEvaluatedPCMember++;
}
else {
|