From 601fd4ff22f8a15a4cafa13ef65926d0b8864c5b Mon Sep 17 00:00:00 2001 From: Axel <wiepke@uni-potsdam.de> Date: Fri, 7 Sep 2018 14:16:38 +0200 Subject: [PATCH] feat: phaseSelection works for docent. Student can see phase. Menu is effected. beaut: pageAppearence is an own package now containing menu headLine footer and omniDependencies. --- .../gf/core/management/ManagementImpl.java | 9 +- .../core/management/pageAppearance/Menu.java | 112 ++++++++++++++++++ .../management/pageAppearance/footer.java | 54 +++++++++ .../{user => pageAppearance}/headLine.java | 10 +- .../omniDependencies.java | 16 +-- .../gf/core/management/project/Project.java | 6 +- .../gf/core/management/user/Menu.java | 68 ----------- .../gf/core/management/user/footer.java | 29 ----- .../unipotsdam/gf/core/states/PhasesImpl.java | 12 +- .../gf/core/states/PhasesService.java | 11 +- .../gf/core/states/ProjectPhase.java | 2 +- .../assessment/controller/view/QuizView.java | 5 +- .../src/main/webapp/assets/css/footer.css | 31 ++--- .../src/main/webapp/assets/img/noImg.png | Bin 0 -> 4496 bytes .../src/main/webapp/assets/js/changePhase.js | 43 ++++++- .../main/webapp/assets/js/finalAssessment.js | 2 +- .../src/main/webapp/assets/js/footer.js | 30 +---- .../src/main/webapp/assets/js/profile.js | 49 ++++++++ .../src/main/webapp/assets/js/utility.js | 10 +- .../webapp/core/pages/gemeinsamForschen.tld | 8 +- .../core/pages/gemeinsamForschen.tld.orig | 6 +- .../src/main/webapp/pages/changePhase.jsp | 22 ++-- .../src/main/webapp/pages/profile.jsp | 14 ++- 23 files changed, 339 insertions(+), 210 deletions(-) create mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java create mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/footer.java rename gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/{user => pageAppearance}/headLine.java (95%) rename gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/{user => pageAppearance}/omniDependencies.java (73%) delete mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/Menu.java delete mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/footer.java create mode 100644 gemeinsamforschen/src/main/webapp/assets/img/noImg.png create mode 100644 gemeinsamforschen/src/main/webapp/assets/js/profile.js diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ManagementImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ManagementImpl.java index c86b8aa6..5b51d0fd 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ManagementImpl.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ManagementImpl.java @@ -171,8 +171,10 @@ public class ManagementImpl implements Management { String adminPassword = vereinfachtesResultSet.getString("adminpassword"); String token = vereinfachtesResultSet.getString("token"); String phase = vereinfachtesResultSet.getString("phase"); - - return new Project(id, password, active, timestamp, author, adminPassword, token); + Project project = new Project(id, password, active, timestamp, author, adminPassword, token); + ProjectPhase projectPhase = ProjectPhase.valueOf(phase); + project.setPhase(projectPhase); + return project; } private Group getGroupFromResultSet(VereinfachtesResultSet vereinfachtesResultSet) { @@ -236,6 +238,9 @@ public class ManagementImpl implements Management { @Override public Project getProjectById(String id) { + if (id == null){ + return null; + } MysqlConnect connect = new MysqlConnect(); connect.connect(); String mysqlRequest = "SELECT * FROM projects where id = ?"; diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java new file mode 100644 index 00000000..894babb0 --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java @@ -0,0 +1,112 @@ +package unipotsdam.gf.core.management.pageAppearance; + +import unipotsdam.gf.core.management.ManagementImpl; +import unipotsdam.gf.core.management.user.User; +import unipotsdam.gf.core.states.ProjectPhase; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.jsp.JspWriter; +import javax.servlet.jsp.PageContext; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; + +public class Menu extends SimpleTagSupport { + public void doTag() throws IOException { + PageContext pageContext = (PageContext) getJspContext(); + HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); + String token = request.getParameter("token"); + String projectId = request.getParameter("projectId"); + ManagementImpl management = new ManagementImpl(); + ProjectPhase projectPhase; + try{ + projectPhase = management.getProjectById(projectId).getPhase(); + }catch(Exception e){ + projectPhase = null; + } + JspWriter out = getJspContext().getOut(); + if (token!=null){ + User user = management.getUserByToken(token); + Boolean isStudent = user.getStudent(); + if (isStudent){ + String menuString = "<div id=\"sidebar-wrapper\">\n" + + " <ul class=\"sidebar-nav\">\n" + + " <li class=\"sidebar-brand\"><a href=\"overview-student.jsp?token="+token+"&projectId="+projectId+"\">overview</a></li>\n" + + " <li><a href=\"profile.jsp?token="+token+"&projectId="+projectId+"\">Profil</a></li>\n"; + if (projectPhase!=null){ + if (projectPhase.equals(ProjectPhase.CourseCreation)){ + menuString += " <li><p>Quizfrage</p></li>\n" + + " <li><a href=\"eportfolio.jsp?token="+token+"&projectId="+projectId+"\">ePortfolio</a></li>\n" + + " <li><p>Beitrag</p></li>\n" + + " <li><p>Bewertung</p></li>\n"; + } + if (projectPhase.equals(ProjectPhase.GroupFormation)){ + menuString += " <li><p>Quizfrage</p></li>\n" + + " <li><a href=\"eportfolio.jsp?token="+token+"&projectId="+projectId+"\">ePortfolio</a></li>\n" + + " <li><p>Beitrag</p></li>\n" + + " <li><p>Bewertung</p></li>\n"; + } + if (projectPhase.equals(ProjectPhase.DossierFeedback)){ + menuString += " <li><p>Quizfrage</p></li>\n" + + " <li><a href=\"eportfolio.jsp?token="+token+"&projectId="+projectId+"\">ePortfolio</a></li>\n" + + " <li><a href=\"researchReportTitle.jsp?token="+token+"&projectId="+projectId+"\">Beitrag</a></li>\n" + + " <li><p>Bewertung</p></li>\n"; + } + if (projectPhase.equals(ProjectPhase.Execution)){ + menuString += " <li><a href=\"Quiz.jsp?token="+token+"&projectId="+projectId+"\">Quizfrage</a></li>\n" + + " <li><a href=\"eportfolio.jsp?token="+token+"&projectId="+projectId+"\">ePortfolio</a></li>\n" + + " <li><a href=\"researchReportTitle.jsp?token="+token+"&projectId="+projectId+"\">Beitrag</a></li>\n" + + " <li><p>Bewertung</p></li>\n"; + } + if (projectPhase.equals(ProjectPhase.Assessment)){ + menuString += " <li><p>Quizfrage</p></li>\n" + + " <li><p>ePortfolio</p></li>\n" + + " <li><p>Beitrag</p></li>\n" + + " <li><a id=\"assessment\" style=\"cursor:pointer\">Bewertung</a></li>\n"; + } + } + + menuString +="<li>" + + "<a id=\"logout\" style=\"cursor:pointer\">Logout</a></li>\n" + + "</ul>\n" + + " </div>"; + out.println(menuString); + out.println("<p id=\"userRole\" hidden>isStudent</p>"); + } else { + String menuString ="<div id=\"sidebar-wrapper\">\n" + + " <ul class=\"sidebar-nav\">\n" + + " <li class=\"sidebar-brand\"><a href=\"overview-docent.jsp?token="+token+"&projectId="+projectId+"\">overview</a></li>\n"; + if (projectPhase!=null) { + if (!projectPhase.equals(ProjectPhase.GroupFormation)) { + menuString += "<li><a href=\"Quiz-docent.jsp?token="+token+"&projectId="+projectId+"\">Quizfrage</a></li>\n" + + " <li><p>Gruppen erstellen</p></li>\n" + + " <li><a href=\"changePhase.jsp?token="+token+"&projectId="+projectId+"\">Projektphase ändern</a></li>\n"; + }else { + menuString += "<li><a href=\"Quiz-docent.jsp?token="+token+"&projectId="+projectId+"\">Quizfrage</a></li>\n" + + " <li><a href=\"createGroups.jsp?token="+token+"&projectId="+projectId+"\">Gruppen erstellen</a></li>\n" + + " <li><a href=\"changePhase.jsp?token="+token+"&projectId="+projectId+"\">Projektphase ändern</a></li>\n"; + } + } + menuString +="<li><a id=\"logout\" style=\"cursor:pointer\">Logout</a></li>\n" + + "</ul>\n" + + " </div>"; + out.println(menuString); + out.println("<p id=\"userRole\" hidden>isDocent</p>"); + } + }else{ + out.println("<div class='alert alert-warning'>" + + "You probably did not give the token to the url" + + "</div>"); + //in active System this will be the point to redirect to index.jsp, because token is "wrong" + } + if (projectId!=null) + out.println("<p id=\"projectId\" hidden>"+projectId+"</p>"); + User user = management.getUserByToken(token); + if (user != null) + out.println("<p id=\"user\" hidden>"+user.getName()+"</p>"); + + + + } + + +} \ No newline at end of file diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/footer.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/footer.java new file mode 100644 index 00000000..29d366cb --- /dev/null +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/footer.java @@ -0,0 +1,54 @@ +package unipotsdam.gf.core.management.pageAppearance; + +import unipotsdam.gf.core.management.ManagementImpl; +import unipotsdam.gf.core.states.ProjectPhase; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.jsp.JspWriter; +import javax.servlet.jsp.PageContext; +import javax.servlet.jsp.tagext.SimpleTagSupport; +import java.io.IOException; + +public class footer extends SimpleTagSupport { + public void doTag() throws IOException { + PageContext pageContext = (PageContext) getJspContext(); + HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); + String projectId = request.getParameter("projectId"); + ManagementImpl management = new ManagementImpl(); + ProjectPhase projectPhase; + try { + projectPhase = management.getProjectById(projectId).getPhase(); + } catch (Exception e) { + projectPhase = null; + } + JspWriter out = getJspContext().getOut(); + String footerString = "<footer>\n" + + " <div class=\"container\">\n"; + if (projectPhase != null) { + footerString += " <div class=\"progress\">\n" + + " <div class=\"progress-bar pg-" + projectPhase.toString().trim() + "\" role=\"progressbar\" id=\"progressbar\">\n" + + " </div>\n" + + " <div>\n"; + if (projectPhase.equals(ProjectPhase.GroupFormation)) + footerString +=" GroupFormation\n"; + if (projectPhase.equals(ProjectPhase.Execution)) + footerString +=" Execution\n"; + if (projectPhase.equals(ProjectPhase.Assessment)) + footerString +=" Assessment\n"; + if (projectPhase.equals(ProjectPhase.DossierFeedback)) + footerString +=" DossierFeedback\n"; + if (projectPhase.equals(ProjectPhase.Projectfinished)) + footerString +=" Projectfinished\n"; + footerString +=" </div>\n" + + " <div class=\"progress-bar pg-rest\" role=\"progressbar\">\n" + + " </div>\n" + + " </div>\n"; + } + + footerString += "<button id=\"btnUnstructuredUpload\" class=\"btn btn-light\">Unstrukturierte Abgabe</button>\n" + + "<button id=\"footerBack\" class=\"btn btn-light\">zurück</button>\n" + + " </div>\n" + + " </footer>"; + out.println(footerString); + } +} \ No newline at end of file diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/headLine.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/headLine.java similarity index 95% rename from gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/headLine.java rename to gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/headLine.java index 087a26f8..36f2e74b 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/headLine.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/headLine.java @@ -1,16 +1,16 @@ -package unipotsdam.gf.core.management.user; +package unipotsdam.gf.core.management.pageAppearance; import unipotsdam.gf.core.management.ManagementImpl; +import unipotsdam.gf.core.management.user.User; import javax.servlet.http.HttpServletRequest; -import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.SimpleTagSupport; import java.io.IOException; public class headLine extends SimpleTagSupport { - public void doTag() throws JspException, IOException { + public void doTag() throws IOException { PageContext pageContext = (PageContext) getJspContext(); HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); String projectId = request.getParameter("projectId"); @@ -58,6 +58,4 @@ public class headLine extends SimpleTagSupport { " </table>\n" + " </div>"); } - - -}; \ No newline at end of file +} \ No newline at end of file diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/omniDependencies.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/omniDependencies.java similarity index 73% rename from gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/omniDependencies.java rename to gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/omniDependencies.java index e4b3272b..ac6ce6fc 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/omniDependencies.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/omniDependencies.java @@ -1,17 +1,11 @@ -package unipotsdam.gf.core.management.user; +package unipotsdam.gf.core.management.pageAppearance; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; -import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.SimpleTagSupport; import java.io.IOException; public class omniDependencies extends SimpleTagSupport { - public void doTag() throws JspException, IOException { - PageContext pageContext = (PageContext) getJspContext(); - HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); - String projectId = request.getParameter("projectId"); + public void doTag() throws IOException { JspWriter out = getJspContext().getOut(); out.println("<meta charset=\"utf-8\">\n" + " <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n" + @@ -28,8 +22,6 @@ public class omniDependencies extends SimpleTagSupport { " <script src=\"../assets/js/utility.js\"></script>\n" + " <script src=\"../assets/js/footer.js\"></script>\n" + " <link rel=\"stylesheet\" href=\"https://use.fontawesome.com/releases/v5.1.0/css/all.css\"\n" + - " integrity=\"sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt\" crossorigin=\"anonymous\">"); + " integrity=\"sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt\" crossorigin=\"anonymous\">"); } - - -}; \ No newline at end of file +} \ No newline at end of file diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/Project.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/Project.java index 2fb7b840..b3295333 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/Project.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/Project.java @@ -19,7 +19,7 @@ public class Project { private String adminPassword; private String token; // using enum ProjectPhase - private String phase; + private ProjectPhase phase; public Project() { } @@ -35,7 +35,7 @@ public class Project { this.setPhase(ProjectPhase.CourseCreation); } - public String getPhase() { + public ProjectPhase getPhase() { return phase; } @@ -44,7 +44,7 @@ public class Project { * @param phase */ public void setPhase(ProjectPhase phase) { - this.phase = phase.name(); + this.phase = phase; } public Project(String id, String password, Boolean active, String author, String adminPassword, String token) { diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/Menu.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/Menu.java deleted file mode 100644 index 15f21c51..00000000 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/Menu.java +++ /dev/null @@ -1,68 +0,0 @@ -package unipotsdam.gf.core.management.user; - -import unipotsdam.gf.core.management.ManagementImpl; -import unipotsdam.gf.modules.assessment.controller.service.PeerAssessment; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.JspWriter; -import javax.servlet.jsp.PageContext; -import javax.servlet.jsp.tagext.SimpleTagSupport; -import java.io.IOException; - - -// TODO: please move this to a view package at the top of the hierarchy as this is not part of the user package -public class Menu extends SimpleTagSupport { - public void doTag() throws JspException, IOException { - PageContext pageContext = (PageContext) getJspContext(); - HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); - String token = request.getParameter("token"); - String projectId = request.getParameter("projectId"); - ManagementImpl management = new ManagementImpl(); - JspWriter out = getJspContext().getOut(); - if (token!=null){ - User user = management.getUserByToken(token); - Boolean isStudent = user.getStudent(); - if (isStudent){ - out.println("<div id=\"sidebar-wrapper\">\n" + - " <ul class=\"sidebar-nav\">\n" + - " <li class=\"sidebar-brand\"><a href=\"overview-student.jsp?token="+token+"&projectId="+projectId+"\">overview</a></li>\n" + - " <li><a href=\"profile.jsp?token="+token+"&projectId="+projectId+"\">Profil</a></li>\n" + - " <li><a href=\"Quiz.jsp?token="+token+"&projectId="+projectId+"\">Quizfrage</a></li>\n" + - " <li><a href=\"eportfolio.jsp?token="+token+"&projectId="+projectId+"\">ePortfolio</a></li>\n" + - " <li><a href=\"researchReportTitle.jsp?token="+token+"&projectId="+projectId+"\">Beitrag</a></li>\n" + - " <li><a id=\"assessment\">Bewertung</a></li>\n" + - " <li><a id=\"logout\">Logout</a></li>\n" + - " </ul>\n" + - " </div>"); - out.println("<p id=\"userRole\" hidden>isStudent</p>"); - } else { - out.println("<div id=\"sidebar-wrapper\">\n" + - " <ul class=\"sidebar-nav\">\n" + - " <li class=\"sidebar-brand\"><a href=\"overview-docent.jsp?token="+token+"&projectId="+projectId+"\">overview</a></li>\n" + - " <li><a href=\"Quiz-docent.jsp?token="+token+"&projectId="+projectId+"\">Quizfrage</a></li>\n" + - " <li><a href=\"createGroups.jsp?token="+token+"&projectId="+projectId+"\">Gruppen erstellen</a></li>\n" + - " <li><a href=\"changePhase.jsp?token="+token+"&projectId="+projectId+"\">Projektphase ändern</a></li>\n" + - " <li><a id=\"logout\">Logout</a></li>\n" + - " </ul>\n" + - " </div>"); - out.println("<p id=\"userRole\" hidden>isDocent</p>"); - } - }else{ - out.println("<div class='alert alert-warning'>" + - "You probably did not give the token to the url" + - "</div>"); - //in active System this will be the point to redirect to index.jsp, because token is "wrong" - } - if (projectId!=null) - out.println("<p id=\"projectId\" hidden>"+projectId+"</p>"); - User user = management.getUserByToken(token); - if (user != null) - out.println("<p id=\"user\" hidden>"+user.getName()+"</p>"); - - - - } - - -} \ No newline at end of file diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/footer.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/footer.java deleted file mode 100644 index fad401c7..00000000 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/footer.java +++ /dev/null @@ -1,29 +0,0 @@ -package unipotsdam.gf.core.management.user; - -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.JspWriter; -import javax.servlet.jsp.tagext.SimpleTagSupport; -import java.io.IOException; - -public class footer extends SimpleTagSupport { - public void doTag() throws JspException, IOException { - JspWriter out = getJspContext().getOut(); - out.println("<footer>\n" + - " <div class=\"container\">\n" + - " <div class=\"progress\">\n" + - " <div class=\"progress-bar pg-groups\" role=\"progressbar\" id=\"progressbar\">\n" + - " </div>\n" + - " <div>\n" + - " Assessment - Präsentationsphase - Dossier - Reflexionsphase - Feedbackphase - Gruppenbildung\n" + - " </div>\n" + - " <div class=\"progress-bar pg-rest\" role=\"progressbar\">\n" + - " </div>\n" + - " </div>\n" + - " <button id=\"nextPhase\" class=\"btn btn-light\">nächste Phase</button>\n" + - " <button id=\"btnUnstructuredUpload\" class=\"btn btn-light\">Unstrukturierte Abgabe</button>\n" + - " </div>\n" + - " </footer>"); - } - - -}; \ No newline at end of file diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java index 7bcf8a20..ed289b31 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java @@ -46,16 +46,16 @@ public class PhasesImpl implements IPhases { } @Override - public void endPhase(ProjectPhase currentPhase, Project project) { - switch (currentPhase) { + public void endPhase(ProjectPhase changeToPhase, Project project) { + switch (changeToPhase) { case CourseCreation: // saving the state - saveState(project,getNextPhase(currentPhase)); + saveState(project,changeToPhase); break; case GroupFormation: // inform users about the formed groups, optionally giving them a hint on what happens next iCommunication.sendMessageToUsers(project, Messages.GroupFormation(project)); - saveState(project,getNextPhase(currentPhase)); + saveState(project,changeToPhase); break; case DossierFeedback: // check if everybody has uploaded a dossier @@ -65,7 +65,7 @@ public class PhasesImpl implements IPhases { } else { // send a message to the users informing them about the start of the new phase iCommunication.sendMessageToUsers(project, Messages.NewFeedbackTask(project)); - saveState(project,getNextPhase(currentPhase)); + saveState(project,changeToPhase); } break; case Execution: @@ -74,7 +74,7 @@ public class PhasesImpl implements IPhases { if (portfoliosReady) { // inform users about the end of the phase iCommunication.sendMessageToUsers(project, Messages.AssessmentPhaseStarted(project)); - saveState(project,getNextPhase(currentPhase)); + saveState(project,changeToPhase); } else { iJournal.assignMissingPortfolioTasks(project); } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesService.java index 6e4a0b1d..c0d45a75 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesService.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesService.java @@ -1,6 +1,7 @@ package unipotsdam.gf.core.states; import unipotsdam.gf.core.management.Management; +import unipotsdam.gf.core.management.ManagementImpl; import unipotsdam.gf.core.management.project.Project; import unipotsdam.gf.interfaces.IPhases; @@ -15,11 +16,9 @@ import javax.ws.rs.core.MediaType; @Path("/phases") public class PhasesService { - @Inject - private IPhases phases; + private IPhases phases = new PhasesImpl(); - @Inject - private Management management; + private Management management = new ManagementImpl(); /** * end phase @@ -40,8 +39,8 @@ public class PhasesService { */ @Path("/projects/{projectId}") @GET - @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON}) + @Produces({MediaType.TEXT_PLAIN}) public String getCurrentPhase(@PathParam("projectId") String projectId) { - return management.getProjectById(projectId).getPhase(); + return management.getProjectById(projectId).getPhase().toString(); } } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/ProjectPhase.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/ProjectPhase.java index 328b415f..ba8bffad 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/ProjectPhase.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/ProjectPhase.java @@ -2,5 +2,5 @@ package unipotsdam.gf.core.states; public enum ProjectPhase { CourseCreation, GroupFormation, DossierFeedback, Execution, Assessment, - Projectfinished; + Projectfinished } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java index ece31e17..1a484981 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java @@ -1,10 +1,14 @@ package unipotsdam.gf.modules.assessment.controller.view; +import unipotsdam.gf.core.management.Management; +import unipotsdam.gf.core.management.ManagementImpl; import unipotsdam.gf.interfaces.IPeerAssessment; +import unipotsdam.gf.interfaces.IPhases; import unipotsdam.gf.modules.assessment.QuizAnswer; import unipotsdam.gf.modules.assessment.controller.model.*; import unipotsdam.gf.modules.assessment.controller.service.PeerAssessment; +import javax.inject.Inject; import javax.ws.rs.*; import javax.ws.rs.core.MediaType; import java.io.IOException; @@ -210,5 +214,4 @@ public class QuizView { result.add(pf2); return result; } /////////dummy////////////returns what i expect it to return!!!!!////////////////////////////////// - } diff --git a/gemeinsamforschen/src/main/webapp/assets/css/footer.css b/gemeinsamforschen/src/main/webapp/assets/css/footer.css index 2e2c0e22..beb5cbc6 100644 --- a/gemeinsamforschen/src/main/webapp/assets/css/footer.css +++ b/gemeinsamforschen/src/main/webapp/assets/css/footer.css @@ -2,42 +2,37 @@ background:#DDDDDD; } -.pg-enrollment { +.pg-CourseCreation { background: #777777; width:5%; } -.pg-groups { +.pg-GroupFormation { background: #AAAA77; width:15%; } -.pg-dossier { +.pg-test { + background: #4F3A3E; + width: 50%; +} + +.pg-DossierFeedback { background: #AA77AA; width:30%; } -.pg-feedback { +.pg-Execution { background: #77AAAA; - width:45%; -} - -.pg-reflection { - background: #55AA55; - width:60%; -} - -.pg-presentation { - background: #5555AA; - width:70%; + width:55%; } -.pg-assessment { +.pg-Assessment { background: #AA5555; - width:85%; + width:75%; } -.pg-done { +.pg-Projectfinished { background: #34DD44; width:100%; } diff --git a/gemeinsamforschen/src/main/webapp/assets/img/noImg.png b/gemeinsamforschen/src/main/webapp/assets/img/noImg.png new file mode 100644 index 0000000000000000000000000000000000000000..efc3eb6959ce4f5badd7802c54bccfeccbf2ecf3 GIT binary patch literal 4496 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%0Da^H#-9k)iqJh$-KBLZ#|E#Kuhign9Aa6 zUBg`{AO56~)3^AsdvuP2bu&S{RMbkkw$stCmeXY0(6l%L?PT=zkan4F_y@trJe6W~ z8k0kI^O>Xc?L#x1mURsQ^5~PJues}^B%ImPhTDle9U%FgFlzzcvXV0|lOiKDYU{IS zsY5m*XQlbj*_c}z#^+!?ml6NMT#!eKQriq_F+%&ZZ;WKZ0^GF?ik*y+ej!jx_)Us{ z9KX{Kexga@Pg(&Cox{gpG80rD5*M%1M{2Uoq6IcNLwPloOK;F<2)Jz=GuFAxiO~$O z2Gb8DK){lF6I_${^eIJ~bOL0``q*u7KnbKm<>bUeu?ie0`JGoyK}+4DHD(+%6=Vob zhN;H>DOwyGTNNgv0Fj^IH@`!tntDvfJQXSF*@Ky|toWd;&UGPT6JH0v4c~;#?HHU- zcxLCibH*nZ5@$Uj>e<~qNpooXB`tq+Icg0j(KjbGy5{`qiz6wM=wKz1l&a)ervdPk zrGNvI_$NONt7E)nVSFPd$G)2Nl9IPS8<WDsOwp3{E?bQq$wf1+uZQKWMy*LjZwgYS z)ap{5y}?b~9SkGqQhmp>J<-uH<*HfQyQ$8n_V3Xlp}AJ079@$ZBK9)=)w}8$z$VTP zMB-9XsE6`~<b>{PQ!fcwbca+c425l0pIQiWD1MhgkpG&1ZFZ=c<pG6C={*#K@#)D1 zNk`UNvVMwEK>DddXPA`#b}Br#k=K|*8<ZRph&TNQQ+qDI8*0i9&G!6kKxz&1KQRt2 zEgH(t*o?H5U`3<uxVz8kuPjlM??)=aa0X6(cVBhEkGnbi$O8q!1i|L<)6?hmYPvfu z1RHQF|Kz5dRV!twJFsHPA1xc7GqENfOWT6Ea^V*fAw?x7_mA~1mL>1k?%@sls1HaM zt;h8)*=`tuK||_;vNmX2L$Aq^+c81L(zYzfYuF`GQ@pG|fa43}V%PtY#F!YGVOs48 zz(%SxhH62wsME@hsOWu!e%OmE2epJlEs?$leP4K0!jXQ37+|C%47u6g-@j~o({w^i z^#tnmjMivDlGO@eGuO<v4off3%A!rp!pV!85j>ACuwS`?R!gcFD<7gv5_Qq{_#4?{ z$jJn8-RZ2k9JLKzxG#1)j$lKd&RO){DS>1_tjhwb$;-<>(aMm3H9bM0P_rcWH(VGC lb`dS-budw07>xfz*O}z>+!YW|K>J0ZGuF2N)#<v${12Vd-7)|G literal 0 HcmV?d00001 diff --git a/gemeinsamforschen/src/main/webapp/assets/js/changePhase.js b/gemeinsamforschen/src/main/webapp/assets/js/changePhase.js index f26618fd..d35d4ceb 100644 --- a/gemeinsamforschen/src/main/webapp/assets/js/changePhase.js +++ b/gemeinsamforschen/src/main/webapp/assets/js/changePhase.js @@ -1,5 +1,4 @@ $(document).ready(function () { - //$("#save").on('click', function () { let projectId = $('#projectId').html().trim(); $.ajax({ url: '../rest/phases/projects/'+projectId, @@ -11,15 +10,49 @@ $(document).ready(function () { success: function (response) { let phaseDiv = $('#'+response); if (phaseDiv !== null){ - phaseDiv.toggleClass('alert','alert-info'); + phaseDiv.toggleClass('alert-info'); } else { - $('#end').addClass('alert-info'); + $('#end').toggleClass('alert-info'); } + }, + error: function (a) { + } + }); + $('#btnAssessment').on('click', function(){ + changePhase('Assessment'); + }); + $('#btnExecution').on('click', function(){ + changePhase('Execution'); + }); + $('#btnGroupformation').on('click', function(){ + changePhase('GroupFormation'); + }); + $('#btnCourseCreation').on('click', function(){ + changePhase('CourseCreation'); + }); + $('#btnDossierFeedback').on('click', function(){ + changePhase('DossierFeedback'); + }); + $('#btnProjectfinished').on('click', function(){ + changePhase('Projectfinished'); + }); +}); + +function changePhase(toPhase){ + let projectId = $('#projectId').html().trim(); + $.ajax({ + url: '../rest/phases/'+toPhase+'/projects/'+projectId, + headers: { + "Content-Type": "application/json", + "Cache-Control": "no-cache" + }, + type: 'POST', + success: function () { + location.href="#" }, error: function (a) { } }); - //}); -}); \ No newline at end of file +} \ No newline at end of file diff --git a/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js b/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js index bbfabe45..0f57c3be 100644 --- a/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js +++ b/gemeinsamforschen/src/main/webapp/assets/js/finalAssessment.js @@ -36,7 +36,7 @@ function buildTablesForPeers() { let innerPeerTable = '<table class="table-striped peerStudent" id="' + peers[peer] + '">' + '<tr>' + '<td align="center">' + - '<img src="../assets/img/1.jpg" alt="' + peers[peer] + '" style="width:20%;">' + + '<img src="../assets/img/noImg.png" alt="' + peers[peer] + '" style="width:20%;">' + '</td>' + '</tr>' + '<tr>' + diff --git a/gemeinsamforschen/src/main/webapp/assets/js/footer.js b/gemeinsamforschen/src/main/webapp/assets/js/footer.js index 33e3ada6..9407ef60 100644 --- a/gemeinsamforschen/src/main/webapp/assets/js/footer.js +++ b/gemeinsamforschen/src/main/webapp/assets/js/footer.js @@ -1,31 +1,3 @@ $(document).ready(function(){ - $('#nextPhase').click(function(){ - var progressbar =$('#progressbar'); - switch (progressbar.attr('class')){ - case 'progress-bar pg-groups': - progressbar.removeClass('pg-groups'); - progressbar.addClass('pg-dossier'); - break; - case 'progress-bar pg-dossier': - progressbar.removeClass('pg-dossier'); - progressbar.addClass('pg-feedback'); - break; - case 'progress-bar pg-feedback': - progressbar.removeClass('pg-feedback'); - progressbar.addClass('pg-reflection'); - break; - case 'progress-bar pg-reflection': - progressbar.removeClass('pg-reflection'); - progressbar.addClass('pg-presentation'); - break; - case 'progress-bar pg-presentation': - progressbar.removeClass('pg-presentation'); - progressbar.addClass('pg-assessment'); - break; - case 'progress-bar pg-assessment': - progressbar.removeClass('pg-assessment'); - progressbar.addClass('pg-done'); - break; - } - }); + }); diff --git a/gemeinsamforschen/src/main/webapp/assets/js/profile.js b/gemeinsamforschen/src/main/webapp/assets/js/profile.js new file mode 100644 index 00000000..7caac595 --- /dev/null +++ b/gemeinsamforschen/src/main/webapp/assets/js/profile.js @@ -0,0 +1,49 @@ +$(document).ready(function (e) { + $("#uploadimage").on('submit',(function(e) { + e.preventDefault(); + $("#message").empty(); + $('#loading').show(); + $.ajax({ + url: "ajax_php_file.php", // Url to which the request is send + type: "POST", // Type of request to be send, called as method + data: new FormData(this), // Data sent to server, a set of key/value pairs (i.e. form fields and values) + contentType: false, // The content type used when sending data to the server. + cache: false, // To unable request pages to be cached + processData:false, // To send DOMDocument or non processed data file it is set to false + success: function(data) // A function to be called if request succeeds + { + $('#loading').hide(); + $("#message").html(data); + } + }); + })); + +// Function to preview image after validation + $(function() { + $("#file").change(function() { + $("#message").empty(); // To remove the previous error message + let file = this.files[0]; + let imagefile = file.type; + let match= ["image/jpeg","image/png","image/jpg"]; + if(!((imagefile==match[0]) || (imagefile==match[1]) || (imagefile==match[2]))) + { + $('#previewing').attr('src','noimage.png'); + $("#message").html("<p id='error'>Please Select A valid Image File</p>"+"<h4>Note</h4>"+"<span id='error_message'>Only jpeg, jpg and png Images type allowed</span>"); + return false; + } + else + { + var reader = new FileReader(); + reader.onload = imageIsLoaded; + reader.readAsDataURL(this.files[0]); + } + }); + }); + function imageIsLoaded(e) { + $("#file").css("color","green"); + $('#image_preview').css("display", "block"); + $('#previewing').attr('src', e.target.result); + $('#previewing').attr('width', '250px'); + $('#previewing').attr('height', '230px'); + }; +}); \ No newline at end of file diff --git a/gemeinsamforschen/src/main/webapp/assets/js/utility.js b/gemeinsamforschen/src/main/webapp/assets/js/utility.js index f065dd0e..3f21a38c 100644 --- a/gemeinsamforschen/src/main/webapp/assets/js/utility.js +++ b/gemeinsamforschen/src/main/webapp/assets/js/utility.js @@ -7,11 +7,15 @@ $(document).ready(function(){ $('#assessment').click(function(){ checkAssessementPhase(); }); - function goBack() { - window.history.back(); - } + $('#footerBack').click(function(){ + goBack(); + }); }); +function goBack() { + window.history.back(); +} + function checkAssessementPhase(){ let studentId = $('#user').html().trim(); let projectId = $('#projectId').html().trim(); diff --git a/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld b/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld index 44230264..b32f459c 100644 --- a/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld +++ b/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld @@ -11,7 +11,7 @@ <tag> <name>menu</name> - <tag-class>unipotsdam.gf.core.management.user.Menu</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.Menu</tag-class> <body-content>empty</body-content> </tag> @@ -23,19 +23,19 @@ <tag> <name>omniDependencies</name> - <tag-class>unipotsdam.gf.core.management.user.omniDependencies</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.omniDependencies</tag-class> <body-content>empty</body-content> </tag> <tag> <name>headLine</name> - <tag-class>unipotsdam.gf.core.management.user.headLine</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.headLine</tag-class> <body-content>empty</body-content> </tag> <tag> <name>footer</name> - <tag-class>unipotsdam.gf.core.management.user.footer</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.footer</tag-class> <body-content>empty</body-content> </tag> diff --git a/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld.orig b/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld.orig index 46468908..24e3cda5 100644 --- a/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld.orig +++ b/gemeinsamforschen/src/main/webapp/core/pages/gemeinsamForschen.tld.orig @@ -11,14 +11,14 @@ <tag> <name>menu</name> - <tag-class>unipotsdam.gf.core.management.user.Menu</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.Menu</tag-class> <body-content>empty</body-content> </tag> <tag> <<<<<<< HEAD <name>headLine</name> - <tag-class>unipotsdam.gf.core.management.user.headLine</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.headLine</tag-class> ======= <name>session</name> <tag-class>unipotsdam.gf.core.session.SessionTag</tag-class> @@ -29,7 +29,7 @@ <tag> <<<<<<< HEAD <name>omniDependencies</name> - <tag-class>unipotsdam.gf.core.management.user.omniDependencies</tag-class> + <tag-class>unipotsdam.gf.core.management.pageAppearance.omniDependencies</tag-class> ======= <name>context</name> <tag-class>unipotsdam.gf.core.session.ContextTag</tag-class> diff --git a/gemeinsamforschen/src/main/webapp/pages/changePhase.jsp b/gemeinsamforschen/src/main/webapp/pages/changePhase.jsp index 6e0595f1..c3d7c07a 100644 --- a/gemeinsamforschen/src/main/webapp/pages/changePhase.jsp +++ b/gemeinsamforschen/src/main/webapp/pages/changePhase.jsp @@ -2,7 +2,7 @@ <%@ taglib uri="../core/pages/gemeinsamForschen.tld" prefix="menu" %> <%@ taglib uri="../core/pages/gemeinsamForschen.tld" prefix="headLine" %> <%@ taglib uri="../core/pages/gemeinsamForschen.tld" prefix="omniDependencies" %> -<%@ taglib uri="../core/pages/gemeinsamForschen.tld" prefix="omniDependencies" %> +<%@ taglib uri="../core/pages/gemeinsamForschen.tld" prefix="footer" %> <html> @@ -16,26 +16,26 @@ <menu:menu/> <div class="page-content-wrapper"> <headLine:headLine/> - <div class="alert" id="CourseCreation"> - Projekterstellungsphase + <div class="alert"id="CourseCreation"> + <button id="btnCourseCreation" class="btn btn-secondary">Projekterstellungsphase</button> </div> <div class="alert" id="GroupFormation"> - Entwurfsphase - </div> - <div class="alert" id="Execution"> - Durchführungsphase + <button id="btnGroupformation" class="btn btn-secondary">Gruppen erstellen</button> </div> <div class="alert" id="DossierFeedback"> - Feedbackphase + <button id="btnDossierFeedback" class="btn btn-secondary">Feedbackphase</button> + </div> + <div class="alert" id="Execution"> + <button id="btnExecution" class="btn btn-secondary">Durchführungsphase</button> </div> <div class="alert" id="Assessment"> - Bewertungsphase + <button id="btnAssessment" class="btn btn-secondary">Bewertungsphase</button> </div> <div class="alert" id="end"> - Ende + <button id="btnProjectfinished" class="btn btn-secondary">Ende</button> </div> </div> + <footer:footer/> </div> -<footer:footer/> </body> </html> diff --git a/gemeinsamforschen/src/main/webapp/pages/profile.jsp b/gemeinsamforschen/src/main/webapp/pages/profile.jsp index a14b0b5d..b7a597be 100644 --- a/gemeinsamforschen/src/main/webapp/pages/profile.jsp +++ b/gemeinsamforschen/src/main/webapp/pages/profile.jsp @@ -11,7 +11,8 @@ <head> <omniDependencies:omniDependencies/> - + <link href='http://fonts.googleapis.com/css?family=Roboto+Condensed|Open+Sans+Condensed:300' rel='stylesheet' type='text/css'> + <script src="../assets/js/profile.js"></script> </head> @@ -40,6 +41,15 @@ </li> <li class="list-group-item"> <p>Sonstiges:</p> + <form id="uploadimage" action="" method="post" enctype="multipart/form-data"> + <div id="image_preview"><img id="previewing" src="../assets/img/noImg.png" /></div> + <hr id="line"> + <div id="selectImage"> + <label>Select Your Image</label><br/> + <input type="file" name="file" id="file" required /> + <input type="submit" value="Upload" class="submit" /> + </div> + </form> </li> </ul> @@ -104,8 +114,8 @@ </div> </div> -</div> <footer:footer/> +</div> </body> </html> \ No newline at end of file -- GitLab