Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.62 KB | None | 0 0
  1.  
  2. package uia.lss.web;
  3. import java.io.PrintWriter;
  4. import java.util.List;
  5. import javax.annotation.Resource;
  6. import javax.persistence.Query;
  7. import javax.persistence.EntityManager;
  8. import javax.persistence.EntityManagerFactory;
  9. import javax.persistence.PersistenceUnit;
  10. import javax.servlet.annotation.WebServlet;
  11. import javax.servlet.http.HttpServletRequest;
  12. import javax.transaction.UserTransaction;
  13. import uia.lss.data.Exercise;
  14. import uia.lss.data.Feedback;
  15. import uia.lss.data.User;
  16. import uia.lss.data.Role;
  17. /**
  18. *
  19. * @author bendo
  20. */
  21.  
  22. @WebServlet(name="feedbackview", urlPatterns="/feedbackview")
  23. public class FeedbackView extends Page {
  24.  
  25. public static final String SERVLET_NAME = "feedbackview";
  26.  
  27. @PersistenceUnit
  28. protected EntityManagerFactory emf;
  29. @Resource
  30. protected UserTransaction utx;
  31.  
  32. public void writeBody(PrintWriter out, HttpServletRequest req) {
  33.  
  34. User user = getSessionUser(null, req);
  35.  
  36.  
  37.  
  38.  
  39.  
  40. if (user.getRole() == Role.STUDENT) {
  41.  
  42.  
  43.  
  44. if (getExerciseID(req) == 0) {
  45. out.println("<h3>Click on one of the exercise ID's below to view the its feedback.</h3>");
  46. out.println("<br");
  47.  
  48. EntityManager em = emf.createEntityManager();
  49.  
  50. Query q = em.createQuery("select f from Feedback as f"
  51. + " where f.exercise.userName = :name");
  52. q.setParameter("name", user.getUserName());
  53. List<Feedback> fb = q.getResultList();
  54.  
  55. for (Feedback f : fb) {
  56.  
  57. if (getRead(req) != null) {
  58. if (f.getRead() == false) {
  59. out.println("<p><a href=\"?exerciseid="+f.getExercise().getExerciseID()+"\">Exercise "+f.getExercise().getExerciseID()+"</a></p>");
  60. }
  61.  
  62. }
  63. else {
  64. out.println("<p><a href=\"?exerciseid="+f.getExercise().getExerciseID()+"\">Exercise "+f.getExercise().getExerciseID()+"</a></p>");
  65. }
  66. }
  67. }
  68.  
  69.  
  70. if (getExerciseID(req) > 0) {
  71.  
  72. EntityManager em = emf.createEntityManager();
  73. Feedback feedback = em.find(Feedback.class, getExerciseID(req));
  74.  
  75. out.println("<h1>Feedback for exercise " +getExerciseID(req)+"</h1>");
  76.  
  77. out.println("<br>"); out.println("<br>");
  78. out.println("<p><b>Evaluator: </b>"+ feedback.getEvaluator().getFirstName()+" "
  79. + feedback.getEvaluator().getLastName()+"</p>");
  80.  
  81. out.println("<br>");
  82. out.println("<p><b>Comment: </b></p><i>"+ feedback.getComment()+"</i>");
  83. out.println("<br>");
  84.  
  85. if (feedback.getApproved() == true){
  86. out.println("<br>");
  87. out.println("<p><b>Verdict: </b>Approved</p>");
  88. }
  89. else {
  90. out.println("<br>");
  91. out.println("<p><b>Verdict: </b>Not approved</p>");
  92. }
  93. Query q = em.createQuery("UPDATE Feedback f SET f.isRead = :read WHERE f.exercise.exerciseID = :id");
  94. q.setParameter("id", getExerciseID(req));
  95. q.setParameter("read", true);
  96.  
  97. out.println("<br>");
  98. out.println("<br>");
  99. out.println("<p><a href=\"feedbackview?exerciseid=0\">[Back]</a></p>");
  100. }
  101.  
  102.  
  103. }
  104.  
  105.  
  106.  
  107.  
  108. else {
  109. out.println("<h1>You do not have access to this page</h1>");
  110. }
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118. }
  119.  
  120. public int getExerciseID(HttpServletRequest req) {
  121.  
  122. String p = req.getParameter("exerciseid");
  123. int eID = Integer.parseInt(p);
  124.  
  125. return eID;
  126. }
  127.  
  128. public String getRead(HttpServletRequest req) {
  129.  
  130. String r = req.getParameter("read");
  131. return r;
  132. }
  133.  
  134.  
  135.  
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement