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 c86b8aa6d5db95159640747c314b4ba141c0fbae..5b51d0fdbeb955bcc9251454d143f7045034f432 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 0000000000000000000000000000000000000000..894babb0db1b7e6ba876ae5f0c700a9a0065792a
--- /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 0000000000000000000000000000000000000000..29d366cb5ad8af659610937da34707c4c70d6628
--- /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 087a26f8dfd29728abc9de226ef1511a26c59c82..36f2e74bcc9ebd0708ee4225d60a6c54a0a22a52 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 e4b3272b2dac3479a79f5271598981a0e04db3d6..ac6ce6fcd31cfc5ae79f42c26bc644404077970d 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 2fb7b840289b1b9056c7da73329bb2bbef6de38d..b329533304fc335bc6c0ccf69d8d8d577e15ad09 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 15f21c51425ab97ef0cb880a98bd49ec8496ea4c..0000000000000000000000000000000000000000
--- 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 fad401c7fa6ec4189c9af201ff3f92c6ae4c51bc..0000000000000000000000000000000000000000
--- 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 7bcf8a20fdb75120b33e7dae2b5cba48013ec3d7..ed289b311cfa75b30f22102953bd3ea80d17b49e 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 6e4a0b1d9f7b92043d2cf6a0157fc83fbe2b52de..c0d45a7532c298206bfd8a3ef371cfd5ae4381a0 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 328b415f28a8379e81258b79eb671e16614e0417..ba8bffad7c29716ddfd9bbb5f049e3f19b0241c4 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 ece31e173fed36a09078da15711131197272584d..1a484981db9ba3e13241412482670db23acd32af 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 2e2c0e2201dbb15067036094d7b3347845b22d96..beb5cbc6a2d2f0a9015b498d756e4a0531d77ca8 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
Binary files /dev/null and b/gemeinsamforschen/src/main/webapp/assets/img/noImg.png differ
diff --git a/gemeinsamforschen/src/main/webapp/assets/js/changePhase.js b/gemeinsamforschen/src/main/webapp/assets/js/changePhase.js
index f26618fd1b0f640808acc55254f52c7a29b63357..d35d4ceb258534952e37a952450705f2c0f24b4d 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 bbfabe459b7347a37f81a6ddd6a055862184f643..0f57c3bec407e642306c68bb0fed7651af94a53b 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 33e3ada606d22727234e01d6fa131f67e1240009..9407ef60d1a1c1af5d8bce6c5dc1e9c1835645bc 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 0000000000000000000000000000000000000000..7caac59590e33fdd24980e4b74d8112fe9e91eee
--- /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 f065dd0e7caed87d8484c575ba9557f3119f1058..3f21a38cd0eb8e61357a783869a2db3cc4e4f57d 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 442302647a6d7d6c3c027747fc7740cbf0cb216e..b32f459cea3a6a036b622c85cb47749d45a1d3a0 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 464689080655114907b3461748349ae320db9d88..24e3cda55c35f4136e26d14751eee2747723d997 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 6e0595f1e80ff0f4908a7cc5848ae7faf44629bf..c3d7c07a1f47ed3e1a855ef454dca240d92fb8c7 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 a14b0b5d3c0afde4da5a4061b82f98fe62614882..b7a597be38608a8b1f92cbbb8b7b2dcc53562a22 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