From 68669500a13b0e6206f031a320be8cb350b88c54 Mon Sep 17 00:00:00 2001
From: Julian Dehne <julian.dehne@uni-potsdam.de>
Date: Thu, 27 Sep 2018 10:47:44 +0200
Subject: [PATCH] - feat: continued porting features from the existing group
 finding tool.

---
 .../gf/core/database/mysql/MysqlConnect.java  |  23 +--
 .../gf/core/management/ContextDataView.java   |   4 +-
 .../gf/core/management/Management.java        |  10 +-
 .../gf/core/management/ManagementImpl.java    |  34 ++---
 .../gf/core/management/group/Group.java       |  40 ++---
 .../management/pageAppearance/Footer.java     |   4 +-
 .../management/pageAppearance/HeadLine.java   |  10 +-
 .../core/management/pageAppearance/Menu.java  |  30 ++--
 .../management/pageAppearance/Menu.java.orig  | 134 -----------------
 .../gf/core/management/project/Project.java   |   7 +-
 .../project/ProjectConfigurationDAO.java      |  22 +--
 .../core/management/project/ProjectDAO.java   |  10 +-
 .../core/management/project/ProjectView.java  |  14 +-
 .../management/project/ProjectView.java.orig  |  12 +-
 .../gf/core/management/user/User.java         |  23 +--
 .../gf/core/management/user/UserDAO.java      |  26 ++--
 .../gf/core/management/user/UserService.java  |  12 +-
 .../core/management/util/ResultSetUtil.java   |   3 +-
 .../unipotsdam/gf/core/states/PhasesImpl.java |   8 +-
 .../gf/core/states/PhasesService.java         |  16 +-
 .../states/model/ConstraintsMessages.java     |  16 +-
 .../java/unipotsdam/gf/core/tasks/Task.java   |   8 +-
 .../unipotsdam/gf/core/tasks/TaskDAO.java     |   4 +-
 .../unipotsdam/gf/core/tasks/TaskView.java    |   6 +-
 .../gf/interfaces/ICommunication.java         |   2 +-
 .../gf/interfaces/IPeerAssessment.java        |  26 ++--
 .../gf/interfaces/IPeerAssessment.java.orig   |  28 ++--
 .../unipotsdam/gf/interfaces/ISubmission.java |   4 +-
 .../controller/AnnotationController.java      |   6 +-
 .../modules/annotation/model/Annotation.java  |  14 +-
 .../model/AnnotationPostRequest.java          |  14 +-
 .../controller/model/Assessment.java          |   4 +-
 .../model/GroupEvalDiagrammData.java          |   4 +-
 .../controller/model/Performance.java         |  12 +-
 .../controller/model/StudentAndQuiz.java      |  14 +-
 .../controller/model/StudentIdentifier.java   |  41 ++---
 .../service/AssessmentDBCommunication.java    | 104 ++++++-------
 .../AssessmentDBCommunication.java.orig       |  80 +++++-----
 .../controller/service/PeerAssessment.java    |  61 ++++----
 .../service/QuizDBCommunication.java          |  28 ++--
 .../service/QuizDBCommunication.java.orig     |  28 ++--
 .../assessment/controller/view/QuizView.java  |  82 +++++-----
 .../controller/view/QuizView.java.orig        |  78 +++++-----
 .../service/CommunicationDummyService.java    |   9 +-
 .../service/DummyProjectCreationService.java  |  16 +-
 .../DummyProjectCreationService.java.orig     |  10 +-
 .../groupfinding/service/GroupDAO.java        |  49 +++---
 .../modules/groupfinding/view/GroupView.java  |   6 +-
 .../groupfinding/view/GroupView.java.orig     |   6 +-
 .../gf/modules/journal/model/Journal.java     |  18 +--
 .../journal/model/dao/JournalDAOImpl.java     |  24 +--
 .../model/dao/ProjectDescriptionDAOImpl.java  |  34 ++---
 .../modules/journal/service/IJournalImpl.java |  10 +-
 .../journal/service/JournalServiceImpl.java   |  12 +-
 .../service/ProjectDescriptionImpl.java       |  20 +--
 .../service/ProjectDescriptionService.java    |   4 +-
 .../gf/modules/journal/view/JournalView.java  |   4 +-
 .../journal/view/ProjectDescriptionView.java  |   6 +-
 .../controller/SubmissionController.java      |  24 +--
 .../submission/model/FullSubmission.java      |  14 +-
 .../model/FullSubmissionPostRequest.java      |  14 +-
 .../submission/model/SubmissionPart.java      |  14 +-
 .../model/SubmissionPartPostRequest.java      |  14 +-
 .../submission/view/SubmissionService.java    |   6 +-
 .../java/unipotsdam/gf/view/Messages.java     |   4 +-
 .../webapp/annotation/js/annotationScript.js  | 140 +++++++++---------
 .../webapp/annotation/js/createJournal.js     |   5 +-
 .../annotation/js/unstructuredAnnotation.js   |   8 +-
 .../annotation/js/unstructuredUpload.js       |   8 +-
 .../assessment/js/AlertAssessmentOutlier.js   |  92 ++++++------
 .../main/webapp/assessment/js/Quiz-docent.js  |   8 +-
 .../webapp/assessment/js/Quiz-docent.js.orig  |  93 ------------
 .../src/main/webapp/assessment/js/Quiz.js     |  12 +-
 .../main/webapp/assessment/js/Quiz.js.orig    |  36 -----
 .../main/webapp/assessment/js/assess-work.js  |  12 +-
 .../assessment/js/assessmentCalculator.js     |  18 +--
 .../main/webapp/assessment/js/create-quiz.js  |  12 +-
 .../webapp/assessment/js/create-quiz.js.orig  |  83 -----------
 .../webapp/assessment/js/rateContribution.js  |   8 +-
 .../main/webapp/assessment/js/take-quiz.js    |  12 +-
 .../main/webapp/assessment/js/view-quiz.js    |   6 +-
 .../src/main/webapp/core/footer.js            |   2 +-
 .../src/main/webapp/core/overview-docent.js   |   6 +-
 .../src/main/webapp/core/overview-student.js  |  26 ++--
 .../src/main/webapp/core/project-student.js   |  20 +--
 .../src/main/webapp/core/showProjects.js      |   2 +-
 .../src/main/webapp/core/utility.js           |  16 +-
 .../src/main/webapp/core/utility.js.orig      | 113 --------------
 .../main/webapp/course/js/createProject.js    |   6 +-
 .../main/webapp/course/js/enrollProject.js    |   2 +-
 .../src/main/webapp/course/js/showProjects.js |   2 +-
 .../webapp/course/js/specificRequirement.js   |   2 +-
 .../main/webapp/course/js/specificSkills.js   |   2 +-
 .../webapp/feedback/js/givepeerfeedback.js    |   2 +-
 .../main/webapp/feedback/js/peerfeedback.js   |   4 +-
 .../main/webapp/feedback/view-feedback.jsp    |   2 +-
 .../groupfinding/js/create-preferences.js     |   8 +-
 .../main/webapp/journal/create-journal.jsp    |   2 +-
 .../webapp/journal/edit-description.jsp.orig  |  75 ----------
 .../src/main/webapp/journal/eportfolio.jsp    |   2 +-
 .../main/webapp/journal/js/create-journal.js  |   4 +-
 .../webapp/journal/js/edit-description.js     |   4 +-
 .../src/main/webapp/journal/js/eportfolio.js  |  16 +-
 .../management/edit-assessment-settings.jsp   |   2 +-
 .../webapp/management/edit-group-settings.jsp |   4 -
 .../main/webapp/management/js/changePhase.js  |  12 +-
 .../webapp/management/js/create-project.js    |   2 +-
 .../webapp/management/js/deleteProject.js     |   4 +-
 .../management/js/edit-group-settings.js      |   6 +-
 .../main/webapp/management/js/join-project.js |   2 +-
 .../src/main/webapp/management/js/overview.js |   2 +-
 .../researchReport/js/createReportBibo.js     |   6 +-
 .../researchReport/js/createReportConcept.js  |   6 +-
 .../researchReport/js/createReportDo.js       |   6 +-
 .../js/createReportEvaluation.js              |   6 +-
 .../researchReport/js/createReportMethod.js   |   6 +-
 .../researchReport/js/createReportOverview.js |   8 +-
 .../researchReport/js/createReportProgress.js |  18 +--
 .../researchReport/js/createReportQuestion.js |   6 +-
 .../js/createReportRecherche.js               |   6 +-
 .../researchReport/js/createReportTitle.js    |   6 +-
 .../createDummyUsersGroupsProject.sql         |  26 ++--
 .../src/scripts/dbschema/fltrail.sql          |  71 ++++-----
 .../src/scripts/dbschema/journal.sql          |   8 +-
 .../scripts/dbschema/setup_gamification.sql   |   8 +-
 .../src/scripts/fltrail_tasks.sql             |   2 +-
 .../database/TestGFApplicationBinder.java     |  13 ++
 .../core/management/group/GroupDAOTest.java   |  40 +++--
 .../management/project/ProjectDAOTest.java    |   6 +-
 .../gf/core/management/user/UserDAOTest.java  |   5 +-
 .../gf/interfaces/AnnotationTest.java         |  16 +-
 .../modules/assessment/TestAddAssessment.java |  12 +-
 .../assessment/TestAddAssessment.java.orig    |  12 +-
 .../DummyProjectCreationServiceTest.java      |   2 +-
 .../journal/model/dao/JournalDAOImplTest.java |  30 ++--
 .../dao/ProjectDescriptionImplDAOTest.java    |  22 +--
 .../service/JournalServiceImplTest.java       |  16 +-
 .../service/ProjectDescriptionImplTest.java   |  16 +-
 .../src/test/resources/database/fltrail.sql   |  42 +++---
 139 files changed, 1097 insertions(+), 1653 deletions(-)
 delete mode 100644 gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java.orig
 delete mode 100644 gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js.orig
 delete mode 100644 gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js.orig
 delete mode 100644 gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js.orig
 delete mode 100644 gemeinsamforschen/src/main/webapp/core/utility.js.orig
 delete mode 100644 gemeinsamforschen/src/main/webapp/journal/edit-description.jsp.orig
 create mode 100644 gemeinsamforschen/src/test/java/unipotsdam/gf/core/database/TestGFApplicationBinder.java

diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/database/mysql/MysqlConnect.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/database/mysql/MysqlConnect.java
index 09a12822..bc253685 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/database/mysql/MysqlConnect.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/database/mysql/MysqlConnect.java
@@ -71,8 +71,8 @@ public class MysqlConnect {
             }
             return ps;
         } catch (SQLException ex) {
-            log.error(ex.toString());
-            System.out.println(ex);
+
+            printErrorMessage(statement, ex);
         }
         return null;
     }
@@ -84,8 +84,7 @@ public class MysqlConnect {
             ResultSet queryResult = ps.executeQuery();
             return new VereinfachtesResultSet(queryResult);
         } catch (SQLException ex) {
-            log.error(ex.toString());
-            System.out.println(ex);
+            printErrorMessage(statement, ex);
         }
         return null;
     }
@@ -95,8 +94,7 @@ public class MysqlConnect {
         try {
             this.conn.createStatement().execute(statement);
         } catch (SQLException ex) {
-            log.error(ex.toString());
-            System.out.println(ex);
+           printErrorMessage(statement, ex);
         }
     }
 
@@ -106,21 +104,24 @@ public class MysqlConnect {
         try {
             return ps.executeUpdate();
         } catch (SQLException ex) {
-            log.error(ex.toString());
-            System.out.println(ex);
+            printErrorMessage(statement, ex);
         }
         return null;
     }
 
+    private void printErrorMessage(String statement, SQLException ex) {
+        String message = ex.toString() + " for statement \n" + statement;
+        log.error(message);
+        System.out.println(message);
+    }
+
 
     public void issueInsertOrDeleteStatement(final String statement, final Object... args) {
         PreparedStatement ps = addParameters(statement, args);
         try {
             ps.execute();
         } catch (SQLException ex) {
-
-            log.error(ex.toString());
-            System.out.println(ex);
+            printErrorMessage(statement, ex);
         }
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ContextDataView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ContextDataView.java
index be276b52..b9d1e201 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ContextDataView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ContextDataView.java
@@ -22,10 +22,10 @@ public class ContextDataView {
     @GET
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/full")
-    public ContextDataOutput getContextData(@QueryParam("userToken") String userToken, @QueryParam("projectToken")
+    public ContextDataOutput getContextData(@QueryParam("userEmail") String userEmail, @QueryParam("projectToken")
                                             String projectToken) {
         Project projectByToken = iManagement.getProjectByToken(projectToken);
-        User user = iManagement.getUserByToken(userToken);
+        User user = iManagement.getUserByToken(userEmail);
 
         return new ContextDataOutput(projectByToken, user);
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/Management.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/Management.java
index dcaa008e..2d8d4c04 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/Management.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/Management.java
@@ -86,7 +86,7 @@ public interface Management {
 
     Boolean exists(Group group);
 
-    User getUserByName(String studentId);
+    User getUserByName(String userName);
 
     void create(ProjectConfiguration projectConfiguration, Project project);
 
@@ -96,15 +96,15 @@ public interface Management {
 
     Project getProjectByToken(String projectToken);
 
-    List<String> getProjects(String userToken);
+    List<String> getProjects(String userEmail);
 
-    User getUserByToken(String userToken);
+    User getUserByToken(String userEmail);
 
-    Project getProjectById(String projectId);
+    Project getProjectById(String projectName);
 
     List<String> getProjectsStudent(String studentToken);
 
-    String saveProfilePicture(FileInputStream fis, String studentId);
+    String saveProfilePicture(FileInputStream fis, String userName);
 
     List<String> getTags(Project project);
 }
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 b37eaa31..2b3336de 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ManagementImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/ManagementImpl.java
@@ -70,8 +70,8 @@ public class ManagementImpl implements Management {
     @Override
     public void register(User user, Project project, UserInterests interests) {
         connect.connect();
-        String mysqlRequest = "INSERT INTO projectuser (`projectId`, `userId`) values (?,?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequest, project.getId(), user.getId());
+        String mysqlRequest = "INSERT INTO projectuser (`projectName`, `userEmail`) values (?,?)";
+        connect.issueInsertOrDeleteStatement(mysqlRequest, project.getName(), user.getEmail());
         connect.close();
     }
 
@@ -101,13 +101,13 @@ public class ManagementImpl implements Management {
     }
 
     @Override
-    public User getUserByName(String studentId) {
+    public User getUserByName(String userName) {
         return null;
     }
 
 
     public List<User> getUsers(Project project) {
-        return userDAO.getUsersByProjectId(project.getId());
+        return userDAO.getUsersByProjectId(project.getName());
     }
 
     private User getUserFromResultSet(VereinfachtesResultSet vereinfachtesResultSet) {
@@ -120,11 +120,11 @@ public class ManagementImpl implements Management {
         if (existingGroups.containsKey(id)) {
             existingGroups.get(id).addMember(getUserFromResultSet(vereinfachtesResultSet));
         } else {
-            String projectId = vereinfachtesResultSet.getString("projectId");
+            String projectName = vereinfachtesResultSet.getString("projectName");
             User user = getUserFromResultSet(vereinfachtesResultSet);
             String chatRoomId = vereinfachtesResultSet.getString("chatRoomId");
             ArrayList<User> userList = new ArrayList<>(Collections.singletonList(user));
-            Group group = new Group(userList, projectId, chatRoomId);
+            Group group = new Group(userList, projectName, chatRoomId);
             existingGroups.put(id, group);
         }
     }
@@ -153,23 +153,23 @@ public class ManagementImpl implements Management {
 
         connect.connect();
 
-        String mysqlRequestGroup = "INSERT INTO groups (`projectId`,`chatRoomId`) values (?,?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequestGroup, group.getProjectId(), group.getChatRoomId());
+        String mysqlRequestGroup = "INSERT INTO groups (`projectName`,`chatRoomId`) values (?,?)";
+        connect.issueInsertOrDeleteStatement(mysqlRequestGroup, group.getProjectName(), group.getChatRoomId());
 
         for (User groupMember : group.getMembers()) {
             String mysqlRequest2 = "INSERT INTO groupuser (`userEmail`, `groupId`) values (?,?)";
-            connect.issueInsertOrDeleteStatement(mysqlRequest2, groupMember.getEmail(), group.getProjectId());
+            connect.issueInsertOrDeleteStatement(mysqlRequest2, groupMember.getEmail(), group.getProjectName());
         }
         connect.close();
     }
 
 
-    public List<Group> getGroupsByProjectId(String projectId) {
+    public List<Group> getGroupsByProjectId(String projectName) {
 
         connect.connect();
         String mysqlRequest =
-                "SELECT * FROM groups g " + "JOIN groupuser gu ON g.id=gu.groupId " + "JOIN users u ON gu.userEmail=u.email" + "where g.projectId = ?";
-        VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(mysqlRequest, projectId);
+                "SELECT * FROM groups g " + "JOIN groupuser gu ON g.id=gu.groupId " + "JOIN users u ON gu.userEmail=u.email" + "where g.projectName = ?";
+        VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(mysqlRequest, projectName);
         HashMap<Integer, Group> groupHashMap = new HashMap<>();
         while (vereinfachtesResultSet.next()) {
             fillGroupFromResultSet(vereinfachtesResultSet, groupHashMap);
@@ -257,25 +257,25 @@ public class ManagementImpl implements Management {
         }
         connect.connect();
         String mysqlRequest =
-                "SELECT projectId FROM projectuser WHERE useremail=?";
+                "SELECT projectName FROM projectuser WHERE useremail=?";
 
         //49c6eeda-62d2-465e-8832-dc2db27e760c
 
         List<String> result = new ArrayList<>();
         VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(mysqlRequest, studentEmail);
         while (vereinfachtesResultSet.next()) {
-            String project = vereinfachtesResultSet.getString("projectId");
+            String project = vereinfachtesResultSet.getString("projectName");
             result.add(project);
         }
         connect.close();
         return result;
     }
 
-    public String saveProfilePicture(FileInputStream image, String studentId) {
+    public String saveProfilePicture(FileInputStream image, String userName) {
         connect.connect();
         Blob blobbedImage = (Blob) image;
-        String mysqlRequest = "INSERT INTO `profilepicture`(`studentId`, `image`) VALUES (?,?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequest, studentId, blobbedImage);
+        String mysqlRequest = "INSERT INTO `profilepicture`(`userName`, `image`) VALUES (?,?)";
+        connect.issueInsertOrDeleteStatement(mysqlRequest, userName, blobbedImage);
         connect.close();
         return "success";    }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/group/Group.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/group/Group.java
index b28673c9..4ff42615 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/group/Group.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/group/Group.java
@@ -11,33 +11,41 @@ public class Group {
 
     private int id; // do not set yourself, autoincrement
     private List<User> members;
-    private String projectId;
+    private String projectName;
     private String chatRoomId;
 
     public Group() {
     }
 
 
-    public Group(String projectId) {
-        this(new ArrayList<>(), projectId);
+    public String getProjectName() {
+        return projectName;
     }
 
-    public Group(List<User> members, String projectId) {
-        this(members, projectId, "");
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
     }
 
-    public Group(int id, String projectId) {
-        this(id, new ArrayList<>(), projectId, "");
+    public Group(String projectName) {
+        this(new ArrayList<>(), projectName);
     }
 
-    public Group(List<User> members, String projectId, String chatRoomId) {
-        this(0, members, projectId, chatRoomId);
+    public Group(List<User> members, String projectName) {
+        this(members, projectName, "");
     }
 
-    public Group(int id, List<User> members, String projectId, String chatRoomId) {
+    public Group(int id, String projectName) {
+        this(id, new ArrayList<>(), projectName, "");
+    }
+
+    public Group(List<User> members, String projectName, String chatRoomId) {
+        this(0, members, projectName, chatRoomId);
+    }
+
+    public Group(int id, List<User> members, String projectName, String chatRoomId) {
         this.id = id;
         this.members = members;
-        this.projectId = projectId;
+        this.projectName = projectName;
         this.chatRoomId = chatRoomId;
     }
 
@@ -61,13 +69,7 @@ public class Group {
         members.add(user);
     }
 
-    public String getProjectId() {
-        return projectId;
-    }
 
-    public void setProjectId(String projectId) {
-        this.projectId = projectId;
-    }
 
     public int getId() {
         return id;
@@ -87,13 +89,13 @@ public class Group {
                 .collect(Collectors.toList());
         return Objects.equals(members.size(), newMemberList.size()) &&
                 Objects.equals(members.size(), group.members.size()) &&
-                Objects.equals(projectId, group.projectId) &&
+                Objects.equals(projectName, group.projectName) &&
                 Objects.equals(chatRoomId, group.chatRoomId) &&
                 Objects.equals(id, group.id) || Objects.equals(id, 0) || Objects.equals(group.id, 0);
     }
 
     @Override
     public int hashCode() {
-        return Objects.hash(members, projectId, chatRoomId);
+        return Objects.hash(members, projectName, chatRoomId);
     }
 }
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
index 10df8532..816601b6 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Footer.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Footer.java
@@ -18,10 +18,10 @@ public class Footer extends SimpleTagSupport {
     public void doTag() throws IOException {
         PageContext pageContext = (PageContext) getJspContext();
         HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
-        String projectId = request.getParameter("projectId");
+        String projectName = request.getParameter("projectName");
         ProjectPhase projectPhase;
         try {
-            projectPhase = projectDAO.getProjectById(projectId).getPhase();
+            projectPhase = projectDAO.getProjectById(projectName).getPhase();
         } catch (Exception e) {
             projectPhase = null;
         }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/HeadLine.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/HeadLine.java
index d870e8f0..cc0c7d1c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/HeadLine.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/HeadLine.java
@@ -17,11 +17,11 @@ public class HeadLine extends SimpleTagSupport {
         PageContext pageContext = (PageContext) getJspContext();
         HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
         String userEmail = request.getSession().getAttribute(GFContexts.USEREMAIL).toString();
-        String projectId;
+        String projectName;
         try{
-            projectId = request.getSession().getAttribute(GFContexts.PROJECTNAME).toString();
+            projectName = request.getSession().getAttribute(GFContexts.PROJECTNAME).toString();
         }catch ( Exception e){
-            projectId = null;
+            projectName = null;
         }
 
         JspWriter out = getJspContext().getOut();
@@ -32,8 +32,8 @@ public class HeadLine extends SimpleTagSupport {
                 "            <table style=\"width:100%\">\n" +
                 "                <tr>\n" +
                 "                    <td style=\"width:70%\"><h2 id=\"headLineProject\">");
-        if (projectId != null) {
-            out.println(projectId);
+        if (projectName != null) {
+            out.println(projectName);
         } else {
             if (isStudent) {
                 out.println("Studentenübersicht " + user.getName());
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
index 27a39988..e93c5fa9 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java
@@ -44,35 +44,35 @@ public class Menu extends SimpleTagSupport {
             if (isStudent) {
                 String menuString = "<div id=\"sidebar-wrapper\">\n" +
                         "        <ul class=\"sidebar-nav\">\n" +
-                        "            <li class=\"sidebar-brand\"><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "overview-student.jsp?token=" + userEmail + "&projectId=" + projectName + "\">overview</a></li>\n" +
-                        "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "profile/profile.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Profil</a></li>\n";
+                        "            <li class=\"sidebar-brand\"><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "overview-student.jsp" + userEmail + "&projectName=" + projectName + "\">overview</a></li>\n" +
+                        "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "profile/profile.jsp" + userEmail + "&projectName=" + projectName + "\">Profil</a></li>\n";
                 if (projectPhase != null) {
                     switch (projectPhase){
                         case CourseCreation:{
                             menuString += "      <li><p>Quizfrage</p></li>\n" +
-                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp?token=" + userEmail + "&projectId=" + projectName + "\">ePortfolio</a></li>\n" +
+                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp" + userEmail + "&projectName=" + projectName + "\">ePortfolio</a></li>\n" +
                                     "            <li><p>Beitrag</p></li>\n" +
                                     "            <li><p>Bewertung</p></li>\n";
                             break;
                         }
                         case GroupFormation:{
                             menuString += "      <li><p>Quizfrage</p></li>\n" +
-                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp?token=" + userEmail + "&projectId=" + projectName + "\">ePortfolio</a></li>\n" +
+                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp" + userEmail + "&projectName=" + projectName + "\">ePortfolio</a></li>\n" +
                                     "            <li><p>Beitrag</p></li>\n" +
                                     "            <li><p>Bewertung</p></li>\n";
                             break;
                         }
                         case DossierFeedback:{
                             menuString += "      <li><p>Quizfrage</p></li>\n" +
-                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp?token=" + userEmail + "&projectId=" + projectName + "\">ePortfolio</a></li>\n" +
-                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "researchReport/create-title.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Beitrag</a></li>\n" +
+                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp" + userEmail + "&projectName=" + projectName + "\">ePortfolio</a></li>\n" +
+                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "researchReport/create-title.jsp" + userEmail + "&projectName=" + projectName + "\">Beitrag</a></li>\n" +
                                     "            <li><p>Bewertung</p></li>\n";
                             break;
                         }
                         case Execution:{
-                            menuString += "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/Quiz.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Quizfrage</a></li>\n" +
-                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp?token=" + userEmail + "&projectId=" + projectName + "\">ePortfolio</a></li>\n" +
-                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "researchReport/create-title.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Beitrag</a></li>\n" +
+                            menuString += "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/Quiz.jsp" + userEmail + "&projectName=" + projectName + "\">Quizfrage</a></li>\n" +
+                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp" + userEmail + "&projectName=" + projectName + "\">ePortfolio</a></li>\n" +
+                                    "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "researchReport/create-title.jsp" + userEmail + "&projectName=" + projectName + "\">Beitrag</a></li>\n" +
                                     "            <li><p>Bewertung</p></li>\n";
                             break;
                         }
@@ -102,16 +102,16 @@ public class Menu extends SimpleTagSupport {
             } else {
                 String menuString = "<div id=\"sidebar-wrapper\">\n" +
                         "        <ul class=\"sidebar-nav\">\n" +
-                        "            <li class=\"sidebar-brand\"><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "overview-docent.jsp?token=" + userEmail + "&projectId=" + projectName + "\">overview</a></li>\n";
+                        "            <li class=\"sidebar-brand\"><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "overview-docent.jsp" + userEmail + "&projectName=" + projectName + "\">overview</a></li>\n";
                 if (projectPhase != null) {
                     if (!projectPhase.equals(ProjectPhase.GroupFormation)) {
-                        menuString += "<li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/Quiz-docent.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Quizfrage</a></li>\n" +
+                        menuString += "<li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/Quiz-docent.jsp" + userEmail + "&projectName=" + projectName + "\">Quizfrage</a></li>\n" +
                                 "      <li><p>Gruppen erstellen</p></li>\n" +
-                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "management/change-phase.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Projektphase ändern</a></li>\n";
+                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "management/change-phase.jsp" + userEmail + "&projectName=" + projectName + "\">Projektphase ändern</a></li>\n";
                     } else {
-                        menuString += "<li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/quiz-docent.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Quizfrage</a></li>\n" +
-                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "groupfinding/create-groups.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Gruppen erstellen</a></li>\n" +
-                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "management/change-phase.jsp?token=" + userEmail + "&projectId=" + projectName + "\">Projektphase ändern</a></li>\n";
+                        menuString += "<li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/quiz-docent.jsp" + userEmail + "&projectName=" + projectName + "\">Quizfrage</a></li>\n" +
+                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "groupfinding/create-groups.jsp" + userEmail + "&projectName=" + projectName + "\">Gruppen erstellen</a></li>\n" +
+                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "management/change-phase.jsp" + userEmail + "&projectName=" + projectName + "\">Projektphase ändern</a></li>\n";
                     }
                 }
                 menuString += "<li><a id=\"logout\" style=\"cursor:pointer\">Logout</a></li>\n" +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java.orig
deleted file mode 100644
index c787f45f..00000000
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/pageAppearance/Menu.java.orig
+++ /dev/null
@@ -1,134 +0,0 @@
-package unipotsdam.gf.core.management.pageAppearance;
-
-import unipotsdam.gf.core.database.mysql.MysqlConnect;
-import unipotsdam.gf.core.management.project.ProjectDAO;
-import unipotsdam.gf.core.management.user.User;
-import unipotsdam.gf.core.management.user.UserDAO;
-import unipotsdam.gf.core.states.model.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 {
-
-    private Integer hierarchyLevel = 0;
-
-    public void doTag() throws IOException {
-        hierarchyLevel = getHierarchy();
-        PageContext pageContext = (PageContext) getJspContext();
-        HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
-        String token = request.getParameter("token");
-        String projectId = request.getParameter("projectId");
-        ProjectPhase projectPhase;
-        try {
-            ProjectDAO projectDAO = new ProjectDAO(new MysqlConnect());
-            projectPhase = projectDAO.getProjectById(projectId).getPhase();
-        } catch (Exception e) {
-            projectPhase = null;
-        }
-        JspWriter out = getJspContext().getOut();
-        UserDAO userDAO = new UserDAO(new MysqlConnect());
-        if (token != null) {
-            User user = userDAO.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=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "overview-student.jsp?token=" + token + "&projectId=" + projectId + "\">overview</a></li>\n" +
-                        "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "profile/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=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/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=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/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=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp?token=" + token + "&projectId=" + projectId + "\">ePortfolio</a></li>\n" +
-                                "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "researchReport/create-title.jsp?token=" + token + "&projectId=" + projectId + "\">Beitrag</a></li>\n" +
-                                "            <li><p>Bewertung</p></li>\n";
-                    }
-                    if (projectPhase.equals(ProjectPhase.Execution)) {
-                        menuString += "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/Quiz.jsp?token=" + token + "&projectId=" + projectId + "\">Quizfrage</a></li>\n" +
-                                "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "journal/eportfolio.jsp?token=" + token + "&projectId=" + projectId + "\">ePortfolio</a></li>\n" +
-                                "            <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "researchReport/create-title.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=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "overview-docent.jsp?token=" + token + "&projectId=" + projectId + "\">overview</a></li>\n";
-                if (projectPhase != null) {
-                    if (!projectPhase.equals(ProjectPhase.GroupFormation)) {
-                        menuString += "<li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/Quiz-docent.jsp?token=" + token + "&projectId=" + projectId + "\">Quizfrage</a></li>\n" +
-                                "      <li><p>Gruppen erstellen</p></li>\n" +
-<<<<<<< HEAD
-                                "      <li><a href=\""+OmniDependencies.hierarchyToString(hierarchyLevel)+"management/change-phase.jsp?token="+token+"&projectId="+projectId+"\">Projektphase ändern</a></li>\n";
-                    }else {
-                        menuString += "<li><a href=\""+OmniDependencies.hierarchyToString(hierarchyLevel)+"assessment/quiz-docent.jsp?token="+token+"&projectId="+projectId+"\">Quizfrage</a></li>\n" +
-                                "      <li><a href=\""+OmniDependencies.hierarchyToString(hierarchyLevel)+"groupfinding/create-create-groups-learninggoal.jsp?token="+token+"&projectId="+projectId+"\">Gruppen erstellen</a></li>\n" +
-                                "      <li><a href=\""+OmniDependencies.hierarchyToString(hierarchyLevel)+"management/change-phase.jsp?token="+token+"&projectId="+projectId+"\">Projektphase ändern</a></li>\n";
-=======
-                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "management/change-phase.jsp?token=" + token + "&projectId=" + projectId + "\">Projektphase ändern</a></li>\n";
-                    } else {
-                        menuString += "<li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "assessment/quiz-docent.jsp?token=" + token + "&projectId=" + projectId + "\">Quizfrage</a></li>\n" +
-                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "groupfinding/create-groups.jsp?token=" + token + "&projectId=" + projectId + "\">Gruppen erstellen</a></li>\n" +
-                                "      <li><a href=\"" + OmniDependencies.hierarchyToString(hierarchyLevel) + "management/change-phase.jsp?token=" + token + "&projectId=" + projectId + "\">Projektphase ändern</a></li>\n";
->>>>>>> origin/development_master
-                    }
-                }
-                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 = userDAO.getUserByToken(token);
-        if (user != null)
-            out.println("<p id=\"user\" hidden>" + user.getName() + "</p>");
-        out.println("<p id=\"hierarchyLevel\" hidden>" + hierarchyLevel.toString() + "</p>");
-
-
-    }
-
-    public Integer getHierarchy() {
-        return hierarchyLevel;
-    }
-
-    public void setHierarchy(Integer hierarchyLevel) {
-        this.hierarchyLevel = hierarchyLevel;
-    }
-}
\ 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 d91efe17..28f20898 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
@@ -53,11 +53,11 @@ public class Project {
         this.tags = tags;
     }
 
-    public Project(String projectId) {
-        setId(projectId);
+    public Project(String projectName) {
+        setId(projectName);
     }
 
-    public String getId() {
+    public String getName() {
         return id;
     }
 
@@ -139,7 +139,6 @@ public class Project {
         sb.append(", timecreated=").append(timecreated);
         sb.append(", authorEmail='").append(authorEmail).append('\'');
         sb.append(", adminPassword='").append(adminPassword).append('\'');
-        sb.append(", token='").append(token).append('\'');
         sb.append(", phase='").append(phase).append('\'');
         sb.append('}');
         return sb.toString();
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectConfigurationDAO.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectConfigurationDAO.java
index cc4017e9..7737a421 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectConfigurationDAO.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectConfigurationDAO.java
@@ -23,10 +23,10 @@ public class ProjectConfigurationDAO {
         for (Category category : criteriaSelected.keySet()) {
             Boolean criteriumSelected = criteriaSelected.get(category);
             if (criteriumSelected != null && criteriumSelected) {
-                String projectId = project.getId();
+                String projectName = project.getName();
                 String categoryName = category.name();
-                String mysqlRequest = "insert INTO categoriesSelected (`projectId`,`categorySelected`) VALUES (?,?)";
-                connect.issueInsertOrDeleteStatement(mysqlRequest, projectId, categoryName );
+                String mysqlRequest = "insert INTO categoriesSelected (`projectName`,`categorySelected`) VALUES (?,?)";
+                connect.issueInsertOrDeleteStatement(mysqlRequest, projectName, categoryName );
             }
         }
 
@@ -35,8 +35,8 @@ public class ProjectConfigurationDAO {
         for (ProjectPhase phase : phasesSelected.keySet()) {
             Boolean projectPhaseSelected = phasesSelected.get(phase);
             if (projectPhaseSelected != null && projectPhaseSelected) {
-                String mysqlRequest = "insert INTO phasesSelected (`projectId`,`phaseSelected`) VALUES (?,?)";
-                connect.issueInsertOrDeleteStatement(mysqlRequest, project.getId(), phase.name());
+                String mysqlRequest = "insert INTO phasesSelected (`projectName`,`phaseSelected`) VALUES (?,?)";
+                connect.issueInsertOrDeleteStatement(mysqlRequest, project.getName(), phase.name());
             }
         }
 
@@ -46,8 +46,8 @@ public class ProjectConfigurationDAO {
 
             if (groupFindingMechanism != null) {
                 String mysqlRequest =
-                        "insert INTO groupfindingMechanismSelected (`projectId`,`gfmSelected`) VALUES (?,?)";
-                connect.issueInsertOrDeleteStatement(mysqlRequest, project.getId(), groupFindingMechanism.name());
+                        "insert INTO groupfindingMechanismSelected (`projectName`,`gfmSelected`) VALUES (?,?)";
+                connect.issueInsertOrDeleteStatement(mysqlRequest, project.getName(), groupFindingMechanism.name());
             }
 
 
@@ -59,8 +59,8 @@ public class ProjectConfigurationDAO {
             Boolean asmSelected = assessmentMechanismsSelected.get(assessmentMechanism);
             if (asmSelected != null && asmSelected) {
                 String mysqlRequest =
-                        "insert INTO assessmentMechanismSelected (`projectId`,`amSelected`) VALUES (?,?)";
-                connect.issueInsertOrDeleteStatement(mysqlRequest, project.getId(), assessmentMechanism.name());
+                        "insert INTO assessmentMechanismSelected (`projectName`,`amSelected`) VALUES (?,?)";
+                connect.issueInsertOrDeleteStatement(mysqlRequest, project.getName(), assessmentMechanism.name());
             }
         }
         connect.close();
@@ -115,8 +115,8 @@ public class ProjectConfigurationDAO {
     private <T extends Enum<T>> HashMap<T, Boolean> getSelectionFromTable(
             MysqlConnect connect, Class<T> selectionclass, Project project, String table) {
         // get phasesSelected
-        String id = project.getId();
-        String mysqlRequest = "SELECT * FROM " + table + " where projectId = ?";
+        String id = project.getName();
+        String mysqlRequest = "SELECT * FROM " + table + " where projectName = ?";
         VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(mysqlRequest, id);
         HashMap<T, Boolean> projectPhaseBoolean = new HashMap<>();
         while (!vereinfachtesResultSet.isLast()) {
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectDAO.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectDAO.java
index b193073c..9bbe3ab2 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectDAO.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectDAO.java
@@ -32,7 +32,7 @@ public class ProjectDAO {
         String mysqlRequest =
                 "INSERT INTO projects (`id`, `password`, `active`, `timecreated`, `authorEmail`, "
                         + "`adminPassword`, `token`, `phase`) values (?,?,?,?,?,?,?,?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequest, project.getId(), project.getPassword(), project.isActive(),
+        connect.issueInsertOrDeleteStatement(mysqlRequest, project.getName(), project.getPassword(), project.isActive(),
                 project.getTimecreated(), project.getAuthorEmail(), project.getAdminPassword(), token, project.getPhase()
                         == null ? ProjectPhase.CourseCreation : project.getPhase());
         connect.close();
@@ -42,7 +42,7 @@ public class ProjectDAO {
     public void delete(Project project) {
         connect.connect();
         String mysqlRequest = "DELETE FROM projects where id = (?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequest, project.getId());
+        connect.issueInsertOrDeleteStatement(mysqlRequest, project.getName());
         connect.close();
         // TODO: delete all groups of project?
 
@@ -53,7 +53,7 @@ public class ProjectDAO {
         connect.connect();
         String mysqlRequest = "SELECT * FROM projects where id = ? and adminPassword = ?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, project.getId(), project.getAdminPassword());
+                connect.issueSelectStatement(mysqlRequest, project.getName(), project.getAdminPassword());
         result = vereinfachtesResultSet.next();
         connect.close();
         return result;
@@ -104,8 +104,8 @@ public class ProjectDAO {
     public java.util.List<String> getTags(Project project) {
         connect.connect();
         String mysqlRequest =
-                "SELECT t.tag from tags t where t.projectId = ?";
-        VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(mysqlRequest, project.getId());
+                "SELECT t.tag from tags t where t.projectName = ?";
+        VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(mysqlRequest, project.getName());
 
         java.util.List<String> result = new ArrayList<>();
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java
index a4de5f93..cc238b25 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java
@@ -31,10 +31,10 @@ public class ProjectView {
         // we assume the token is send not the author id
         String authorToken = project.getAuthorEmail();
         User userByToken = iManagement.getUserByToken(authorToken);
-        project.setAuthorEmail(userByToken.getId());
+        project.setAuthorEmail(userByToken.getEmail());
         try {
             String projectToken = iManagement.create(project);
-            req.getSession().setAttribute(GFContexts.PROJECTNAME, project.getId());
+            req.getSession().setAttribute(GFContexts.PROJECTNAME, project.getName());
             return projectToken;
         } catch (Exception e) {
             return "project exists";
@@ -76,9 +76,9 @@ public class ProjectView {
     @GET
     @Consumes(MediaType.TEXT_PLAIN)
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/all/author/{userToken}")
+    @Path("/all/author/{userEmail}")
     public java.util.List<String> getProjects(
-            @PathParam("userToken") String authorToken) {
+            @PathParam("userEmail") String authorToken) {
 
         java.util.List<String> projects = iManagement.getProjects(authorToken);
         return projects;
@@ -96,9 +96,9 @@ public class ProjectView {
     @GET
     @Consumes(MediaType.TEXT_PLAIN)
     @Produces(MediaType.TEXT_PLAIN)
-    @Path("/login/{projectId}")
-    public String logInProject(@PathParam("projectId") String projectId, @QueryParam("password") String password) {
-        Project project = iManagement.getProjectById(projectId);
+    @Path("/login/{projectName}")
+    public String logInProject(@PathParam("projectName") String projectName, @QueryParam("password") String password) {
+        Project project = iManagement.getProjectById(projectName);
         if (project == null){
             return "project missing";
         }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java.orig
index d82c7ea4..db21d73d 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/project/ProjectView.java.orig
@@ -51,9 +51,9 @@ public class ProjectView {
     @GET
     @Consumes(MediaType.TEXT_PLAIN)
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/all/author/{userToken}")
+    @Path("/all/author/{userEmail}")
     public java.util.List<String> getProjects(
-            @PathParam("userToken") String authorToken) {
+            @PathParam("userEmail") String authorToken) {
         java.util.List<String> projects = iManagement.getProjects(authorToken);
         return projects;
     }
@@ -62,7 +62,7 @@ public class ProjectView {
     @Consumes(MediaType.TEXT_PLAIN)
 <<<<<<< HEAD
     @Produces(MediaType.TEXT_PLAIN)
-    @Path("/login/{projectId}/password/{password}")
+    @Path("/login/{projectName}/password/{password}")
 =======
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/all/student/{studentToken}")
@@ -75,10 +75,10 @@ public class ProjectView {
     @GET
     @Consumes(MediaType.TEXT_PLAIN)
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/join/project/{projectId}/password/{password}")
+    @Path("/join/project/{projectName}/password/{password}")
 >>>>>>> 05a31d1f59f28ad502822884c1e2f196f9239de7
-    public String logInProject(@PathParam("projectId") String projectId, @PathParam("password") String password) {
-        Project project = iManagement.getProjectById(projectId);
+    public String logInProject(@PathParam("projectName") String projectName, @PathParam("password") String password) {
+        Project project = iManagement.getProjectById(projectName);
         if (project == null){
             return "project missing";
         }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/User.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/User.java
index 39606a39..3d8b4af5 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/User.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/User.java
@@ -13,7 +13,6 @@ public class User {
     private String name;
     private String password;
     private String email;
-    private String token;
     private String rocketChatAuthToken;
     private String rocketChatId;
     private Boolean isStudent;
@@ -25,25 +24,15 @@ public class User {
         this(name, password, email, "", "", isStudent);
     }
 
-    public User(String name, String password, String email, String rocketChatId, String rocketChatAuthToken, Boolean isStudent) {
-        this(name, password, email, "", rocketChatAuthToken, rocketChatId, isStudent);
-    }
-
-    public User(String name, String password, String email, String token, String rocketChatAuthToken, String rocketChatId, Boolean isStudent) {
+    public User(String name, String password, String email,  String rocketChatAuthToken, String rocketChatId, Boolean isStudent) {
         this.name = name;
         this.password = password;
         this.email = email;
-        this.token = token;
         this.rocketChatAuthToken = rocketChatAuthToken;
         this.rocketChatId = rocketChatId;
         this.isStudent = isStudent;
     }
 
-    // the email is the id!
-    public String getId() {
-        return this.email;
-    }
-
     public String getName() {
         return name;
     }
@@ -68,15 +57,6 @@ public class User {
         this.email = email;
     }
 
-    public String getToken() {
-        return token;
-    }
-
-    public void setToken(String token) {
-        this.token = token;
-    }
-
-
     public Boolean getStudent() {
         return isStudent;
     }
@@ -107,7 +87,6 @@ public class User {
                 "name='" + name + '\'' +
                 ", password='" + password + '\'' +
                 ", email='" + email + '\'' +
-                ", token='" + token + '\'' +
                 ", rocketChatAuthToken='" + rocketChatAuthToken + '\'' +
                 ", rocketChatId='" + rocketChatId + '\'' +
                 ", isStudent=" + isStudent +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserDAO.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserDAO.java
index 4bbea36e..5ac4f4e8 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserDAO.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserDAO.java
@@ -26,13 +26,11 @@ public class UserDAO {
     }
 
     public void persist(User user, UserProfile profile) {
-        UUID uuid = UUID.randomUUID();
-        String token = uuid.toString();
         connect.connect();
-        String mysqlRequest = "INSERT INTO users (`name`, `password`, `email`, `token`,`isStudent`," +
-                "`rocketChatId`,`rocketChatAuthToken`) values (?,?,?,?,?,?,?)";
+        String mysqlRequest = "INSERT INTO users (`name`, `password`, `email`, `isStudent`," +
+                "`rocketChatId`,`rocketChatAuthToken`) values (?,?,?,?,?,?)";
         connect.issueInsertOrDeleteStatement(mysqlRequest, user.getName(), user.getPassword(), user.getEmail(),
-                token, user.getStudent(), user.getRocketChatId(), user.getRocketChatAuthToken());
+                 user.getStudent(), user.getRocketChatId(), user.getRocketChatAuthToken());
         connect.close();
         // TODO implmement UserProfile @Mar
     }
@@ -45,13 +43,13 @@ public class UserDAO {
     }
 
     public void update(User user) {
-        String mysqlRequest = "UPDATE `users` SET `name`=?,`password`=?,`email`=?,`token`=?,`isStudent`=?," +
+        String mysqlRequest = "UPDATE `users` SET `name`=?,`password`=?,`email`=?,`isStudent`=?," +
                 "`rocketChatId`=?,`rocketChatAuthToken`=? WHERE email=? LIMIT 1";
         //TODO: maybe add handling if a line is actually updated
         //TODO: if user is updated, it also must update all other tables which includes some information about the user, for example project user
         connect.connect();
-        connect.issueUpdateStatement(mysqlRequest, user.getName(), user.getPassword(), user.getEmail(),
-                user.getToken(), user.getStudent(), user.getRocketChatId(), user.getRocketChatAuthToken(), user.getEmail());
+        connect.issueUpdateStatement(mysqlRequest, user.getName(), user.getPassword(), user.getEmail(), user
+                .getStudent(), user.getRocketChatId(), user.getRocketChatAuthToken(), user.getEmail());
         connect.close();
     }
 
@@ -66,22 +64,20 @@ public class UserDAO {
         return result;
     }
 
-    public List<User> getUsersByProjectId(String projectId) {
+    public List<User> getUsersByProjectId(String projectName) {
         connect.connect();
         String query =
                 "SELECT * FROM users u "
-                        + " JOIN projectuser pu ON u.email=pu.userId"
-                        + " JOIN projects p ON pu.projectId = p.id"
-                        + " WHERE pu.projectId = ?";
+                        + " JOIN projectuser pu ON u.email=pu.userEmail"
+                        + " JOIN projects p ON pu.projectName = p.id"
+                        + " WHERE pu.projectName = ?";
 
         ArrayList<User> result = new ArrayList<>();
-        VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(query, projectId);
+        VereinfachtesResultSet vereinfachtesResultSet = connect.issueSelectStatement(query, projectName);
         while (!vereinfachtesResultSet.isLast()) {
             boolean next = vereinfachtesResultSet.next();
             if (next) {
                 User user = ResultSetUtil.getUserFromResultSet(vereinfachtesResultSet);
-                String token = vereinfachtesResultSet.getString("token");
-                user.setToken(token);
                 result.add(user);
             } else {
                 break;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserService.java
index eacc8f09..79aba97c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/user/UserService.java
@@ -26,7 +26,6 @@ import java.net.URISyntaxException;
 public class UserService {
 
     private ICommunication communicationService;
-
     private UserDAO userDAO;
 
     @Inject
@@ -91,12 +90,12 @@ public class UserService {
 
     @POST
     @Produces(MediaType.TEXT_PLAIN)
-    @Path("/student/{studentId}")
-    public String getQuiz(@FormParam("image") File file, @PathParam("studentId") String studentId) {
+    @Path("/student/{userName}")
+    public String getQuiz(@FormParam("image") File file, @PathParam("userName") String userName) {
         try {
             FileInputStream fis = new FileInputStream(file);
 
-            return management.saveProfilePicture(fis, studentId);
+            return management.saveProfilePicture(fis, userName);
         } catch (Exception e) {
             return e.toString();
         }
@@ -164,11 +163,10 @@ public class UserService {
 
 
         if (user.getStudent() != null && user.getStudent()) {
-            successUrl = "../overview-student.jsp?token=";
+            successUrl = "../overview-student.jsp";
         } else {
-            successUrl = "../overview-docent.jsp?token=";
+            successUrl = "../overview-docent.jsp";
         }
-        successUrl += userDAO.getUserToken(user);
         Response result =  forwardToLocation(successUrl);
 
         req.getSession().setAttribute(GFContexts.USEREMAIL, user.getEmail());
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/util/ResultSetUtil.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/util/ResultSetUtil.java
index 7a79f816..036de71c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/util/ResultSetUtil.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/management/util/ResultSetUtil.java
@@ -9,10 +9,9 @@ public class ResultSetUtil {
         String name = vereinfachtesResultSet.getString("name");
         String password = vereinfachtesResultSet.getString("password");
         String email = vereinfachtesResultSet.getString("email");
-        String token = vereinfachtesResultSet.getString("token");
         String rocketChatId = vereinfachtesResultSet.getString("rocketChatId");
         String rocketChatAuthToken = vereinfachtesResultSet.getString("rocketChatAuthToken");
         Boolean isStudent = vereinfachtesResultSet.getBoolean("isStudent");
-        return new User(name, password, email, token, rocketChatId, rocketChatAuthToken, isStudent);
+        return new User(name, password, email, rocketChatId, rocketChatAuthToken, isStudent);
     }
 }
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 cdca4dbf..670d24bb 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesImpl.java
@@ -115,10 +115,10 @@ public class PhasesImpl implements IPhases {
                 }
                 break;
             case Assessment:
-                tasks = iPeerAssessment.allAssessmentsDone(project.getId());
+                tasks = iPeerAssessment.allAssessmentsDone(project.getName());
                 if (tasks.size() < 1) {
                     iCommunication.sendMessageToUsers(project, Messages.CourseEnds(project));
-                    iPeerAssessment.finalizeAssessment(project.getId());
+                    iPeerAssessment.finalizeAssessment(project.getName());
                     saveState(project, changeToPhase);
                 } else {
                     iPeerAssessment.assignMissingAssessmentTasks(project);
@@ -154,11 +154,11 @@ public class PhasesImpl implements IPhases {
     }
 
     private void saveState(Project project, ProjectPhase phase) {
-        assert project.getId() != null;
+        assert project.getName() != null;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         String mysqlRequest = "UPDATE `projects` SET `phase`=? WHERE id=? LIMIT 1";
-        connect.issueUpdateStatement(mysqlRequest, phase.name(), project.getId());
+        connect.issueUpdateStatement(mysqlRequest, phase.name(), project.getName());
         connect.close();
     }
 
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 2c412169..399a398a 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/PhasesService.java
@@ -29,25 +29,25 @@ public class PhasesService {
      * end phase
      *
      * @param projectPhase
-     * @param projectId
+     * @param projectName
      */
-    @Path("/{projectPhase}/projects/{projectId}")
+    @Path("/{projectPhase}/projects/{projectName}")
     @POST
     @Consumes({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
-    public void endPhase(@PathParam("projectPhase") String projectPhase, @PathParam("projectId") String projectId) {
-        phases.endPhase(ProjectPhase.valueOf(projectPhase), projectDAO.getProjectById(projectId));
+    public void endPhase(@PathParam("projectPhase") String projectPhase, @PathParam("projectName") String projectName) {
+        phases.endPhase(ProjectPhase.valueOf(projectPhase), projectDAO.getProjectById(projectName));
     }
 
     /**
      * get current phase
      *
-     * @param projectId
+     * @param projectName
      * @return
      */
-    @Path("/projects/{projectId}")
+    @Path("/projects/{projectName}")
     @GET
     @Produces({MediaType.TEXT_PLAIN})
-    public String getCurrentPhase(@PathParam("projectId") String projectId) {
-        return projectDAO.getProjectById(projectId).getPhase().toString();
+    public String getCurrentPhase(@PathParam("projectName") String projectName) {
+        return projectDAO.getProjectById(projectName).getPhase().toString();
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/model/ConstraintsMessages.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/model/ConstraintsMessages.java
index 0d9d940d..16d41304 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/model/ConstraintsMessages.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/states/model/ConstraintsMessages.java
@@ -14,14 +14,14 @@ public class ConstraintsMessages {
     @Override
     public String toString() {
         switch (constraint) {
-            case QuizCount: return student.getStudentId()+" hat noch kein Quiz erstellt.";
-            case DossierMissing: return student.getStudentId()+" hat noch kein Dossier hochgeladen.";
-            case FeedbackCount: return student.getStudentId()+" hat noch nicht das erwartete Feedack gegeben.";
-            case JournalCount: return student.getStudentId()+" hat noch nicht genug Tagebucheinträge verfasst.";
-            case DossierOpen: return student.getStudentId()+" hat sein Dossier noch nicht finalisiert.";
-            case DescriptionsOpen: return student.getStudentId()+" hat die Descriptions noch nicht abgeschlossen.";
-            case JournalOpen: return student.getStudentId()+" hat sein Tagebuch noch nicht finalisiert";
-            case AssessmentOpen: return student.getStudentId()+" hat die Bewertung noch nicht abgeschlossen.";
+            case QuizCount: return student.getUserEmail()+" hat noch kein Quiz erstellt.";
+            case DossierMissing: return student.getUserEmail()+" hat noch kein Dossier hochgeladen.";
+            case FeedbackCount: return student.getUserEmail()+" hat noch nicht das erwartete Feedack gegeben.";
+            case JournalCount: return student.getUserEmail()+" hat noch nicht genug Tagebucheinträge verfasst.";
+            case DossierOpen: return student.getUserEmail()+" hat sein Dossier noch nicht finalisiert.";
+            case DescriptionsOpen: return student.getUserEmail()+" hat die Descriptions noch nicht abgeschlossen.";
+            case JournalOpen: return student.getUserEmail()+" hat sein Tagebuch noch nicht finalisiert";
+            case AssessmentOpen: return student.getUserEmail()+" hat die Bewertung noch nicht abgeschlossen.";
             default: return "default message";
         }
     }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/Task.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/Task.java
index 8fdedeb4..8ca6ac88 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/Task.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/Task.java
@@ -27,14 +27,14 @@ public class Task {
     private String link;
 
     public String getUserToken() {
-        return userToken;
+        return userEmail;
     }
 
-    public void setUserToken(String userToken) {
-        this.userToken = userToken;
+    public void setUserToken(String userEmail) {
+        this.userEmail = userEmail;
     }
 
-    private String userToken;
+    private String userEmail;
 
     public String getProjectToken() {
         return projectToken;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskDAO.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskDAO.java
index 42c2115e..80966ef8 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskDAO.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskDAO.java
@@ -12,13 +12,13 @@ public class TaskDAO {
     @Inject
     MysqlConnect connect;
 
-    public Task[] getTasks(String userToken, String projectToken) throws NotImplemented {
+    public Task[] getTasks(String userEmail, String projectToken) throws NotImplemented {
         throw new NotImplemented();
     }
 
     public void persist(Task task) throws NotImplemented {
         connect.connect();
-        String query = "INSERT INTO fltrail.tasks (userId, projectId, taskUrl, speakingName, technicalName, " +
+        String query = "INSERT INTO fltrail.tasks (userEmail, projectName, taskUrl, speakingName, technicalName, " +
                 "linkedMode, groupTask, importance, progress, phase, created, due) VALUES ('?', '?', '?', '?', '?', " +
                 "'?', ?, '?', '?', '?', '?', '?')";
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskView.java
index 97669372..391b6d4c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/core/tasks/TaskView.java
@@ -17,10 +17,10 @@ public class TaskView {
     @Inject
     private TaskDAO taskDAO;
 
-    @Path("/user/{userToken}/project/{projectToken}")
+    @Path("/user/{userEmail}/project/{projectToken}")
     @Produces(MediaType.APPLICATION_JSON)
-    public Task[] getTasks(@PathParam("userToken") String userToken,@PathParam("projectToken") String projectToken)
+    public Task[] getTasks(@PathParam("userEmail") String userEmail,@PathParam("projectToken") String projectToken)
             throws NotImplemented {
-        return taskDAO.getTasks(userToken, projectToken);
+        return taskDAO.getTasks(userEmail, projectToken);
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java
index 71a78118..b7be9916 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ICommunication.java
@@ -89,7 +89,7 @@ public interface ICommunication {
 
     boolean registerAndLoginUser(User user);
 
-    String getChatRoomLink(String userToken, String projectToken, String groupToken);
+    String getChatRoomLink(String userEmail, String projectToken, String groupToken);
 
     // TODO implement as Email or whatever
     void sendSingleMessage(Message message, User user);
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
index 239f73a7..fb97519a 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
@@ -17,17 +17,17 @@ import java.util.Map;
  * Created by dehne on 18.05.2018.
  */
 public interface IPeerAssessment {
-    void finalizeAssessment(String projectId);
+    void finalizeAssessment(String projectName);
 
-    Quiz getQuiz(String projectId, String quizId, String author);
-    ArrayList<Quiz> getQuiz(String projectId, String author);
+    Quiz getQuiz(String projectName, String quizId, String author);
+    ArrayList<Quiz> getQuiz(String projectName, String author);
     /**
      * will return a saved assessment from the DB
      *
      *
-     * @param projectId @return Assessement = studentIdentifier , performance
+     * @param projectName @return Assessement = userNameentifier , performance
      */
-    Map<StudentIdentifier, Double> getAssessmentForProject(String projectId);
+    Map<StudentIdentifier, Double> getAssessmentForProject(String projectName);
 
     Double getAssessmentForStudent(StudentIdentifier student);
 
@@ -44,10 +44,10 @@ public interface IPeerAssessment {
     /**
 
      *
-     * @param studentIdentifier
+     * @param userNameentifier
      * @return
      */
-    ArrayList<Performance> getTotalAssessment(StudentIdentifier studentIdentifier);
+    ArrayList<Performance> getTotalAssessment(StudentIdentifier userNameentifier);
 
     /**
      * calculates the mean value of all assessments in a project.
@@ -60,18 +60,18 @@ public interface IPeerAssessment {
     /**
      * returns all quizzes in a project
      *
-     * @param projectId
-     * @return all quizzes in projectId
+     * @param projectName
+     * @return all quizzes in projectName
      */
-    ArrayList<Quiz> getQuiz(String projectId);
+    ArrayList<Quiz> getQuiz(String projectName);
 
     /**
      * writes the peerRatings into db
      *
      * @param peerRatings
-     * @param projectId
+     * @param projectName
      */
-    void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId);
+    void postPeerRating(ArrayList<PeerRating> peerRatings, String projectName);
 
     /**
      *
@@ -94,7 +94,7 @@ public interface IPeerAssessment {
 
     String whatToRate(StudentIdentifier student);
 
-    Map<StudentIdentifier, ConstraintsMessages> allAssessmentsDone(String projectId);
+    Map<StudentIdentifier, ConstraintsMessages> allAssessmentsDone(String projectName);
 
     void assignMissingAssessmentTasks(Project project);
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java.orig
index 320e6b51..966eff80 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java.orig
@@ -17,17 +17,17 @@ import java.util.Map;
  * Created by dehne on 18.05.2018.
  */
 public interface IPeerAssessment {
-    void finalizeAssessment(String projectId);
+    void finalizeAssessment(String projectName);
 
-    Quiz getQuiz(String projectId, String quizId, String authorEmail);
-    ArrayList<Quiz> getQuiz(String projectId, String authorEmail);
+    Quiz getQuiz(String projectName, String quizId, String authorEmail);
+    ArrayList<Quiz> getQuiz(String projectName, String authorEmail);
     /**
      * will return a saved assessment from the DB
      *
      *
-     * @param projectId @return Assessement = studentIdentifier , performance
+     * @param projectName @return Assessement = userNameentifier , performance
      */
-    Map<StudentIdentifier, Double> getAssessmentForProject(String projectId);
+    Map<StudentIdentifier, Double> getAssessmentForProject(String projectName);
 
 <<<<<<< HEAD
     Double getAssessmentForStudent(StudentIdentifier student);
@@ -44,7 +44,7 @@ public interface IPeerAssessment {
      */
     Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance); // calculates marks for every performance and writes it to an array
 
-    Map<StudentIdentifier, Double> calculateAssessment(String projectId, String method);
+    Map<StudentIdentifier, Double> calculateAssessment(String projectName, String method);
 >>>>>>> origin/development_master
 
         /**
@@ -56,10 +56,10 @@ public interface IPeerAssessment {
 
     /**
      *
-     * @param studentIdentifier
+     * @param userNameentifier
      * @return
      */
-    ArrayList<Performance> getTotalAssessment(StudentIdentifier studentIdentifier);
+    ArrayList<Performance> getTotalAssessment(StudentIdentifier userNameentifier);
 
     /**
      * calculates the mean value of all assessments in a project.
@@ -72,18 +72,18 @@ public interface IPeerAssessment {
     /**
      * returns all quizzes in a project
      *
-     * @param projectId
-     * @return all quizzes in projectId
+     * @param projectName
+     * @return all quizzes in projectName
      */
-    ArrayList<Quiz> getQuiz(String projectId);
+    ArrayList<Quiz> getQuiz(String projectName);
 
     /**
      * writes the peerRatings into db
      *
      * @param peerRatings
-     * @param projectId
+     * @param projectName
      */
-    void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId);
+    void postPeerRating(ArrayList<PeerRating> peerRatings, String projectName);
 
     /**
      *
@@ -106,7 +106,7 @@ public interface IPeerAssessment {
 
     String whatToRate(StudentIdentifier student);
 
-    Map<StudentIdentifier, ConstraintsMessages> allAssessmentsDone(String projectId);
+    Map<StudentIdentifier, ConstraintsMessages> allAssessmentsDone(String projectName);
 
     void assignMissingAssessmentTasks(Project project);
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ISubmission.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ISubmission.java
index 6a6a849b..48fe9a1a 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ISubmission.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/ISubmission.java
@@ -67,10 +67,10 @@ public interface ISubmission {
     /**
      * Get all project representations of submission part for a given project id
      *
-     * @param projectId The given project id
+     * @param projectName The given project id
      * @return An ArrayList of submission project representations
      */
-    ArrayList<SubmissionProjectRepresentation> getSubmissionPartsByProjectId(String projectId);
+    ArrayList<SubmissionProjectRepresentation> getSubmissionPartsByProjectId(String projectName);
 
     /**
      * Checks if a submission part already exists in the database
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/controller/AnnotationController.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/controller/AnnotationController.java
index 3b4a54b5..25f32793 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/controller/AnnotationController.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/controller/AnnotationController.java
@@ -27,7 +27,7 @@ public class AnnotationController implements IAnnotation {
         connection.connect();
 
         // build and execute request
-        String request = "INSERT INTO annotations (`id`, `userToken`, `targetId`, `targetCategory`, `title`, `comment`, `startCharacter`, `endCharacter`) VALUES (?,?,?,?,?,?,?,?);";
+        String request = "INSERT INTO annotations (`id`, `userEmail`, `targetId`, `targetCategory`, `title`, `comment`, `startCharacter`, `endCharacter`) VALUES (?,?,?,?,?,?,?,?);";
         connection.issueInsertOrDeleteStatement(request, uuid, annotationPostRequest.getUserToken(), annotationPostRequest.getTargetId(), annotationPostRequest.getTargetCategory().toString().toUpperCase(), annotationPostRequest.getBody().getTitle(), annotationPostRequest.getBody().getComment(), annotationPostRequest.getBody().getStartCharacter(), annotationPostRequest.getBody().getEndCharacter());
 
         // close connection
@@ -170,7 +170,7 @@ public class AnnotationController implements IAnnotation {
 
         String id = rs.getString("id");
         long timestamp = rs.getTimestamp(2).getTime();
-        String userToken = rs.getString("userToken");
+        String userEmail = rs.getString("userEmail");
         String targetId = rs.getString("targetId");
         Category targetCategory = Category.valueOf(rs.getString("targetCategory"));
 
@@ -181,7 +181,7 @@ public class AnnotationController implements IAnnotation {
         int endCharacter = rs.getInt("endCharacter");
         AnnotationBody body = new AnnotationBody(title, comment, startCharacter, endCharacter);
 
-        return new Annotation(id, timestamp, userToken, targetId, targetCategory, body);
+        return new Annotation(id, timestamp, userEmail, targetId, targetCategory, body);
 
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/Annotation.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/Annotation.java
index 950959d3..551bc704 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/Annotation.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/Annotation.java
@@ -11,16 +11,16 @@ public class Annotation {
     // variables
     private String id;
     private long timestamp;
-    private String userToken;
+    private String userEmail;
     private String targetId;
     private Category targetCategory;
     private AnnotationBody body;
 
     // constructor
-    public Annotation(String id, long timestamp, String userToken, String targetId, Category targetCategory, AnnotationBody body) {
+    public Annotation(String id, long timestamp, String userEmail, String targetId, Category targetCategory, AnnotationBody body) {
         this.id = id;
         this.timestamp = timestamp;
-        this.userToken = userToken;
+        this.userEmail = userEmail;
         this.targetId = targetId;
         this.targetCategory = targetCategory;
         this.body = body;
@@ -44,11 +44,11 @@ public class Annotation {
     }
 
     public String getUserToken() {
-        return userToken;
+        return userEmail;
     }
 
-    public void setUserToken(String userToken) {
-        this.userToken = userToken;
+    public void setUserToken(String userEmail) {
+        this.userEmail = userEmail;
     }
 
     public String getTargetId() {
@@ -80,7 +80,7 @@ public class Annotation {
         return "Annotation{" +
                 "id='" + id + '\'' +
                 ", timestamp=" + timestamp +
-                ", userToken='" + userToken + '\'' +
+                ", userEmail='" + userEmail + '\'' +
                 ", targetId=" + targetId +
                 ", targetCategory=" + targetCategory +
                 ", body=" + body +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/AnnotationPostRequest.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/AnnotationPostRequest.java
index 98020b68..30b331c7 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/AnnotationPostRequest.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/annotation/model/AnnotationPostRequest.java
@@ -9,14 +9,14 @@ import unipotsdam.gf.modules.peer2peerfeedback.Category;
 public class AnnotationPostRequest {
 
     // variables
-    private String userToken;
+    private String userEmail;
     private String targetId;
     private Category targetCategory;
     private AnnotationBody body;
 
     // constructors
-    public AnnotationPostRequest(String userToken, String targetId, Category targetCategory, AnnotationBody body) {
-        this.userToken = userToken;
+    public AnnotationPostRequest(String userEmail, String targetId, Category targetCategory, AnnotationBody body) {
+        this.userEmail = userEmail;
         this.targetId = targetId;
         this.targetCategory = targetCategory;
         this.body = body;
@@ -27,11 +27,11 @@ public class AnnotationPostRequest {
 
     // methods
     public String getUserToken() {
-        return userToken;
+        return userEmail;
     }
 
-    public void setUserToken(String userToken) {
-        this.userToken = userToken;
+    public void setUserToken(String userEmail) {
+        this.userEmail = userEmail;
     }
 
     public String getTargetId() {
@@ -61,7 +61,7 @@ public class AnnotationPostRequest {
     @Override
     public String toString() {
         return "AnnotationPostRequest{" +
-                "userToken='" + userToken + '\'' +
+                "userEmail='" + userEmail + '\'' +
                 ", targetId=" + targetId +
                 ", targetCategory=" + targetCategory +
                 ", body=" + body +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Assessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Assessment.java
index cb11eded..565c49b0 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Assessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Assessment.java
@@ -99,8 +99,8 @@ public class Assessment {
         connect.issueInsertOrDeleteStatement(mysqlRequest,
                 assessment.isAdressat(),
                 assessment.getDeadline(),
-                assessment.getBewertender().getStudentId(),
-                assessment.getStudent().getStudentId(),
+                assessment.getBewertender().getUserEmail(),
+                assessment.getStudent().getUserEmail(),
                 assessment.getProjektId(),
                 assessment.getBewertung()
         );
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/GroupEvalDiagrammData.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/GroupEvalDiagrammData.java
index 166919a6..7f91d5e3 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/GroupEvalDiagrammData.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/GroupEvalDiagrammData.java
@@ -53,8 +53,8 @@ public class GroupEvalDiagrammData {
 
     @POST
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/diagramm1/{projectId}")
-    public GroupEvalDiagrammData getValuesFromDBByProjectID(@PathParam("projectId") String projectId) {
+    @Path("/diagramm1/{projectName}")
+    public GroupEvalDiagrammData getValuesFromDBByProjectID(@PathParam("projectName") String projectName) {
 
         //GruppenID muss noch irgendwie aus der Seite ausgelesen werden, wenn die dann mal dynamisch gefüllt wurde
         GroupEvalDiagrammData diagramm = new GroupEvalDiagrammData();
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java
index 03c25404..fc89e6d8 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/Performance.java
@@ -4,7 +4,7 @@ import java.util.List;
 import java.util.Map;
 
 public class Performance {
-    private StudentIdentifier studentIdentifier;
+    private StudentIdentifier userNameentifier;
     private List<Integer> quizAnswer;
     private Map<String, Double> workRating;
     private Map<String, Double> contributionRating;
@@ -12,7 +12,7 @@ public class Performance {
     public Performance(){}
 
     public Performance(StudentIdentifier student, List<Integer> quiz, Map contributionRating, Map workRating) {
-        this.studentIdentifier = student;
+        this.userNameentifier = student;
         this.quizAnswer = quiz;
         this.workRating=workRating;
         this.contributionRating = contributionRating;
@@ -20,11 +20,11 @@ public class Performance {
     }
 
     public StudentIdentifier getStudentIdentifier() {
-        return studentIdentifier;
+        return userNameentifier;
     }
 
-    public void setStudentIdentifier(StudentIdentifier studentIdentifier) {
-        this.studentIdentifier = studentIdentifier;
+    public void setStudentIdentifier(StudentIdentifier userNameentifier) {
+        this.userNameentifier = userNameentifier;
     }
 
     public Map getContributionRating() {
@@ -56,7 +56,7 @@ public class Performance {
     @Override
     public String toString() {
         return "Performance{" +
-                "studentIdentifier=" + studentIdentifier +
+                "userNameentifier=" + userNameentifier +
                 ", quizAnswer=" + quizAnswer +
                 ", contributionRating='" + contributionRating + '\'' +
                 ", workRating=" + workRating +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java
index b995fc29..22dd720d 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentAndQuiz.java
@@ -6,12 +6,12 @@ package unipotsdam.gf.modules.assessment.controller.model;
  */
 public class StudentAndQuiz {
     private Quiz quiz;
-    private StudentIdentifier studentIdentifier;
+    private StudentIdentifier userNameentifier;
 
     @Override
     public String toString() {
         return "StudentAndQuiz{" +
-                "studentIdentifier=" + studentIdentifier +
+                "userNameentifier=" + userNameentifier +
                 ", quiz=" + quiz +
                 '}';
     }
@@ -19,11 +19,11 @@ public class StudentAndQuiz {
     public StudentAndQuiz(){}
 
     public StudentIdentifier getStudentIdentifier() {
-        return studentIdentifier;
+        return userNameentifier;
     }
 
-    public void setStudentIdentifier(StudentIdentifier studentIdentifier) {
-        this.studentIdentifier = studentIdentifier;
+    public void setStudentIdentifier(StudentIdentifier userNameentifier) {
+        this.userNameentifier = userNameentifier;
     }
 
     public Quiz getQuiz() {
@@ -34,8 +34,8 @@ public class StudentAndQuiz {
         this.quiz = quiz;
     }
 
-    public StudentAndQuiz(StudentIdentifier studentIdentifier, Quiz quiz) {
-        this.studentIdentifier = studentIdentifier;
+    public StudentAndQuiz(StudentIdentifier userNameentifier, Quiz quiz) {
+        this.userNameentifier = userNameentifier;
         this.quiz = quiz;
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentIdentifier.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentIdentifier.java
index 22206d27..bdbc1f59 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentIdentifier.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/model/StudentIdentifier.java
@@ -1,38 +1,39 @@
 package unipotsdam.gf.modules.assessment.controller.model;
 
 public class StudentIdentifier {
-    private String projectId;
-    private String studentId;
-
-    public StudentIdentifier(String projectId, String studentId) {
-        this.projectId = projectId;
-        this.studentId = studentId;
+    public StudentIdentifier(String projectName, String userEmail) {
+        this.projectName = projectName;
+        this.userEmail = userEmail;
     }
 
+    private String projectName;
+    private String userEmail;
+
+
+
     public StudentIdentifier() {
     }
 
-    public String getProjectId() {
-        return projectId;
+    public String getProjectName() {
+        return projectName;
     }
 
-    public void setProjectId(String projectId) {
-        this.projectId = projectId;
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
     }
 
-    public String getStudentId() {
-        return studentId;
-    }
 
-    public void setStudentId(String studentId) {
-        this.studentId = studentId;
-    }
 
     @Override
     public String toString() {
-        return "StudentIdentifier{" +
-                "projectId='" + projectId + '\'' +
-                ", studentId='" + studentId + '\'' +
-                '}';
+        return super.toString();
+    }
+
+    public String getUserEmail() {
+        return userEmail;
+    }
+
+    public void setUserEmail(String userEmail) {
+        this.userEmail = userEmail;
     }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java
index 80ad6d18..57c212f6 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java
@@ -21,13 +21,13 @@ import java.util.Map;
 @Singleton
 class AssessmentDBCommunication {
 
-    cheatCheckerMethods getAssessmentMethod(String projectId) {
+    cheatCheckerMethods getAssessmentMethod(String projectName) {
         cheatCheckerMethods result = cheatCheckerMethods.none;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `assessmentmethod` WHERE `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `assessmentmethod` WHERE `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId);
+                connect.issueSelectStatement(mysqlRequest, projectName);
         if (vereinfachtesResultSet.next()) {
             String resultString = vereinfachtesResultSet.getString("cheatCheckerMethod");
             result = cheatCheckerMethods.valueOf(resultString);
@@ -39,9 +39,9 @@ class AssessmentDBCommunication {
         ArrayList<Map<String, Double>> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
+                connect.issueSelectStatement(mysqlRequest, student.getProjectName(), student.getUserEmail());
         boolean next = vereinfachtesResultSet.next();
         while (next) {
             Map<String, Double> workRating = new HashMap<>();
@@ -57,9 +57,9 @@ class AssessmentDBCommunication {
     Boolean getWorkRating(StudentIdentifier student, String fromStudent) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectId`=? AND `studentId`=? AND `fromPeer`=?";
+        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectName`=? AND `userName`=? AND `fromPeer`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId(), fromStudent);
+                connect.issueSelectStatement(mysqlRequest, student.getProjectName(), student.getUserEmail(), fromStudent);
         return vereinfachtesResultSet.next();
     }
 
@@ -67,7 +67,7 @@ class AssessmentDBCommunication {
         List<String> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `projectuser` WHERE `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `projectuser` WHERE `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, projectID);
         boolean next = vereinfachtesResultSet.next();
@@ -82,24 +82,24 @@ class AssessmentDBCommunication {
         Integer result;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT groupId FROM `groupuser` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT groupId FROM `groupuser` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
+                connect.issueSelectStatement(mysqlRequest, student.getProjectName(), student.getUserEmail());
         vereinfachtesResultSet.next();
         result = vereinfachtesResultSet.getInt("groupId");
         return result;
     }
 
-    ArrayList<String> getStudentsByGroupAndProject(Integer groupId, String projectId) {
+    ArrayList<String> getStudentsByGroupAndProject(Integer groupId, String projectName) {
         ArrayList<String> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `groupuser` WHERE `groupId`=? AND `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `groupuser` WHERE `groupId`=? AND `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, groupId, projectId);
+                connect.issueSelectStatement(mysqlRequest, groupId, projectName);
         Boolean next = vereinfachtesResultSet.next();
         while (next) {
-            result.add(vereinfachtesResultSet.getString("studentId"));
+            result.add(vereinfachtesResultSet.getString("userName"));
             next = vereinfachtesResultSet.next();
         }
         return result;
@@ -134,13 +134,13 @@ class AssessmentDBCommunication {
         return vereinfachtesResultSet.next();
     }
 
-    Integer getQuizCount(String projectId) {
+    Integer getQuizCount(String projectName) {
         Integer result = 0;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId);
+                connect.issueSelectStatement(mysqlRequest, projectName);
         Boolean next = vereinfachtesResultSet.next();
         while (next) {
             result++;
@@ -153,9 +153,9 @@ class AssessmentDBCommunication {
         ArrayList<Integer> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `answeredquiz` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT * FROM `answeredquiz` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
+                connect.issueSelectStatement(mysqlRequest, student.getProjectName(), student.getUserEmail());
         boolean next = vereinfachtesResultSet.next();
         while (next) {
             result.add(vereinfachtesResultSet.getInt("correct"));
@@ -169,10 +169,10 @@ class AssessmentDBCommunication {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         for (String question : questions.keySet()) {
-            String mysqlRequest = "INSERT INTO `answeredquiz`(`projectId`, `studentId`, `question`, `correct`) VALUES (?,?,?,?)";
+            String mysqlRequest = "INSERT INTO `answeredquiz`(`projectName`, `userName`, `question`, `correct`) VALUES (?,?,?,?)";
             connect.issueInsertOrDeleteStatement(mysqlRequest,
-                    student.getProjectId(),
-                    student.getStudentId(),
+                    student.getProjectName(),
+                    student.getUserEmail(),
                     question,
                     questions.get(question)
             );
@@ -183,14 +183,14 @@ class AssessmentDBCommunication {
     void writeWorkRatingToDB(StudentIdentifier student, String fromStudent, Map<String, Integer> workRating) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "INSERT INTO `workrating`(`projectId`, `studentId`, `fromPeer`, " +
+        String mysqlRequest = "INSERT INTO `workrating`(`projectName`, `userName`, `fromPeer`, " +
                 "`responsibility`, " +
                 "`partOfWork`, " +
                 "`cooperation`, " +
                 "`communication`, " +
                 "`autonomous`" +
                 ") VALUES (?,?,?,?,?,?,?,?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequest, student.getProjectId(), student.getStudentId(), fromStudent,
+        connect.issueInsertOrDeleteStatement(mysqlRequest, student.getProjectName(), student.getUserEmail(), fromStudent,
                 workRating.get("responsibility"),
                 workRating.get("partOfWork"),
                 workRating.get("cooperation"),
@@ -204,15 +204,15 @@ class AssessmentDBCommunication {
         Integer result;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest1 = "SELECT groupId FROM `groupuser` WHERE `projectId`=? AND `studentId`=? ";
+        String mysqlRequest1 = "SELECT groupId FROM `groupuser` WHERE `projectName`=? AND `userName`=? ";
         VereinfachtesResultSet vereinfachtesResultSet1 =
-                connect.issueSelectStatement(mysqlRequest1, student.getProjectId(), student.getStudentId());
+                connect.issueSelectStatement(mysqlRequest1, student.getProjectName(), student.getUserEmail());
         vereinfachtesResultSet1.next();
         Integer groupId = vereinfachtesResultSet1.getInt("groupId");
 
-        String mysqlRequest2 = "SELECT DISTINCT groupId FROM `groupuser` WHERE `projectId`=? ";
+        String mysqlRequest2 = "SELECT DISTINCT groupId FROM `groupuser` WHERE `projectName`=? ";
         VereinfachtesResultSet vereinfachtesResultSet2 =
-                connect.issueSelectStatement(mysqlRequest2, student.getProjectId());
+                connect.issueSelectStatement(mysqlRequest2, student.getProjectName());
         Boolean next = vereinfachtesResultSet2.next();
         result = vereinfachtesResultSet2.getInt("groupId");
         while (next) {
@@ -251,11 +251,11 @@ class AssessmentDBCommunication {
     void writeGradesToDB(Map<StudentIdentifier, Double> grade) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "INSERT INTO `grades`(`projectId`, `studentId`, `grade`) VALUES (?,?,?)";
+        String mysqlRequest = "INSERT INTO `grades`(`projectName`, `userName`, `grade`) VALUES (?,?,?)";
         for (StudentIdentifier student : grade.keySet()) {
             connect.issueInsertOrDeleteStatement(mysqlRequest,
-                    student.getProjectId(),
-                    student.getStudentId(),
+                    student.getProjectName(),
+                    student.getUserEmail(),
                     grade.get(student));
         }
         connect.close();
@@ -264,20 +264,20 @@ class AssessmentDBCommunication {
     Double getGradesFromDB(StudentIdentifier student) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `grades` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT * FROM `grades` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
+                connect.issueSelectStatement(mysqlRequest, student.getProjectName(), student.getUserEmail());
         vereinfachtesResultSet.next();
         return vereinfachtesResultSet.getDouble("grade");
     }
 
-    Map<String, Boolean> getAnswers(String projectId, String question) {
+    Map<String, Boolean> getAnswers(String projectName, String question) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         Map<String, Boolean> result = new HashMap<>();
-        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectId`=? AND `question`=?";
+        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectName`=? AND `question`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId, question);
+                connect.issueSelectStatement(mysqlRequest, projectName, question);
         boolean next = vereinfachtesResultSet.next();
         while (next) {
             result.put(vereinfachtesResultSet.getString("answer"), vereinfachtesResultSet.getBoolean("correct"));
@@ -287,16 +287,16 @@ class AssessmentDBCommunication {
         return result;
     }
 
-    Map<StudentIdentifier, ConstraintsMessages> missingAssessments(String projectId) {
+    Map<StudentIdentifier, ConstraintsMessages> missingAssessments(String projectName) {
         Map<StudentIdentifier, ConstraintsMessages> result = new HashMap<>();
-        ArrayList<String> studentsInProject = new ArrayList<>(getStudents(projectId));
-        ArrayList<StudentIdentifier> missingStudentsCauseOfWorkrating = missingWorkRatings(studentsInProject, projectId);
+        ArrayList<String> studentsInProject = new ArrayList<>(getStudents(projectName));
+        ArrayList<StudentIdentifier> missingStudentsCauseOfWorkrating = missingWorkRatings(studentsInProject, projectName);
         if (missingStudentsCauseOfWorkrating != null)
             for (StudentIdentifier missingStudent : missingStudentsCauseOfWorkrating) {
                 result.put(missingStudent, new ConstraintsMessages(Constraints.AssessmentOpen, missingStudent));
             }
         // ArrayList<StudentIdentifier> missingStudentsCauseOfQuiz <--- I can't check that atm
-        ArrayList<StudentIdentifier> missingStudentsCauseOfContribution = missingContribution(studentsInProject, projectId);
+        ArrayList<StudentIdentifier> missingStudentsCauseOfContribution = missingContribution(studentsInProject, projectName);
         if (missingStudentsCauseOfContribution != null)
             for (StudentIdentifier missingStudent : missingStudentsCauseOfContribution) {
                 result.put(missingStudent, new ConstraintsMessages(Constraints.AssessmentOpen, missingStudent));
@@ -304,40 +304,40 @@ class AssessmentDBCommunication {
         return result;
     }
 
-    private ArrayList<StudentIdentifier> missingWorkRatings(ArrayList<String> studentsInProject, String projectId) {
+    private ArrayList<StudentIdentifier> missingWorkRatings(ArrayList<String> studentsInProject, String projectName) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         ArrayList<StudentIdentifier> result = new ArrayList<>();
-        String sqlSelectWorkRating = "SELECT DISTINCT fromPeer FROM `workrating` WHERE `projectId`='" + projectId + "' AND `fromPeer`=''";
-        for (String studentId : studentsInProject) {
-            sqlSelectWorkRating = sqlSelectWorkRating + " OR `fromPeer`='" + studentId + "'";
+        String sqlSelectWorkRating = "SELECT DISTINCT fromPeer FROM `workrating` WHERE `projectName`='" + projectName + "' AND `fromPeer`=''";
+        for (String userName : studentsInProject) {
+            sqlSelectWorkRating = sqlSelectWorkRating + " OR `fromPeer`='" + userName + "'";
         }
         VereinfachtesResultSet selectWorkRatingResultSet =
                 connect.issueSelectStatement(sqlSelectWorkRating);
         Boolean next = selectWorkRatingResultSet.next();
-        resultSetToStudentIdentifierList(studentsInProject, projectId, result, selectWorkRatingResultSet, next);
+        resultSetToStudentIdentifierList(studentsInProject, projectName, result, selectWorkRatingResultSet, next);
         return result;
     }
 
-    private ArrayList<StudentIdentifier> missingContribution(ArrayList<String> studentsInProject, String projectId) {
+    private ArrayList<StudentIdentifier> missingContribution(ArrayList<String> studentsInProject, String projectName) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         ArrayList<StudentIdentifier> result = new ArrayList<>();
         String sqlContribution = "SELECT DISTINCT cr.fromPeer FROM groupuser gu " +
-                "JOIN contributionrating cr ON gu.groupId=cr.groupId WHERE gu.projectId = ?;";
+                "JOIN contributionrating cr ON gu.groupId=cr.groupId WHERE gu.projectName = ?;";
         VereinfachtesResultSet selectContributionResultSet =
-                connect.issueSelectStatement(sqlContribution, projectId);
+                connect.issueSelectStatement(sqlContribution, projectName);
         Boolean next = selectContributionResultSet.next();
-        resultSetToStudentIdentifierList(studentsInProject, projectId, result, selectContributionResultSet, next);
+        resultSetToStudentIdentifierList(studentsInProject, projectName, result, selectContributionResultSet, next);
         return result;
     }
 
-    private void resultSetToStudentIdentifierList(ArrayList<String> studentsInProject, String projectId, ArrayList<StudentIdentifier> result, VereinfachtesResultSet selectWorkRatingResultSet, Boolean next) {
+    private void resultSetToStudentIdentifierList(ArrayList<String> studentsInProject, String projectName, ArrayList<StudentIdentifier> result, VereinfachtesResultSet selectWorkRatingResultSet, Boolean next) {
         while (next) {
             String fromPeer = selectWorkRatingResultSet.getString("fromPeer");
             if (!studentsInProject.contains(fromPeer)) {
-                StudentIdentifier studentIdentifier = new StudentIdentifier(projectId, fromPeer);
-                result.add(studentIdentifier);
+                StudentIdentifier userNameentifier = new StudentIdentifier(projectName, fromPeer);
+                result.add(userNameentifier);
             }
             next = selectWorkRatingResultSet.next();
         }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java.orig
index 011622de..f0e3ec9a 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/AssessmentDBCommunication.java.orig
@@ -27,13 +27,13 @@ import java.util.Map;
 @Singleton
 class AssessmentDBCommunication {
 
-    cheatCheckerMethods getAssessmentMethod(String projectId){
+    cheatCheckerMethods getAssessmentMethod(String projectName){
         cheatCheckerMethods result = cheatCheckerMethods.none;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `assessmentmethod` WHERE `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `assessmentmethod` WHERE `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId);
+                connect.issueSelectStatement(mysqlRequest, projectName);
         if (vereinfachtesResultSet.next()){
             String resultString = vereinfachtesResultSet.getString("cheatCheckerMethod");
             result = cheatCheckerMethods.valueOf(resultString);
@@ -45,7 +45,7 @@ class AssessmentDBCommunication {
         ArrayList<Map<String, Double>> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
         boolean next = vereinfachtesResultSet.next();
@@ -63,7 +63,7 @@ class AssessmentDBCommunication {
     Boolean getWorkRating(StudentIdentifier student, String fromStudent) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectId`=? AND `studentId`=? AND `fromPeer`=?";
+        String mysqlRequest = "SELECT * FROM `workrating` WHERE `projectName`=? AND `userName`=? AND `fromPeer`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId(), fromStudent);
         return vereinfachtesResultSet.next();
@@ -73,7 +73,7 @@ class AssessmentDBCommunication {
         List<String> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `projectuser` WHERE `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `projectuser` WHERE `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, projectID);
         boolean next = vereinfachtesResultSet.next();
@@ -88,7 +88,7 @@ class AssessmentDBCommunication {
         Integer result;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT groupId FROM `groupuser` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT groupId FROM `groupuser` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
         vereinfachtesResultSet.next();
@@ -96,16 +96,16 @@ class AssessmentDBCommunication {
         return result;
     }
 
-    ArrayList<String> getStudentsByGroupAndProject(Integer groupId, String projectId) {
+    ArrayList<String> getStudentsByGroupAndProject(Integer groupId, String projectName) {
         ArrayList<String> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `groupuser` WHERE `groupId`=? AND `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `groupuser` WHERE `groupId`=? AND `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, groupId, projectId);
+                connect.issueSelectStatement(mysqlRequest, groupId, projectName);
         Boolean next = vereinfachtesResultSet.next();
         while (next) {
-            result.add(vereinfachtesResultSet.getString("studentId"));
+            result.add(vereinfachtesResultSet.getString("userName"));
             next = vereinfachtesResultSet.next();
         }
         return result;
@@ -140,13 +140,13 @@ class AssessmentDBCommunication {
         return vereinfachtesResultSet.next();
     }
 
-    Integer getQuizCount(String projectId){
+    Integer getQuizCount(String projectName){
         Integer result = 0;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectId`=?";
+        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId);
+                connect.issueSelectStatement(mysqlRequest, projectName);
         Boolean next = vereinfachtesResultSet.next();
         while (next){
             result++;
@@ -159,7 +159,7 @@ class AssessmentDBCommunication {
         ArrayList<Integer> result = new ArrayList<>();
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `answeredquiz` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT * FROM `answeredquiz` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
         boolean next = vereinfachtesResultSet.next();
@@ -175,7 +175,7 @@ class AssessmentDBCommunication {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         for (String question : questions.keySet()) {
-            String mysqlRequest = "INSERT INTO `answeredquiz`(`projectId`, `studentId`, `question`, `correct`) VALUES (?,?,?,?)";
+            String mysqlRequest = "INSERT INTO `answeredquiz`(`projectName`, `userName`, `question`, `correct`) VALUES (?,?,?,?)";
             connect.issueInsertOrDeleteStatement(mysqlRequest,
                     student.getProjectId(),
                     student.getStudentId(),
@@ -189,7 +189,7 @@ class AssessmentDBCommunication {
     void writeWorkRatingToDB(StudentIdentifier student, String fromStudent, Map<String, Integer> workRating) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "INSERT INTO `workrating`(`projectId`, `studentId`, `fromPeer`, " +
+        String mysqlRequest = "INSERT INTO `workrating`(`projectName`, `userName`, `fromPeer`, " +
                 "`responsibility`, " +
                 "`partOfWork`, " +
                 "`cooperation`, " +
@@ -210,13 +210,13 @@ class AssessmentDBCommunication {
         Integer result;
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest1 = "SELECT groupId FROM `groupuser` WHERE `projectId`=? AND `studentId`=? ";
+        String mysqlRequest1 = "SELECT groupId FROM `groupuser` WHERE `projectName`=? AND `userName`=? ";
         VereinfachtesResultSet vereinfachtesResultSet1 =
                 connect.issueSelectStatement(mysqlRequest1, student.getProjectId(), student.getStudentId());
         vereinfachtesResultSet1.next();
         Integer groupId = vereinfachtesResultSet1.getInt("groupId");
 
-        String mysqlRequest2 = "SELECT DISTINCT groupId FROM `groupuser` WHERE `projectId`=? ";
+        String mysqlRequest2 = "SELECT DISTINCT groupId FROM `groupuser` WHERE `projectName`=? ";
         VereinfachtesResultSet vereinfachtesResultSet2 =
                 connect.issueSelectStatement(mysqlRequest2, student.getProjectId());
         Boolean next = vereinfachtesResultSet2.next();
@@ -257,7 +257,7 @@ class AssessmentDBCommunication {
     void writeGradesToDB(Map<StudentIdentifier, Double> grade) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "INSERT INTO `grades`(`projectId`, `studentId`, `grade`) VALUES (?,?,?)";
+        String mysqlRequest = "INSERT INTO `grades`(`projectName`, `userName`, `grade`) VALUES (?,?,?)";
         for (StudentIdentifier student: grade.keySet()) {
             connect.issueInsertOrDeleteStatement(mysqlRequest,
                     student.getProjectId(),
@@ -270,20 +270,20 @@ class AssessmentDBCommunication {
     Double getGradesFromDB(StudentIdentifier student) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `grades` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest = "SELECT * FROM `grades` WHERE `projectName`=? AND `userName`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
                 connect.issueSelectStatement(mysqlRequest, student.getProjectId(), student.getStudentId());
         vereinfachtesResultSet.next();
         return vereinfachtesResultSet.getDouble("grade");
     }
 
-    Map<String, Boolean> getAnswers(String projectId, String question) {
+    Map<String, Boolean> getAnswers(String projectName, String question) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         Map<String, Boolean> result = new HashMap<>();
-        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectId`=? AND `question`=?";
+        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectName`=? AND `question`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId, question);
+                connect.issueSelectStatement(mysqlRequest, projectName, question);
         boolean next = vereinfachtesResultSet.next();
         while (next) {
             result.put(vereinfachtesResultSet.getString("answer"), vereinfachtesResultSet.getBoolean("correct"));
@@ -293,16 +293,16 @@ class AssessmentDBCommunication {
         return result;
     }
 
-    Map<StudentIdentifier, ConstraintsMessages> missingAssessments(String projectId) {
+    Map<StudentIdentifier, ConstraintsMessages> missingAssessments(String projectName) {
         Map<StudentIdentifier, ConstraintsMessages> result = new HashMap<>();
-        ArrayList<String> studentsInProject = new ArrayList<>(getStudents(projectId));
-        ArrayList<StudentIdentifier> missingStudentsCauseOfWorkrating = missingWorkRatings(studentsInProject, projectId);
+        ArrayList<String> studentsInProject = new ArrayList<>(getStudents(projectName));
+        ArrayList<StudentIdentifier> missingStudentsCauseOfWorkrating = missingWorkRatings(studentsInProject, projectName);
         if (missingStudentsCauseOfWorkrating != null)
             for (StudentIdentifier missingStudent : missingStudentsCauseOfWorkrating) {
                 result.put(missingStudent, new ConstraintsMessages(Constraints.AssessmentOpen, missingStudent));
             }
         // ArrayList<StudentIdentifier> missingStudentsCauseOfQuiz <--- I can't check that atm
-        ArrayList<StudentIdentifier> missingStudentsCauseOfContribution = missingContribution(studentsInProject, projectId);
+        ArrayList<StudentIdentifier> missingStudentsCauseOfContribution = missingContribution(studentsInProject, projectName);
         if (missingStudentsCauseOfContribution != null)
             for (StudentIdentifier missingStudent : missingStudentsCauseOfContribution) {
                 result.put(missingStudent, new ConstraintsMessages(Constraints.AssessmentOpen, missingStudent));
@@ -310,40 +310,40 @@ class AssessmentDBCommunication {
         return result;
     }
 
-    private ArrayList<StudentIdentifier> missingWorkRatings(ArrayList<String> studentsInProject, String projectId) {
+    private ArrayList<StudentIdentifier> missingWorkRatings(ArrayList<String> studentsInProject, String projectName) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         ArrayList<StudentIdentifier> result = new ArrayList<>();
-        String sqlSelectWorkRating = "SELECT DISTINCT fromPeer FROM `workrating` WHERE `projectId`='"+projectId+"' AND `fromPeer`=''";
-        for (String studentId : studentsInProject) {
-            sqlSelectWorkRating = sqlSelectWorkRating + " OR `fromPeer`='" + studentId+"'";
+        String sqlSelectWorkRating = "SELECT DISTINCT fromPeer FROM `workrating` WHERE `projectName`='"+projectName+"' AND `fromPeer`=''";
+        for (String userName : studentsInProject) {
+            sqlSelectWorkRating = sqlSelectWorkRating + " OR `fromPeer`='" + userName+"'";
         }
         VereinfachtesResultSet selectWorkRatingResultSet =
                 connect.issueSelectStatement(sqlSelectWorkRating);
         Boolean next = selectWorkRatingResultSet.next();
-        resultSetToStudentIdentifierList(studentsInProject, projectId, result, selectWorkRatingResultSet, next);
+        resultSetToStudentIdentifierList(studentsInProject, projectName, result, selectWorkRatingResultSet, next);
         return result;
     }
 
-    private ArrayList<StudentIdentifier> missingContribution(ArrayList<String> studentsInProject, String projectId) {
+    private ArrayList<StudentIdentifier> missingContribution(ArrayList<String> studentsInProject, String projectName) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         ArrayList<StudentIdentifier> result = new ArrayList<>();
         String sqlContribution = "SELECT DISTINCT cr.fromPeer FROM groupuser gu " +
-                "JOIN contributionrating cr ON gu.groupId=cr.groupId WHERE gu.projectId = ?;";
+                "JOIN contributionrating cr ON gu.groupId=cr.groupId WHERE gu.projectName = ?;";
         VereinfachtesResultSet selectContributionResultSet =
-                connect.issueSelectStatement(sqlContribution, projectId);
+                connect.issueSelectStatement(sqlContribution, projectName);
         Boolean next = selectContributionResultSet.next();
-        resultSetToStudentIdentifierList(studentsInProject, projectId, result, selectContributionResultSet, next);
+        resultSetToStudentIdentifierList(studentsInProject, projectName, result, selectContributionResultSet, next);
         return result;
     }
 
-    private void resultSetToStudentIdentifierList(ArrayList<String> studentsInProject, String projectId, ArrayList<StudentIdentifier> result, VereinfachtesResultSet selectWorkRatingResultSet, Boolean next) {
+    private void resultSetToStudentIdentifierList(ArrayList<String> studentsInProject, String projectName, ArrayList<StudentIdentifier> result, VereinfachtesResultSet selectWorkRatingResultSet, Boolean next) {
         while (next) {
             String fromPeer = selectWorkRatingResultSet.getString("fromPeer");
             if (!studentsInProject.contains(fromPeer)) {
-                StudentIdentifier studentIdentifier = new StudentIdentifier(projectId, fromPeer);
-                result.add(studentIdentifier);
+                StudentIdentifier userNameentifier = new StudentIdentifier(projectName, fromPeer);
+                result.add(userNameentifier);
             }
             next = selectWorkRatingResultSet.next();
         }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
index 56b0e37e..3caf46be 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
@@ -4,7 +4,6 @@ import unipotsdam.gf.core.management.Management;
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.states.model.ConstraintsMessages;
 import unipotsdam.gf.interfaces.IPeerAssessment;
-import unipotsdam.gf.modules.assessment.controller.model.Assessment;
 import unipotsdam.gf.modules.assessment.controller.model.PeerRating;
 import unipotsdam.gf.modules.assessment.controller.model.Performance;
 import unipotsdam.gf.modules.assessment.controller.model.Quiz;
@@ -25,29 +24,29 @@ public class PeerAssessment implements IPeerAssessment {
     private Management management;
 
     @Override
-    public void finalizeAssessment(String projectId){
-        cheatCheckerMethods method = new AssessmentDBCommunication().getAssessmentMethod(projectId);
-        Map<StudentIdentifier, Double> grading = calculateAssessment(projectId, method);
+    public void finalizeAssessment(String projectName){
+        cheatCheckerMethods method = new AssessmentDBCommunication().getAssessmentMethod(projectName);
+        Map<StudentIdentifier, Double> grading = calculateAssessment(projectName, method);
         new AssessmentDBCommunication().writeGradesToDB(grading);
     }
 
     @Override//returns one quiz
-    public Quiz getQuiz(String projectId, String quizId, String author) {
-        return new QuizDBCommunication().getQuizByProjectQuizId(projectId, quizId, author);
+    public Quiz getQuiz(String projectName, String quizId, String author) {
+        return new QuizDBCommunication().getQuizByProjectQuizId(projectName, quizId, author);
     }
 
     @Override //returns all quizzes in the course
-    public ArrayList<Quiz> getQuiz(String projectId) {
-        return new QuizDBCommunication().getQuizByProjectId(projectId);
+    public ArrayList<Quiz> getQuiz(String projectName) {
+        return new QuizDBCommunication().getQuizByProjectId(projectName);
     }
 
     @Override //returns all quizzes in the course
-    public ArrayList<Quiz> getQuiz(String projectId, String author) {
-        return new QuizDBCommunication().getQuizByProjectIdAuthor(projectId, author);
+    public ArrayList<Quiz> getQuiz(String projectName, String author) {
+        return new QuizDBCommunication().getQuizByProjectIdAuthor(projectName, author);
     }
 
     @Override
-    public Map<StudentIdentifier, Double> getAssessmentForProject(String projectId) {
+    public Map<StudentIdentifier, Double> getAssessmentForProject(String projectName) {
         return null;
     }
 
@@ -58,7 +57,7 @@ public class PeerAssessment implements IPeerAssessment {
 
     @Override
     public void createQuiz(StudentAndQuiz studentAndQuiz) {
-        new QuizDBCommunication().createQuiz(studentAndQuiz.getQuiz(), studentAndQuiz.getStudentIdentifier().getStudentId(), studentAndQuiz.getStudentIdentifier().getProjectId());
+        new QuizDBCommunication().createQuiz(studentAndQuiz.getQuiz(), studentAndQuiz.getStudentIdentifier().getUserEmail(), studentAndQuiz.getStudentIdentifier().getProjectName());
     }
 
     @Override
@@ -69,11 +68,11 @@ public class PeerAssessment implements IPeerAssessment {
     @Override
     public String whatToRate(StudentIdentifier student) {
         Integer groupId = new AssessmentDBCommunication().getGroupByStudent(student);
-        ArrayList<String> groupMembers = new AssessmentDBCommunication().getStudentsByGroupAndProject(groupId, student.getProjectId());
+        ArrayList<String> groupMembers = new AssessmentDBCommunication().getStudentsByGroupAndProject(groupId, student.getProjectName());
         for (String peer : groupMembers) {
-            if (!peer.equals(student.getStudentId())) {
-                StudentIdentifier groupMember = new StudentIdentifier(student.getProjectId(), peer);
-                if (!new AssessmentDBCommunication().getWorkRating(groupMember, student.getStudentId())) {
+            if (!peer.equals(student.getUserEmail())) {
+                StudentIdentifier groupMember = new StudentIdentifier(student.getProjectName(), peer);
+                if (!new AssessmentDBCommunication().getWorkRating(groupMember, student.getUserEmail())) {
                     return "workRating";
                 }
             }
@@ -83,16 +82,16 @@ public class PeerAssessment implements IPeerAssessment {
             return "quiz";
         }
         Integer groupToRate = new AssessmentDBCommunication().getWhichGroupToRate(student);
-        if (!new AssessmentDBCommunication().getContributionRating(groupToRate, student.getStudentId())) {
+        if (!new AssessmentDBCommunication().getContributionRating(groupToRate, student.getUserEmail())) {
             return "contributionRating";
         }
         return "done";
     }
 
     @Override
-    public Map<StudentIdentifier, ConstraintsMessages> allAssessmentsDone(String projectId) {
+    public Map<StudentIdentifier, ConstraintsMessages> allAssessmentsDone(String projectName) {
         Map<StudentIdentifier, ConstraintsMessages> result;
-        result = new AssessmentDBCommunication().missingAssessments(projectId);
+        result = new AssessmentDBCommunication().missingAssessments(projectName);
         return result;
     }
 
@@ -119,26 +118,26 @@ public class PeerAssessment implements IPeerAssessment {
         return result;
     }
 
-    private Map<StudentIdentifier, Double> calculateAssessment(String projectId, cheatCheckerMethods method) {
+    private Map<StudentIdentifier, Double> calculateAssessment(String projectName, cheatCheckerMethods method) {
         ArrayList<Performance> totalPerformance = new ArrayList<>();
         //get all students in projectID from DB
-        List<String> students = new AssessmentDBCommunication().getStudents(projectId);
+        List<String> students = new AssessmentDBCommunication().getStudents(projectName);
         //for each student
         for (String student : students) {
             Integer groupId;
             Performance performance = new Performance();
-            StudentIdentifier studentIdentifier = new StudentIdentifier(projectId, student);
-            groupId = new AssessmentDBCommunication().getGroupByStudent(studentIdentifier);
+            StudentIdentifier userNameentifier = new StudentIdentifier(projectName, student);
+            groupId = new AssessmentDBCommunication().getGroupByStudent(userNameentifier);
             //todo: answered quizzes vervöllstandigen
-            Integer numberOfQuizzes = new AssessmentDBCommunication().getQuizCount(projectId);
-            List<Integer> answeredQuizzes = new AssessmentDBCommunication().getAnsweredQuizzes(studentIdentifier);
+            Integer numberOfQuizzes = new AssessmentDBCommunication().getQuizCount(projectName);
+            List<Integer> answeredQuizzes = new AssessmentDBCommunication().getAnsweredQuizzes(userNameentifier);
             for (Integer i=answeredQuizzes.size(); i<numberOfQuizzes;i++){
                 answeredQuizzes.add(0);
             }
-            ArrayList<Map<String, Double>> workRating = new AssessmentDBCommunication().getWorkRating(studentIdentifier);
+            ArrayList<Map<String, Double>> workRating = new AssessmentDBCommunication().getWorkRating(userNameentifier);
             ArrayList<Map<String, Double>> contributionRating =
                     new AssessmentDBCommunication().getContributionRating(groupId);
-            performance.setStudentIdentifier(studentIdentifier);
+            performance.setStudentIdentifier(userNameentifier);
             performance.setQuizAnswer(answeredQuizzes);
             performance.setWorkRating(cheatChecker(workRating, method));
             performance.setContributionRating(cheatChecker(contributionRating, method));
@@ -257,7 +256,7 @@ public class PeerAssessment implements IPeerAssessment {
     }
 
     @Override
-    public ArrayList<Performance> getTotalAssessment(StudentIdentifier studentIdentifier) {
+    public ArrayList<Performance> getTotalAssessment(StudentIdentifier userNameentifier) {
         return null;
     }
 
@@ -268,9 +267,9 @@ public class PeerAssessment implements IPeerAssessment {
 
 
     @Override
-    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectId) {
+    public void postPeerRating(ArrayList<PeerRating> peerRatings, String projectName) {
         for (PeerRating peer : peerRatings) {
-            StudentIdentifier student = new StudentIdentifier(projectId, peer.getToPeer());
+            StudentIdentifier student = new StudentIdentifier(projectName, peer.getToPeer());
             new AssessmentDBCommunication().writeWorkRatingToDB(student, peer.getFromPeer(), peer.getWorkRating());
         }
     }
@@ -290,7 +289,7 @@ public class PeerAssessment implements IPeerAssessment {
     @Override
     public void answerQuiz(Map<String, List<String>> questions, StudentIdentifier student) {
         for (String question : questions.keySet()) {
-            Map<String, Boolean> whatAreAnswers = new AssessmentDBCommunication().getAnswers(student.getProjectId(), question);
+            Map<String, Boolean> whatAreAnswers = new AssessmentDBCommunication().getAnswers(student.getProjectName(), question);
             Map<String, Boolean> wasQuestionAnsweredCorrectly = new HashMap<>();
             Boolean correct = true;
             for (String studentAnswer : questions.get(question)) {
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java
index b91efaf2..46ed44ad 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java
@@ -13,12 +13,12 @@ import java.util.ArrayList;
 @Resource
 @Singleton
 public class QuizDBCommunication {
-    Quiz getQuizByProjectQuizId(String projectId, String quizId, String author) {
+    Quiz getQuizByProjectQuizId(String projectName, String quizId, String author) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectId`=? AND `question`=? AND `author`=?";
+        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectName`=? AND `question`=? AND `author`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId, quizId, author);
+                connect.issueSelectStatement(mysqlRequest, projectName, quizId, author);
         boolean next = vereinfachtesResultSet.next();
         String question = "";
         ArrayList<String> correctAnswers = new ArrayList<>();
@@ -43,15 +43,15 @@ public class QuizDBCommunication {
         return quiz;
     }
 
-    ArrayList<Quiz> getQuizByProjectId(String projectId) {
-        String mysqlRequest = "SELECT * FROM quiz where projectId= ?";
-        return RequestToQuizList(mysqlRequest, projectId);
+    ArrayList<Quiz> getQuizByProjectId(String projectName) {
+        String mysqlRequest = "SELECT * FROM quiz where projectName= ?";
+        return RequestToQuizList(mysqlRequest, projectName);
     }
 
 
-    ArrayList<Quiz> getQuizByProjectIdAuthor(String projectId, String author){
-        String mysqlRequest = "SELECT * FROM quiz where projectId= ? AND author=?";
-        return RequestToQuizList(mysqlRequest, projectId, author);
+    ArrayList<Quiz> getQuizByProjectIdAuthor(String projectName, String author){
+        String mysqlRequest = "SELECT * FROM quiz where projectName= ? AND author=?";
+        return RequestToQuizList(mysqlRequest, projectName, author);
     }
 
     private ArrayList<Quiz> RequestToQuizList(String sqlRequest, Object ... params) {
@@ -109,7 +109,7 @@ public class QuizDBCommunication {
         connect.close();
     }
 
-    public void createQuiz(Quiz quiz, String author, String projectId) {
+    public void createQuiz(Quiz quiz, String author, String projectName) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         String mcType;
@@ -120,16 +120,16 @@ public class QuizDBCommunication {
             answer = correctAnswer;
             mcType = quiz.getType();
             question = quiz.getQuestion();
-            String mysqlRequest = "INSERT INTO `quiz`(`author`, `projectId`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
-            connect.issueInsertOrDeleteStatement(mysqlRequest, author, projectId, question, mcType, answer, true);
+            String mysqlRequest = "INSERT INTO `quiz`(`author`, `projectName`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
+            connect.issueInsertOrDeleteStatement(mysqlRequest, author, projectName, question, mcType, answer, true);
         }
         ArrayList<String> incorrectAnswers = quiz.getIncorrectAnswers();
         for (String incorrectAnswer : incorrectAnswers) {
             answer = incorrectAnswer;
             mcType = quiz.getType();
             question = quiz.getQuestion();
-            String mysqlRequest = "INSERT INTO `quiz`(`author`, `projectId`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
-            connect.issueInsertOrDeleteStatement(mysqlRequest, author, projectId, question, mcType, answer, false);
+            String mysqlRequest = "INSERT INTO `quiz`(`author`, `projectName`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
+            connect.issueInsertOrDeleteStatement(mysqlRequest, author, projectName, question, mcType, answer, false);
         }
         connect.close();
     }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java.orig
index 6fd9db52..c41fde8a 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/QuizDBCommunication.java.orig
@@ -13,12 +13,12 @@ import java.util.ArrayList;
 @Resource
 @Singleton
 public class QuizDBCommunication {
-    Quiz getQuizByProjectQuizId(String projectId, String quizId, String authorEmail) {
+    Quiz getQuizByProjectQuizId(String projectName, String quizId, String authorEmail) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
-        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectId`=? AND `question`=? AND `authorEmail`=?";
+        String mysqlRequest = "SELECT * FROM `quiz` WHERE `projectName`=? AND `question`=? AND `authorEmail`=?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId, quizId, authorEmail);
+                connect.issueSelectStatement(mysqlRequest, projectName, quizId, authorEmail);
         boolean next = vereinfachtesResultSet.next();
         String question = "";
         ArrayList<String> correctAnswers = new ArrayList<>();
@@ -43,15 +43,15 @@ public class QuizDBCommunication {
         return quiz;
     }
 
-    ArrayList<Quiz> getQuizByProjectId(String projectId) {
-        String mysqlRequest = "SELECT * FROM quiz where projectId= ?";
-        return RequestToQuizList(mysqlRequest, projectId);
+    ArrayList<Quiz> getQuizByProjectId(String projectName) {
+        String mysqlRequest = "SELECT * FROM quiz where projectName= ?";
+        return RequestToQuizList(mysqlRequest, projectName);
     }
 
 
-    ArrayList<Quiz> getQuizByProjectIdAuthor(String projectId, String authorEmail){
-        String mysqlRequest = "SELECT * FROM quiz where projectId= ? AND authorEmail=?";
-        return RequestToQuizList(mysqlRequest, projectId, authorEmail);
+    ArrayList<Quiz> getQuizByProjectIdAuthor(String projectName, String authorEmail){
+        String mysqlRequest = "SELECT * FROM quiz where projectName= ? AND authorEmail=?";
+        return RequestToQuizList(mysqlRequest, projectName, authorEmail);
     }
 
     private ArrayList<Quiz> RequestToQuizList(String sqlRequest, Object ... params) {
@@ -112,7 +112,7 @@ public class QuizDBCommunication {
         connect.close();
     }
 
-    public void createQuiz(Quiz quiz, String authorEmail, String projectId) {
+    public void createQuiz(Quiz quiz, String authorEmail, String projectName) {
         MysqlConnect connect = new MysqlConnect();
         connect.connect();
         String mcType;
@@ -123,16 +123,16 @@ public class QuizDBCommunication {
             answer = correctAnswer;
             mcType = quiz.getType();
             question = quiz.getQuestion();
-            String mysqlRequest = "INSERT INTO `quiz`(`authorEmail`, `projectId`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
-            connect.issueInsertOrDeleteStatement(mysqlRequest, authorEmail, projectId, question, mcType, answer, true);
+            String mysqlRequest = "INSERT INTO `quiz`(`authorEmail`, `projectName`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
+            connect.issueInsertOrDeleteStatement(mysqlRequest, authorEmail, projectName, question, mcType, answer, true);
         }
         ArrayList<String> incorrectAnswers = quiz.getIncorrectAnswers();
         for (String incorrectAnswer : incorrectAnswers) {
             answer = incorrectAnswer;
             mcType = quiz.getType();
             question = quiz.getQuestion();
-            String mysqlRequest = "INSERT INTO `quiz`(`authorEmail`, `projectId`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
-            connect.issueInsertOrDeleteStatement(mysqlRequest, authorEmail, projectId, question, mcType, answer, false);
+            String mysqlRequest = "INSERT INTO `quiz`(`authorEmail`, `projectName`, `question`, `mcType`, `answer`, `correct`) VALUES (?,?,?,?,?,?)";
+            connect.issueInsertOrDeleteStatement(mysqlRequest, authorEmail, projectName, question, mcType, answer, false);
         }
         connect.close();
     }
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 511cb57f..030bb33b 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
@@ -30,11 +30,11 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/quiz/{quizId}/author/{author}")
-    public Quiz getQuiz(@PathParam("projectId") String projectId, @PathParam("quizId") String quizId, @PathParam("author") String author) {
+    @Path("/project/{projectName}/quiz/{quizId}/author/{author}")
+    public Quiz getQuiz(@PathParam("projectName") String projectName, @PathParam("quizId") String quizId, @PathParam("author") String author) {
         try {
             String question = java.net.URLDecoder.decode(quizId, "UTF-8");
-            return peer.getQuiz(projectId, question, author);
+            return peer.getQuiz(projectName, question, author);
         } catch (UnsupportedEncodingException e) {
             throw new AssertionError("UTF-8 is unknown");
         }
@@ -42,32 +42,32 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/quiz/author/{author}")
-    public ArrayList<Quiz> getQuiz(@PathParam("projectId") String projectId, @PathParam("author") String author) {
-        return peer.getQuiz(projectId, author);
+    @Path("/project/{projectName}/quiz/author/{author}")
+    public ArrayList<Quiz> getQuiz(@PathParam("projectName") String projectName, @PathParam("author") String author) {
+        return peer.getQuiz(projectName, author);
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/quiz")
-    public ArrayList<Quiz> getQuiz(@PathParam("projectId") String projectId) {
-        return peer.getQuiz(projectId);
+    @Path("/project/{projectName}/quiz")
+    public ArrayList<Quiz> getQuiz(@PathParam("projectName") String projectName) {
+        return peer.getQuiz(projectName);
     }
     //////////////////////////////////////////funktioniert///////////////////////////////////////
 
 
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/peerRating/project/{projectId}")
-    public void postPeerRating(ArrayList<PeerRating> peerRatings, @PathParam("projectId") String projectId) throws IOException {
-        peer.postPeerRating(peerRatings, projectId);
+    @Path("/peerRating/project/{projectName}")
+    public void postPeerRating(ArrayList<PeerRating> peerRatings, @PathParam("projectName") String projectName) throws IOException {
+        peer.postPeerRating(peerRatings, projectName);
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/groupRate/project/{projectId}/student/{studentId}")
-    public Integer whichGroupToRate(@PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/groupRate/project/{projectName}/student/{userName}")
+    public Integer whichGroupToRate(@PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return peer.whichGroupToRate(student);
     }
 
@@ -82,9 +82,9 @@ public class QuizView {
 
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/quizAnswer/projectId/{projectId}/studentId/{studentId}/")
-    public void answerQuiz(Map<String, List<String>> questions, @PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/quizAnswer/projectName/{projectName}/userName/{userName}/")
+    public void answerQuiz(Map<String, List<String>> questions, @PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         peer.answerQuiz(questions, student);
     }
 
@@ -102,9 +102,9 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.TEXT_HTML)
-    @Path("/whatToRate/project/{projectId}/student/{studentId}")
-    public String whatToRate(@PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/whatToRate/project/{projectName}/student/{userName}")
+    public String whatToRate(@PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return peer.whatToRate(student);
     }
 
@@ -118,16 +118,16 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/get/project/{projectId}")
-    public Map<StudentIdentifier, Double> getAssessmentForProject(@PathParam("projectId") String projectId) {
-        return peer.getAssessmentForProject(projectId);
+    @Path("/get/project/{projectName}")
+    public Map<StudentIdentifier, Double> getAssessmentForProject(@PathParam("projectName") String projectName) {
+        return peer.getAssessmentForProject(projectName);
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/get/project/{projectId}/student/{studentEmail}")
-    public Double getAssessmentForStudent(@PathParam("projectId") String projectId, @PathParam("studentEmail") String studentEmail) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentEmail);
+    @Path("/get/project/{projectName}/student/{studentEmail}")
+    public Double getAssessmentForStudent(@PathParam("projectName") String projectName, @PathParam("studentEmail") String studentEmail) {
+        StudentIdentifier student = new StudentIdentifier(projectName, studentEmail);
         return peer.getAssessmentForStudent(student);
     }
 
@@ -138,8 +138,8 @@ public class QuizView {
     @Path("/quiz")
     public String createQuiz(StudentAndQuiz studentAndQuiz) {
 
-        Project project = management.getProjectById(studentAndQuiz.getStudentIdentifier().getProjectId());
-        User user = management.getUserByName(studentAndQuiz.getStudentIdentifier().getStudentId());
+        Project project = management.getProjectById(studentAndQuiz.getStudentIdentifier().getProjectName());
+        User user = management.getUserByName(studentAndQuiz.getStudentIdentifier().getUserEmail());
         Boolean isStudent = user.getStudent();
         peer.createQuiz(studentAndQuiz);
         if (isStudent) {
@@ -152,29 +152,29 @@ public class QuizView {
 //todo: is unnecessary I guess. finalizing should just happen when phase ends
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/finalize/project/{projectId}")
-    public String calculateAssessment(@PathParam("projectId") String projectId) {
-        peer.finalizeAssessment(projectId);
-        return "successfully finalized "+projectId;
+    @Path("/finalize/project/{projectName}")
+    public String calculateAssessment(@PathParam("projectName") String projectName) {
+        peer.finalizeAssessment(projectName);
+        return "successfully finalized "+projectName;
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/mean/project/{projectId}")
-    public int meanOfAssessment(@PathParam("projectId") String ProjectId) {
+    @Path("/mean/project/{projectName}")
+    public int meanOfAssessment(@PathParam("projectName") String ProjectId) {
         return peer.meanOfAssessment(ProjectId);
     }  ///////////////////////////////return 0//////////////////////////////////
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/total/project/{projectId}/student/{student}")
-    public ArrayList<Performance> getTotalAssessment(@PathParam("projectId") String ProjectId, @PathParam("student") String student) {
-        StudentIdentifier studentIdentifier = new StudentIdentifier(ProjectId, student);
-        return getTotalAssessment(studentIdentifier);
+    @Path("/total/project/{projectName}/student/{student}")
+    public ArrayList<Performance> getTotalAssessment(@PathParam("projectName") String ProjectId, @PathParam("student") String student) {
+        StudentIdentifier userNameentifier = new StudentIdentifier(ProjectId, student);
+        return getTotalAssessment(userNameentifier);
     }  //////////dummy/////////////funktioniert wie geplant//////////////////////////////////
 
-    private ArrayList<Performance> getTotalAssessment(StudentIdentifier studentIdentifier) {
-        return peer.getTotalAssessment(studentIdentifier);
+    private ArrayList<Performance> getTotalAssessment(StudentIdentifier userNameentifier) {
+        return peer.getTotalAssessment(userNameentifier);
     }  /////////dummy/////////////funktioniert wie geplant//////////////////////////////////
 
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java.orig
index 2150543c..54339905 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java.orig
@@ -40,11 +40,11 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/quiz/{quizId}/authorEmail/{authorEmail}")
-    public Quiz getQuiz(@PathParam("projectId") String projectId, @PathParam("quizId") String quizId, @PathParam("authorEmail") String authorEmail) {
+    @Path("/project/{projectName}/quiz/{quizId}/authorEmail/{authorEmail}")
+    public Quiz getQuiz(@PathParam("projectName") String projectName, @PathParam("quizId") String quizId, @PathParam("authorEmail") String authorEmail) {
         try {
             String question = java.net.URLDecoder.decode(quizId, "UTF-8");
-            return peer.getQuiz(projectId, question, authorEmail);
+            return peer.getQuiz(projectName, question, authorEmail);
         } catch (UnsupportedEncodingException e) {
             throw new AssertionError("UTF-8 is unknown");
         }
@@ -52,32 +52,32 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/quiz/authorEmail/{authorEmail}")
-    public ArrayList<Quiz> getQuiz(@PathParam("projectId") String projectId, @PathParam("authorEmail") String authorEmail) {
-        return peer.getQuiz(projectId, authorEmail);
+    @Path("/project/{projectName}/quiz/authorEmail/{authorEmail}")
+    public ArrayList<Quiz> getQuiz(@PathParam("projectName") String projectName, @PathParam("authorEmail") String authorEmail) {
+        return peer.getQuiz(projectName, authorEmail);
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/quiz")
-    public ArrayList<Quiz> getQuiz(@PathParam("projectId") String projectId) {
-        return peer.getQuiz(projectId);
+    @Path("/project/{projectName}/quiz")
+    public ArrayList<Quiz> getQuiz(@PathParam("projectName") String projectName) {
+        return peer.getQuiz(projectName);
     }
     //////////////////////////////////////////funktioniert///////////////////////////////////////
 
 
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/peerRating/project/{projectId}")
-    public void postPeerRating(ArrayList<PeerRating> peerRatings, @PathParam("projectId") String projectId) throws IOException {
-        peer.postPeerRating(peerRatings, projectId);
+    @Path("/peerRating/project/{projectName}")
+    public void postPeerRating(ArrayList<PeerRating> peerRatings, @PathParam("projectName") String projectName) throws IOException {
+        peer.postPeerRating(peerRatings, projectName);
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/groupRate/project/{projectId}/student/{studentId}")
-    public Integer whichGroupToRate(@PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/groupRate/project/{projectName}/student/{userName}")
+    public Integer whichGroupToRate(@PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return peer.whichGroupToRate(student);
     }
 
@@ -92,9 +92,9 @@ public class QuizView {
 
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/quizAnswer/projectId/{projectId}/studentId/{studentId}/")
-    public void answerQuiz(Map<String, List<String>> questions, @PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/quizAnswer/projectName/{projectName}/userName/{userName}/")
+    public void answerQuiz(Map<String, List<String>> questions, @PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         peer.answerQuiz(questions, student);
     }
 
@@ -112,9 +112,9 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.TEXT_HTML)
-    @Path("/whatToRate/project/{projectId}/student/{studentId}")
-    public String whatToRate(@PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/whatToRate/project/{projectName}/student/{userName}")
+    public String whatToRate(@PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return peer.whatToRate(student);
     }
 
@@ -128,16 +128,16 @@ public class QuizView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/get/project/{projectId}")
-    public Map<StudentIdentifier, Double> getAssessmentForProject(String projectId) {
-        return peer.getAssessmentForProject(projectId);
+    @Path("/get/project/{projectName}")
+    public Map<StudentIdentifier, Double> getAssessmentForProject(String projectName) {
+        return peer.getAssessmentForProject(projectName);
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/get/project/{projectId}/student/{studentId}")
-    public Double getAssessmentForStudent(@PathParam("projectId") String projectId, @PathParam("studentId") String studentId) {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+    @Path("/get/project/{projectName}/student/{userName}")
+    public Double getAssessmentForStudent(@PathParam("projectName") String projectName, @PathParam("userName") String userName) {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return peer.getAssessmentForStudent(student);
     }
 
@@ -162,29 +162,29 @@ public class QuizView {
 //todo: is unnecessary I guess. finalizing should just happen when phase ends
     @POST
     @Consumes(MediaType.APPLICATION_JSON)
-    @Path("/finalize/project/{projectId}")
-    public String calculateAssessment(@PathParam("projectId") String projectId) {
-        peer.finalizeAssessment(projectId);
-        return "successfully finalized "+projectId;
+    @Path("/finalize/project/{projectName}")
+    public String calculateAssessment(@PathParam("projectName") String projectName) {
+        peer.finalizeAssessment(projectName);
+        return "successfully finalized "+projectName;
     }
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/mean/project/{projectId}")
-    public int meanOfAssessment(@PathParam("projectId") String ProjectId) {
+    @Path("/mean/project/{projectName}")
+    public int meanOfAssessment(@PathParam("projectName") String ProjectId) {
         return peer.meanOfAssessment(ProjectId);
     }  ///////////////////////////////return 0//////////////////////////////////
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/total/project/{projectId}/student/{student}")
-    public ArrayList<Performance> getTotalAssessment(@PathParam("projectId") String ProjectId, @PathParam("student") String student) {
-        StudentIdentifier studentIdentifier = new StudentIdentifier(ProjectId, student);
-        return getTotalAssessment(studentIdentifier);
+    @Path("/total/project/{projectName}/student/{student}")
+    public ArrayList<Performance> getTotalAssessment(@PathParam("projectName") String ProjectId, @PathParam("student") String student) {
+        StudentIdentifier userNameentifier = new StudentIdentifier(ProjectId, student);
+        return getTotalAssessment(userNameentifier);
     }  //////////dummy/////////////funktioniert wie geplant//////////////////////////////////
 
-    private ArrayList<Performance> getTotalAssessment(StudentIdentifier studentIdentifier) {
-        return peer.getTotalAssessment(studentIdentifier);
+    private ArrayList<Performance> getTotalAssessment(StudentIdentifier userNameentifier) {
+        return peer.getTotalAssessment(userNameentifier);
     }  /////////dummy/////////////funktioniert wie geplant//////////////////////////////////
 
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java
index 96dc4ec1..23de9987 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/communication/service/CommunicationDummyService.java
@@ -6,9 +6,6 @@ import unipotsdam.gf.config.Constants;
 import unipotsdam.gf.core.management.Management;
 import unipotsdam.gf.core.management.project.Project;
 import unipotsdam.gf.core.management.user.User;
-import unipotsdam.gf.assignments.Assignee;
-import unipotsdam.gf.assignments.NotImplementedLogger;
-import unipotsdam.gf.core.states.model.Constraints;
 import unipotsdam.gf.core.states.model.ConstraintsMessages;
 import unipotsdam.gf.interfaces.ICommunication;
 import unipotsdam.gf.modules.assessment.controller.model.StudentIdentifier;
@@ -106,8 +103,8 @@ public class CommunicationDummyService implements ICommunication {
 
     }
 
-    public String getChatRoomLink(String userToken, String projectToken, String groupToken) {
-        //User user = managementService.getUserByEmail(userToken);
+    public String getChatRoomLink(String userEmail, String projectToken, String groupToken) {
+        //User user = managementService.getUserByEmail(userEmail);
         // TODO: Implement getProjectbyToken and getGroupByToken
         //Project project = managementService.getProject(projectToken
         String channelName = "general";
@@ -129,7 +126,7 @@ public class CommunicationDummyService implements ICommunication {
     @Override
     public void sendMessageToUsers(Project project, String message) {
         // TODO implement as email or directed message, popup after login or whatever
-        String message2 = "sending email with message: "+ message + " to: "+ project.getId();
+        String message2 = "sending email with message: "+ message + " to: "+ project.getName();
         NotImplementedLogger.logAssignment(Assignee.MARTIN, CommunicationDummyService.class, message2);
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java
index ce2b0ca8..c774b006 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java
@@ -58,15 +58,15 @@ public class DummyProjectCreationService {
             management.create(project);
         }
 
-        List<Group> groups = createDummyGroups(project.getId());
+        List<Group> groups = createDummyGroups(project.getName());
 
         List<Group> nonCreatedGroups = groups.stream().filter(group -> !management.exists(group)).collect(Collectors.toList());
 
         nonCreatedGroups.forEach(group -> management.create(group));
 
-        List<Group> groupsWithId = groupDAO.getGroupsByProjectId(project.getId());
+        List<Group> groupsWithId = groupDAO.getGroupsByProjectName(project.getName());
         groupsWithId.forEach(group -> {
-            String chatRoomName = String.join(" - ", project.getId(), String.valueOf(group.getId()));
+            String chatRoomName = String.join(" - ", project.getName(), String.valueOf(group.getId()));
             group.setChatRoomId(communicationService.createChatRoom(chatRoomName, group.getMembers()));
             management.update(group);
         });
@@ -74,11 +74,11 @@ public class DummyProjectCreationService {
         return true;
     }
 
-    List<Group> createDummyGroups(String projectId) {
-        Group group1 = new Group(new ArrayList<>(), projectId);
-        Group group2 = new Group(new ArrayList<>(), projectId);
-        Group group3 = new Group(new ArrayList<>(), projectId);
-        Group group4 = new Group(new ArrayList<>(), projectId);
+    List<Group> createDummyGroups(String projectName) {
+        Group group1 = new Group(new ArrayList<>(), projectName);
+        Group group2 = new Group(new ArrayList<>(), projectName);
+        Group group3 = new Group(new ArrayList<>(), projectName);
+        Group group4 = new Group(new ArrayList<>(), projectName);
         List<Group> groups = Arrays.asList(group1, group2, group3, group4);
 
         String baseUserName = "Name ";
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java.orig
index 7915f04a..00acdca4 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationService.java.orig
@@ -71,11 +71,11 @@ public class DummyProjectCreationService {
         return true;
     }
 
-    List<Group> createDummyGroups(String projectId) {
-        Group group1 = new Group(new ArrayList<>(), projectId);
-        Group group2 = new Group(new ArrayList<>(), projectId);
-        Group group3 = new Group(new ArrayList<>(), projectId);
-        Group group4 = new Group(new ArrayList<>(), projectId);
+    List<Group> createDummyGroups(String projectName) {
+        Group group1 = new Group(new ArrayList<>(), projectName);
+        Group group2 = new Group(new ArrayList<>(), projectName);
+        Group group3 = new Group(new ArrayList<>(), projectName);
+        Group group4 = new Group(new ArrayList<>(), projectName);
         List<Group> groups = Arrays.asList(group1, group2, group3, group4);
 
         String baseUserName = "Name ";
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/service/GroupDAO.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/service/GroupDAO.java
index ed1198a1..0f5f65ea 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/service/GroupDAO.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/service/GroupDAO.java
@@ -33,9 +33,9 @@ public class GroupDAO {
         connect.connect();
         ArrayList<String> result = new ArrayList<>();
         Integer groupId;
-        String mysqlRequest1 = "SELECT groupId FROM `groupuser` WHERE `projectId`=? AND `studentId`=?";
+        String mysqlRequest1 = "SELECT groupId FROM `groupuser` WHERE `projectName`=? AND `userEmail`=?";
         VereinfachtesResultSet vereinfachtesResultSet1 =
-                connect.issueSelectStatement(mysqlRequest1, student.getProjectId(), student.getStudentId());
+                connect.issueSelectStatement(mysqlRequest1, student.getProjectName(), student.getUserEmail());
         vereinfachtesResultSet1.next();
         groupId = vereinfachtesResultSet1.getInt("groupId");
         String mysqlRequest2 = "SELECT * FROM `groupuser` WHERE `groupId`=?";
@@ -43,8 +43,8 @@ public class GroupDAO {
                 connect.issueSelectStatement(mysqlRequest2, groupId);
         boolean next2 = vereinfachtesResultSet2.next();
         while (next2) {
-            String peer = vereinfachtesResultSet2.getString("studentId");
-            if (!peer.equals(student.getStudentId()))
+            String peer = vereinfachtesResultSet2.getString("userName");
+            if (!peer.equals(student.getUserEmail()))
                 result.add(peer);
             next2 = vereinfachtesResultSet2.next();
         }
@@ -52,19 +52,21 @@ public class GroupDAO {
         return result;
     }
 
+
+    // refactor (you get the id as a return value when inserting into the db)
     public void persist(Group group) {
         connect.connect();
-        List<Group> existingGroups = getExistingEntriesOfGroups(group.getProjectId());
+        List<Group> existingGroups = getExistingEntriesOfGroups(group.getProjectName());
 
-        String mysqlRequestGroup = "INSERT INTO groups (`projectId`,`chatRoomId`) values (?,?)";
-        connect.issueInsertOrDeleteStatement(mysqlRequestGroup, group.getProjectId(), group.getChatRoomId());
+        String mysqlRequestGroup = "INSERT INTO groups (`projectName`,`chatRoomId`) values (?,?)";
+        connect.issueInsertOrDeleteStatement(mysqlRequestGroup, group.getProjectName(), group.getChatRoomId());
 
-        List<Group> existingGroupsWithNewEntry = getExistingEntriesOfGroups(group.getProjectId());
+        List<Group> existingGroupsWithNewEntry = getExistingEntriesOfGroups(group.getProjectName());
         existingGroupsWithNewEntry.removeAll(existingGroups);
         group.setId(existingGroupsWithNewEntry.get(0).getId());
         for (User groupMember : group.getMembers()) {
-            String mysqlRequest2 = "INSERT INTO groupuser (`studentId`, `projectId`, `groupId`) values (?,?,?)";
-            connect.issueInsertOrDeleteStatement(mysqlRequest2, groupMember.getEmail(), group.getProjectId(), group.getId());
+            String mysqlRequest2 = "INSERT INTO groupuser (`userEmail`, `groupId`) values (?,?)";
+            connect.issueInsertOrDeleteStatement(mysqlRequest2, groupMember.getEmail(), group.getId());
         }
         connect.close();
 
@@ -72,15 +74,15 @@ public class GroupDAO {
 
     public void update(Group group) {
         connect.connect();
-        String mysqlRequest = "UPDATE groups SET projectId = ?, chatRoomId = ? where id = ?";
-        connect.issueUpdateStatement(mysqlRequest, group.getProjectId(), group.getChatRoomId(), group.getId());
+        String mysqlRequest = "UPDATE groups SET projectName = ?, chatRoomId = ? where id = ?";
+        connect.issueUpdateStatement(mysqlRequest, group.getProjectName(), group.getChatRoomId(), group.getId());
         connect.close();
         // TODO: implement update of groupuser if needed later (if member list need to be updated)
     }
 
 
     public Boolean exists(Group group) {
-        List<Group> existingGroups = getGroupsByProjectId(group.getProjectId());
+        List<Group> existingGroups = getGroupsByProjectName(group.getProjectName());
         return existingGroups.contains(group);
     }
 
@@ -92,13 +94,14 @@ public class GroupDAO {
         // TODO: implement
     }
 
-    public List<Group> getGroupsByProjectId(String projectId) {
+    public List<Group> getGroupsByProjectName(String projectName) {
         connect.connect();
         String mysqlRequest = "SELECT * FROM groups g " +
-                "JOIN groupuser gu ON g.id=gu.groupId " + "JOIN users u ON gu.studentId=u.email " +
-                "where g.projectId = ?";
+                "JOIN groupuser gu ON g.id=gu.groupId " +
+                "JOIN users u ON gu.userEmail=u.email " +
+                "where g.projectName = ?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                connect.issueSelectStatement(mysqlRequest, projectId);
+                connect.issueSelectStatement(mysqlRequest, projectName);
         if (Objects.isNull(vereinfachtesResultSet)) {
             connect.close();
             return Collections.emptyList();
@@ -118,22 +121,22 @@ public class GroupDAO {
         if (existingGroups.containsKey(id)) {
             existingGroups.get(id).addMember(ResultSetUtil.getUserFromResultSet(vereinfachtesResultSet));
         } else {
-            String projectId = vereinfachtesResultSet.getString("projectId");
+            String projectName = vereinfachtesResultSet.getString("projectName");
             User user = ResultSetUtil.getUserFromResultSet(vereinfachtesResultSet);
             String chatRoomId = vereinfachtesResultSet.getString("chatRoomId");
             ArrayList<User> userList = new ArrayList<>(Collections.singletonList(user));
-            Group group = new Group(id, userList, projectId, chatRoomId);
+            Group group = new Group(id, userList, projectName, chatRoomId);
             existingGroups.put(id, group);
         }
     }
 
-    private List<Group> getExistingEntriesOfGroups(String projectId) {
-        String mysqlExistingGroup = "SELECT * FROM groups WHERE projectId = ?";
-        VereinfachtesResultSet resultSet = connect.issueSelectStatement(mysqlExistingGroup, projectId);
+    private List<Group> getExistingEntriesOfGroups(String projectName) {
+        String mysqlExistingGroup = "SELECT * FROM groups WHERE projectName = ?";
+        VereinfachtesResultSet resultSet = connect.issueSelectStatement(mysqlExistingGroup, projectName);
         ArrayList<Group> existingGroups = new ArrayList<>();
         while (resultSet.next()) {
             int id = resultSet.getInt("id");
-            Group existingGroup = new Group(id, projectId);
+            Group existingGroup = new Group(id, projectName);
             existingGroups.add(existingGroup);
         }
         return existingGroups;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java
index 0c883aed..95454bee 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java
@@ -27,10 +27,10 @@ public class GroupView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/student/{studentId}")
+    @Path("/project/{projectName}/student/{userName}")
     public ArrayList<String> getStudentsInSameGroup(
-            @PathParam("projectId") String projectId, @PathParam("studentId") String studentId) throws IOException {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+            @PathParam("projectName") String projectName, @PathParam("userName") String userName) throws IOException {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return groupfinding.getStudentsInSameGroup(student);
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java.orig b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java.orig
index 00a22fbd..6505f2d5 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java.orig
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/groupfinding/view/GroupView.java.orig
@@ -40,10 +40,10 @@ public class GroupView {
 
     @GET
     @Produces(MediaType.APPLICATION_JSON)
-    @Path("/project/{projectId}/student/{studentId}")
+    @Path("/project/{projectName}/student/{userName}")
     public ArrayList<String> getStudentsInSameGroup(
-            @PathParam("projectId") String projectId, @PathParam("studentId") String studentId) throws IOException {
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+            @PathParam("projectName") String projectName, @PathParam("userName") String userName) throws IOException {
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         return groupfinding.getStudentsInSameGroup(student);
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/Journal.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/Journal.java
index 7c098dbb..f087e6b6 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/Journal.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/Journal.java
@@ -14,7 +14,7 @@ import static unipotsdam.gf.view.MarkdownUtils.convertMarkdownToHtml;
 public class Journal {
 
     private String id;
-    private StudentIdentifier studentIdentifier;
+    private StudentIdentifier userNameentifier;
     private String entryHTML;
     private String entryMD;
     private long timestamp;
@@ -24,9 +24,9 @@ public class Journal {
 
     public Journal() {}
 
-    public Journal(String id, StudentIdentifier studentIdentifier, String entryMD, Visibility visibility, Category category) {
+    public Journal(String id, StudentIdentifier userNameentifier, String entryMD, Visibility visibility, Category category) {
         this.id = id;
-        this.studentIdentifier = studentIdentifier;
+        this.userNameentifier = userNameentifier;
         entryHTML = convertMarkdownToHtml(entryMD);
         this.entryMD = entryMD;
         this.visibility = visibility;
@@ -35,9 +35,9 @@ public class Journal {
         timestamp = new Date().getTime();
     }
 
-    public Journal(String id, StudentIdentifier studentIdentifier, String entryMD, long timestamp, Visibility visibility, Category category, boolean open) {
+    public Journal(String id, StudentIdentifier userNameentifier, String entryMD, long timestamp, Visibility visibility, Category category, boolean open) {
         this.id = id;
-        this.studentIdentifier = studentIdentifier;
+        this.userNameentifier = userNameentifier;
         entryHTML = convertMarkdownToHtml(entryMD);
         this.entryMD = entryMD;
         this.timestamp = timestamp;
@@ -68,11 +68,11 @@ public class Journal {
     }
 
     public StudentIdentifier getStudentIdentifier() {
-        return studentIdentifier;
+        return userNameentifier;
     }
 
-    public void setStudentIdentifier(StudentIdentifier studentIdentifier) {
-        this.studentIdentifier = studentIdentifier;
+    public void setStudentIdentifier(StudentIdentifier userNameentifier) {
+        this.userNameentifier = userNameentifier;
     }
 
     public String getEntryHTML() {
@@ -111,7 +111,7 @@ public class Journal {
     public String toString() {
         return "Journal{" +
                 "id=" + id +
-                ", studentIdentifier=" + studentIdentifier +
+                ", userNameentifier=" + userNameentifier +
                 ", entryHTML='" + entryHTML + '\'' +
                 ", entryMD='" + entryMD + '\'' +
                 ", timestamp=" + timestamp +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImpl.java
index f7218124..43a5b2fe 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImpl.java
@@ -26,9 +26,9 @@ public class JournalDAOImpl implements JournalDAO {
         connection.connect();
 
         // build and execute request
-        String request = "INSERT INTO journals (`id`, `studentId`, `projectId`, `text`, `visibility`,`category`, `open` ) VALUES (?,?,?,?,?,?,?);";
-        connection.issueInsertOrDeleteStatement(request, uuid, journal.getStudentIdentifier().getStudentId(),
-                journal.getStudentIdentifier().getProjectId(), journal.getEntryMD(), journal.getVisibility(), journal.getCategory(), true);
+        String request = "INSERT INTO journals (`id`, `userName`, `projectName`, `text`, `visibility`,`category`, `open` ) VALUES (?,?,?,?,?,?,?);";
+        connection.issueInsertOrDeleteStatement(request, uuid, journal.getStudentIdentifier().getUserEmail(),
+                journal.getStudentIdentifier().getProjectName(), journal.getEntryMD(), journal.getVisibility(), journal.getCategory(), true);
 
         //close connection
         connection.close();
@@ -105,7 +105,7 @@ public class JournalDAOImpl implements JournalDAO {
         connection.connect();
 
         // build and execute request
-        String request = "SELECT * FROM journals WHERE projectId= ? AND (studentId = ? OR visibility = \"ALL\" or visibility = \"GROUP\");";
+        String request = "SELECT * FROM journals WHERE projectName= ? AND (userName = ? OR visibility = \"ALL\" or visibility = \"GROUP\");";
         VereinfachtesResultSet rs = connection.issueSelectStatement(request, project, student);
 
         while (rs.next()) {
@@ -128,7 +128,7 @@ public class JournalDAOImpl implements JournalDAO {
         connection.connect();
 
         // build and execute request
-        String request = "SELECT * FROM journals WHERE studentId= ?;";
+        String request = "SELECT * FROM journals WHERE userName= ?;";
         VereinfachtesResultSet rs = connection.issueSelectStatement(request, student);
 
         while (rs.next()) {
@@ -168,24 +168,24 @@ public class JournalDAOImpl implements JournalDAO {
 
     @Override
     public ArrayList<String> getOpenJournals(Project project) {
-        ArrayList<String> userIds = new ArrayList<>();
+        ArrayList<String> userEmails = new ArrayList<>();
 
         // establish connection
         MysqlConnect connection = new MysqlConnect();
         connection.connect();
 
         // build and execute request
-        String request = "SELECT * FROM journals WHERE projectId = ? AND open = ?;";
-        VereinfachtesResultSet rs = connection.issueSelectStatement(request, project.getId(), true);
+        String request = "SELECT * FROM journals WHERE projectName = ? AND open = ?;";
+        VereinfachtesResultSet rs = connection.issueSelectStatement(request, project.getName(), true);
 
         while (rs.next()) {
-            userIds.add(getJournalFromResultSet(rs).getStudentIdentifier().getStudentId());
+            userEmails.add(getJournalFromResultSet(rs).getStudentIdentifier().getUserEmail());
         }
 
         // close connection
         connection.close();
 
-        return userIds;
+        return userEmails;
 
     }
 
@@ -199,8 +199,8 @@ public class JournalDAOImpl implements JournalDAO {
 
         String id = rs.getString("id");
         long timestamp = rs.getTimestamp(2).getTime();
-        String student = rs.getString("studentId");
-        String project = rs.getString("projectId");
+        String student = rs.getString("userName");
+        String project = rs.getString("projectName");
         String text = rs.getString("text");
         String visibility = rs.getString("visibility");
         String category = rs.getString("category");
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionDAOImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionDAOImpl.java
index d473afdc..b34419b6 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionDAOImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionDAOImpl.java
@@ -26,9 +26,9 @@ public class ProjectDescriptionDAOImpl implements ProjectDescriptionDAO {
         connection.connect();
 
         // build and execute request
-        String request = "INSERT INTO projectdescription(`id`, `studentId`, `projectId`, `text`, `open`) VALUES (?,?,?,?,?);";
-        connection.issueInsertOrDeleteStatement(request, uuid, projectDescription.getStudent().getStudentId(),
-                projectDescription.getStudent().getProjectId(), projectDescription.getDescriptionMD(), true);
+        String request = "INSERT INTO projectdescription(`id`, `userName`, `projectName`, `text`, `open`) VALUES (?,?,?,?,?);";
+        connection.issueInsertOrDeleteStatement(request, uuid, projectDescription.getStudent().getUserEmail(),
+                projectDescription.getStudent().getProjectName(), projectDescription.getDescriptionMD(), true);
 
         //close connection
         connection.close();
@@ -50,15 +50,15 @@ public class ProjectDescriptionDAOImpl implements ProjectDescriptionDAO {
     }
 
     @Override
-    public ProjectDescription getDescription(StudentIdentifier studentIdentifier) {
+    public ProjectDescription getDescription(StudentIdentifier userNameentifier) {
         // establish connection
         MysqlConnect connection = new MysqlConnect();
         connection.connect();
 
         // build and execute request
-        String request = "SELECT * FROM projectdescription WHERE studentId = ? AND projectId = ?;";
-        VereinfachtesResultSet rs = connection.issueSelectStatement(request, studentIdentifier.getStudentId(),
-                studentIdentifier.getProjectId());
+        String request = "SELECT * FROM projectdescription WHERE userName = ? AND projectName = ?;";
+        VereinfachtesResultSet rs = connection.issueSelectStatement(request, userNameentifier.getUserEmail(),
+                userNameentifier.getProjectName());
 
         if (rs != null && rs.next()) {
 
@@ -107,14 +107,14 @@ public class ProjectDescriptionDAOImpl implements ProjectDescriptionDAO {
     }
 
     @Override
-    public void deleteDescription(StudentIdentifier studentIdentifier) {
+    public void deleteDescription(StudentIdentifier userNameentifier) {
         // establish connection
         MysqlConnect connection = new MysqlConnect();
         connection.connect();
 
         // build and execute request
-        String request = "DELETE FROM projectdescription WHERE studentId = ? AND projectId = ?;";
-        connection.issueInsertOrDeleteStatement(request, studentIdentifier.getStudentId(), studentIdentifier.getProjectId());
+        String request = "DELETE FROM projectdescription WHERE userName = ? AND projectName = ?;";
+        connection.issueInsertOrDeleteStatement(request, userNameentifier.getUserEmail(), userNameentifier.getProjectName());
 
         // close connection
         connection.close();
@@ -138,31 +138,31 @@ public class ProjectDescriptionDAOImpl implements ProjectDescriptionDAO {
 
     @Override
     public ArrayList<String> getOpenDescriptions(Project project) {
-        ArrayList<String> userIds = new ArrayList<>();
+        ArrayList<String> userEmails = new ArrayList<>();
 
         // establish connection
         MysqlConnect connection = new MysqlConnect();
         connection.connect();
 
         // build and execute request
-        String request = "SELECT * FROM projectdescription WHERE projectId = ? AND open = ?;";
-        VereinfachtesResultSet rs = connection.issueSelectStatement(request, project.getId(), true);
+        String request = "SELECT * FROM projectdescription WHERE projectName = ? AND open = ?;";
+        VereinfachtesResultSet rs = connection.issueSelectStatement(request, project.getName(), true);
 
         while (rs.next()) {
-            userIds.add(getDescriptionFromResultSet(rs).getStudent().getStudentId());
+            userEmails.add(getDescriptionFromResultSet(rs).getStudent().getUserEmail());
         }
 
         // close connection
         connection.close();
 
-        return userIds;
+        return userEmails;
     }
 
     private ProjectDescription getDescriptionFromResultSet(VereinfachtesResultSet rs) {
         String id = rs.getString("id");
         long timestamp = rs.getTimestamp(2).getTime();
-        String author = rs.getString("studentId");
-        String project = rs.getString("projectId");
+        String author = rs.getString("userName");
+        String project = rs.getString("projectName");
         String text = rs.getString("text");
         boolean open = rs.getBoolean("open");
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/IJournalImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/IJournalImpl.java
index d4bd6094..399ca3fb 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/IJournalImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/IJournalImpl.java
@@ -41,7 +41,7 @@ public class IJournalImpl implements IJournal {
 
         for (User user : descUser) {
 
-            log.debug("Send close description message to user {}", user.getId());
+            log.debug("Send close description message to user {}", user.getEmail());
             //TODO send message when implemented
 
         }
@@ -50,7 +50,7 @@ public class IJournalImpl implements IJournal {
 
         for (User user : journalUser) {
 
-            log.debug("Send close journal message to user {}", user.getId());
+            log.debug("Send close journal message to user {}", user.getEmail());
             //TODO send message when implemented
 
         }
@@ -72,10 +72,10 @@ public class IJournalImpl implements IJournal {
     public EPortfolio getFinalPortfolioForAssessment(Project project, User user) {
 
         EPortfolio result = new EPortfolio();
-        StudentIdentifier studentIdentifier = new StudentIdentifier(project.getId(), user.getId());
+        StudentIdentifier userNameentifier = new StudentIdentifier(project.getName(), user.getEmail());
 
-        result.setDescription(descriptionService.getProjectByStudent(studentIdentifier));
-        result.setJournals(journalService.getAllJournals(user.getId(), project.getId()));
+        result.setDescription(descriptionService.getProjectByStudent(userNameentifier));
+        result.setJournals(journalService.getAllJournals(user.getEmail(), project.getName()));
         //TODO result.setReport(...);
 
         return result;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/JournalServiceImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/JournalServiceImpl.java
index 1541b989..60d20a6f 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/JournalServiceImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/JournalServiceImpl.java
@@ -43,7 +43,7 @@ public class JournalServiceImpl implements JournalService {
         for (Journal j : dbJournals) {
 
             //always show own Journals
-            if (j.getStudentIdentifier().getStudentId().equals(student)) {
+            if (j.getStudentIdentifier().getUserEmail().equals(student)) {
                 result.add(j);
             } else {
 
@@ -53,7 +53,7 @@ public class JournalServiceImpl implements JournalService {
                 }
 
                 //If Visibility Group, show if student is in group and filter allows it
-                if (j.getVisibility() == Visibility.GROUP && j.getStudentIdentifier().getProjectId().equals(project) && filter == JournalFilter.ALL) {
+                if (j.getVisibility() == Visibility.GROUP && j.getStudentIdentifier().getProjectName().equals(project) && filter == JournalFilter.ALL) {
                     result.add(j);
                 }
 
@@ -109,8 +109,8 @@ public class JournalServiceImpl implements JournalService {
     @Override
     public Map<StudentIdentifier, ConstraintsMessages> checkIfAllJournalClosed(Project project) {
         Map<StudentIdentifier, ConstraintsMessages> result = new HashMap<>();
-        for (String studentId: journalDAO.getOpenJournals(project)) {
-            StudentIdentifier student = new StudentIdentifier(project.getId(), studentId);
+        for (String userName: journalDAO.getOpenJournals(project)) {
+            StudentIdentifier student = new StudentIdentifier(project.getName(), userName);
             result.put(student, new ConstraintsMessages(Constraints.JournalOpen, student));
         }
         return result;
@@ -119,10 +119,10 @@ public class JournalServiceImpl implements JournalService {
     @Override
     public ArrayList<User> getOpenUserByProject(Project project) {
 
-        ArrayList<String> userId = journalDAO.getOpenJournals(project);
+        ArrayList<String> userEmail = journalDAO.getOpenJournals(project);
         ArrayList<User> users = new ArrayList<>();
 
-        for (String id : userId) {
+        for (String id : userEmail) {
             users.add(userDAO.getUserByEmail(id));
         }
         return users;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImpl.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImpl.java
index 78ded8cb..6372dda3 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImpl.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImpl.java
@@ -27,15 +27,15 @@ public class ProjectDescriptionImpl implements ProjectDescriptionService {
     private UserDAO userDAO;
 
     @Override
-    public ProjectDescription getProjectByStudent(StudentIdentifier studentIdentifier) {
+    public ProjectDescription getProjectByStudent(StudentIdentifier userNameentifier) {
 
         //if no description exists (when page is opened for the first time), create a new one
-        if (descriptionDAO.getDescription(studentIdentifier) == null) {
-            ProjectDescription description = new ProjectDescription("0", studentIdentifier.getStudentId(), "Hier soll ein Turtorialtext stehen", studentIdentifier.getProjectId(), null);
+        if (descriptionDAO.getDescription(userNameentifier) == null) {
+            ProjectDescription description = new ProjectDescription("0", userNameentifier.getUserEmail(), "Hier soll ein Turtorialtext stehen", userNameentifier.getProjectName(), null);
             descriptionDAO.createDescription(description);
         }
 
-        ProjectDescription returnDesc = descriptionDAO.getDescription(studentIdentifier);
+        ProjectDescription returnDesc = descriptionDAO.getDescription(userNameentifier);
         returnDesc.setLinks(linkDAO.getAllLinks(returnDesc.getId()));
         return returnDesc;
 
@@ -49,9 +49,9 @@ public class ProjectDescriptionImpl implements ProjectDescriptionService {
     }
 
     @Override
-    public void saveProjectText(StudentIdentifier studentIdentifier, String text) {
+    public void saveProjectText(StudentIdentifier userNameentifier, String text) {
 
-        ProjectDescription desc = getProjectByStudent(studentIdentifier);
+        ProjectDescription desc = getProjectByStudent(userNameentifier);
         desc.setDescription(text);
         descriptionDAO.updateDescription(desc);
     }
@@ -76,8 +76,8 @@ public class ProjectDescriptionImpl implements ProjectDescriptionService {
     public Map<StudentIdentifier, ConstraintsMessages> checkIfAllDescriptionsClosed(Project project) {
         ArrayList<String> missingStudents = descriptionDAO.getOpenDescriptions(project);
         Map<StudentIdentifier, ConstraintsMessages> result = new HashMap<>();
-        for (String studentId: missingStudents) {
-            StudentIdentifier student = new StudentIdentifier(project.getId(), studentId);
+        for (String userName: missingStudents) {
+            StudentIdentifier student = new StudentIdentifier(project.getName(), userName);
             result.put(student, new ConstraintsMessages(Constraints.DescriptionsOpen, student));
         }
         return result;
@@ -86,10 +86,10 @@ public class ProjectDescriptionImpl implements ProjectDescriptionService {
     @Override
     public ArrayList<User> getOpenUserByProject(Project project) {
 
-        ArrayList<String> userId = descriptionDAO.getOpenDescriptions(project);
+        ArrayList<String> userEmail = descriptionDAO.getOpenDescriptions(project);
         ArrayList<User> users = new ArrayList<>();
 
-        for (String id : userId) {
+        for (String id : userEmail) {
             users.add(userDAO.getUserByEmail(id));
         }
         return users;
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionService.java
index b3f82feb..cfbd4a05 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionService.java
@@ -16,11 +16,11 @@ import java.util.Map;
 public interface ProjectDescriptionService {
 
 
-    ProjectDescription getProjectByStudent(StudentIdentifier studentIdentifier);
+    ProjectDescription getProjectByStudent(StudentIdentifier userNameentifier);
 
     ProjectDescription getProjectById(String id);
 
-    void saveProjectText(StudentIdentifier studentIdentifier, String text);
+    void saveProjectText(StudentIdentifier userNameentifier, String text);
 
     void addLink(String project, String link, String name);
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/JournalView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/JournalView.java
index f11f9c2c..f60a8730 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/JournalView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/JournalView.java
@@ -101,7 +101,7 @@ public class JournalView {
         //TODO token
         URI location;
         try {
-            location = new URI("../pages/eportfolio.jsp?token=" + student + "&projectId=" + project);
+            location = new URI("../pages/eportfolio.jsp");
             log.debug("<<< createJournal: redirect to " + location.toString());
             return Response.temporaryRedirect(location).build();
 
@@ -147,7 +147,7 @@ public class JournalView {
         journalService.closeJournal(journal);
         //TODO token
         try {
-            URI location = new URI("../pages/eportfolio.jsp?token=" + student.getStudentId() + "&projectId=" + student.getProjectId());
+            URI location = new URI("../pages/eportfolio.jsp" + student.getUserEmail() + "&projectName=" + student.getProjectName());
             log.debug("<<< closeJournal: redirect to "  +location.toString());
             return Response.temporaryRedirect(location).build();
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/ProjectDescriptionView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/ProjectDescriptionView.java
index f993709e..ef8d96b2 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/ProjectDescriptionView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/journal/view/ProjectDescriptionView.java
@@ -55,7 +55,7 @@ public class ProjectDescriptionView {
 
         //TODO token
         try {
-            URI location = new URI("../pages/eportfolio.jsp?token=" + student + "&projectId=" + project);
+            URI location = new URI("../pages/eportfolio.jsp");
             log.debug("<<< saveText: redirect to "  +location.toString());
             return Response.temporaryRedirect(location).build();
 
@@ -82,7 +82,7 @@ public class ProjectDescriptionView {
 
 
         try {
-            URI location = new URI("../pages/eportfolio.jsp?token=" + desc.getStudent().getStudentId() + "&projectId=" + desc.getStudent().getProjectId());
+            URI location = new URI("../pages/eportfolio.jsp" + desc.getStudent().getUserEmail() + "&projectName=" + desc.getStudent().getProjectName());
             log.debug("<<< addLink: redirect to "  +location.toString());
             return Response.temporaryRedirect(location).build();
 
@@ -131,7 +131,7 @@ public class ProjectDescriptionView {
         StudentIdentifier student = descriptionService.getProjectById(desc).getStudent();
         descriptionService.closeDescription(desc);
         try {
-            URI location = new URI("../pages/eportfolio.jsp?token=" + student.getStudentId() + "&projectId=" + student.getProjectId());
+            URI location = new URI("../pages/eportfolio.jsp" + student.getUserEmail() + "&projectName=" + student.getProjectName());
             log.debug("<<< closeDescription: redirect to "  +location.toString());
             return Response.temporaryRedirect(location).build();
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/controller/SubmissionController.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/controller/SubmissionController.java
index a71ab3a3..0c1baca5 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/controller/SubmissionController.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/controller/SubmissionController.java
@@ -34,7 +34,7 @@ public class SubmissionController implements ISubmission {
         connection.connect();
 
         // build and execute request
-        String request = "INSERT INTO fullsubmissions (`id`, `user`, `text`, `projectId`) VALUES (?,?,?,?);";
+        String request = "INSERT INTO fullsubmissions (`id`, `user`, `text`, `projectName`) VALUES (?,?,?,?);";
         connection.issueInsertOrDeleteStatement(request, uuid, fullSubmissionPostRequest.getUser(), fullSubmissionPostRequest.getText(), fullSubmissionPostRequest.getProjectId());
 
         // get the new submission from database
@@ -115,7 +115,7 @@ public class SubmissionController implements ISubmission {
         connection.connect();
 
         // build and execute request
-        String request = "INSERT IGNORE INTO submissionparts (`userId`, `fullSubmissionId`, `category`) VALUES (?,?,?);";
+        String request = "INSERT IGNORE INTO submissionparts (`userEmail`, `fullSubmissionId`, `category`) VALUES (?,?,?);";
         connection.issueInsertOrDeleteStatement(request, submissionPartPostRequest.getUserId(), submissionPartPostRequest.getFullSubmissionId(), submissionPartPostRequest.getCategory().toString().toUpperCase());
 
         // declare request string
@@ -276,19 +276,19 @@ public class SubmissionController implements ISubmission {
     }
 
     @Override
-    public ArrayList<SubmissionProjectRepresentation> getSubmissionPartsByProjectId(String projectId) {
+    public ArrayList<SubmissionProjectRepresentation> getSubmissionPartsByProjectId(String projectName) {
 
         // establish connection
         MysqlConnect connection = new MysqlConnect();
         connection.connect();
 
         // build and execute request
-        String request = "SELECT s.userId, s.category, s.fullSubmissionId " +
+        String request = "SELECT s.userEmail, s.category, s.fullSubmissionId " +
                 "FROM fullsubmissions f " +
                 "LEFT JOIN submissionparts s " +
                 "ON f.id = s.fullSubmissionId " +
-                "WHERE f.projectId = ?";
-        VereinfachtesResultSet rs = connection.issueSelectStatement(request, projectId);
+                "WHERE f.projectName = ?";
+        VereinfachtesResultSet rs = connection.issueSelectStatement(request, projectName);
 
         ArrayList<SubmissionProjectRepresentation> representations;
 
@@ -345,9 +345,9 @@ public class SubmissionController implements ISubmission {
         long timestamp = rs.getTimestamp("timestamp").getTime();
         String user = rs.getString("user");
         String text = rs.getString("text");
-        String projectId = rs.getString("projectId");
+        String projectName = rs.getString("projectName");
 
-        return new FullSubmission(id, timestamp, user, text, projectId);
+        return new FullSubmission(id, timestamp, user, text, projectName);
 
     }
 
@@ -365,7 +365,7 @@ public class SubmissionController implements ISubmission {
 
         // initialize variables
         long timestamp = rs.getTimestamp("timestamp").getTime();
-        String userId = rs.getString("userId");
+        String userEmail = rs.getString("userEmail");
         String fullSubmissionId = rs.getString("fullSubmissionId");
         Category category = Category.valueOf(rs.getString("category").toUpperCase());
 
@@ -384,7 +384,7 @@ public class SubmissionController implements ISubmission {
             body.add(element);
         } while (rs.next());
 
-        return new SubmissionPart(timestamp, userId, fullSubmissionId, category, body);
+        return new SubmissionPart(timestamp, userEmail, fullSubmissionId, category, body);
     }
 
     /**
@@ -420,7 +420,7 @@ public class SubmissionController implements ISubmission {
                 // build submission part with empty body
                 tmpPart = new SubmissionPart(
                         rs.getTimestamp("timestamp").getTime(),
-                        rs.getString("userId"),
+                        rs.getString("userEmail"),
                         rs.getString("fullSubmissionId"),
                         Category.valueOf(tmpCategory),
                         new ArrayList<SubmissionPartBodyElement>()
@@ -451,7 +451,7 @@ public class SubmissionController implements ISubmission {
         while (rs.next()) {
             if (!Strings.isNullOrEmpty(rs.getString("category"))) {
                 representations.add(new SubmissionProjectRepresentation(
-                        rs.getString("userId"),
+                        rs.getString("userEmail"),
                         Category.valueOf(rs.getString("category").toUpperCase()),
                         rs.getString("fullSubmissionId")
                 ));
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmission.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmission.java
index 37b35c9f..e1ecc7a7 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmission.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmission.java
@@ -11,15 +11,15 @@ public class FullSubmission {
     private long timestamp;
     private String user;
     private String text;
-    private String projectId;
+    private String projectName;
 
     // constructor
-    public FullSubmission(String id, long timestamp, String user, String text, String projectId) {
+    public FullSubmission(String id, long timestamp, String user, String text, String projectName) {
         this.id = id;
         this.timestamp = timestamp;
         this.user = user;
         this.text = text;
-        this.projectId = projectId;
+        this.projectName = projectName;
     }
 
     // methods
@@ -56,11 +56,11 @@ public class FullSubmission {
     }
 
     public String getProjectId() {
-        return projectId;
+        return projectName;
     }
 
-    public void setProjectId(String projectId) {
-        this.projectId = projectId;
+    public void setProjectId(String projectName) {
+        this.projectName = projectName;
     }
 
     @Override
@@ -70,7 +70,7 @@ public class FullSubmission {
                 ", timestamp=" + timestamp +
                 ", user='" + user + '\'' +
                 ", text='" + text + '\'' +
-                ", projectId='" + projectId + '\'' +
+                ", projectName='" + projectName + '\'' +
                 '}';
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmissionPostRequest.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmissionPostRequest.java
index 5801eead..f34ec0f1 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmissionPostRequest.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/FullSubmissionPostRequest.java
@@ -9,13 +9,13 @@ public class FullSubmissionPostRequest {
     // variables
     private String user;
     private String text;
-    private String projectId;
+    private String projectName;
 
     // constructors
-    public FullSubmissionPostRequest(String user, String text, String projectId) {
+    public FullSubmissionPostRequest(String user, String text, String projectName) {
         this.user = user;
         this.text = text;
-        this.projectId = projectId;
+        this.projectName = projectName;
     }
 
     public FullSubmissionPostRequest() {
@@ -39,11 +39,11 @@ public class FullSubmissionPostRequest {
     }
 
     public String getProjectId() {
-        return projectId;
+        return projectName;
     }
 
-    public void setProjectId(String projectId) {
-        this.projectId = projectId;
+    public void setProjectId(String projectName) {
+        this.projectName = projectName;
     }
 
     @Override
@@ -51,7 +51,7 @@ public class FullSubmissionPostRequest {
         return "FullSubmissionPostRequest{" +
                 "user='" + user + '\'' +
                 ", text='" + text + '\'' +
-                ", projectId='" + projectId + '\'' +
+                ", projectName='" + projectName + '\'' +
                 '}';
     }
 
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPart.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPart.java
index 2b420ff9..651e654c 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPart.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPart.java
@@ -12,15 +12,15 @@ public class SubmissionPart {
 
     // variables
     private long timestamp;
-    private String userId;
+    private String userEmail;
     private String fullSubmissionId;
     private Category category;
     private ArrayList<SubmissionPartBodyElement> body;
 
     // constructor
-    public SubmissionPart(long timestamp, String userId, String fullSubmissionId, Category category, ArrayList<SubmissionPartBodyElement> body) {
+    public SubmissionPart(long timestamp, String userEmail, String fullSubmissionId, Category category, ArrayList<SubmissionPartBodyElement> body) {
         this.timestamp = timestamp;
-        this.userId = userId;
+        this.userEmail = userEmail;
         this.fullSubmissionId = fullSubmissionId;
         this.category = category;
         this.body = body;
@@ -39,11 +39,11 @@ public class SubmissionPart {
     }
 
     public String getUserId() {
-        return userId;
+        return userEmail;
     }
 
-    public void setUserId(String userId) {
-        this.userId = userId;
+    public void setUserId(String userEmail) {
+        this.userEmail = userEmail;
     }
 
     public String getFullSubmissionId() {
@@ -74,7 +74,7 @@ public class SubmissionPart {
     public String toString() {
         return "SubmissionPart{" +
                 "timestamp=" + timestamp +
-                ", userId='" + userId + '\'' +
+                ", userEmail='" + userEmail + '\'' +
                 ", fullSubmissionId='" + fullSubmissionId + '\'' +
                 ", category=" + category +
                 ", body=" + body +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPartPostRequest.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPartPostRequest.java
index 20901ed5..ba487fad 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPartPostRequest.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/model/SubmissionPartPostRequest.java
@@ -11,14 +11,14 @@ import java.util.ArrayList;
 public class SubmissionPartPostRequest {
 
     // variables
-    private String userId;
+    private String userEmail;
     private String fullSubmissionId;
     private Category category;
     private ArrayList<SubmissionPartBodyElement> body;
 
     // constructors
-    public SubmissionPartPostRequest(String userId, String fullSubmissionId, Category category, ArrayList<SubmissionPartBodyElement> body) {
-        this.userId = userId;
+    public SubmissionPartPostRequest(String userEmail, String fullSubmissionId, Category category, ArrayList<SubmissionPartBodyElement> body) {
+        this.userEmail = userEmail;
         this.fullSubmissionId = fullSubmissionId;
         this.category = category;
         this.body = body;
@@ -29,11 +29,11 @@ public class SubmissionPartPostRequest {
 
     // methods
     public String getUserId() {
-        return userId;
+        return userEmail;
     }
 
-    public void setUserId(String userId) {
-        this.userId = userId;
+    public void setUserId(String userEmail) {
+        this.userEmail = userEmail;
     }
 
     public String getFullSubmissionId() {
@@ -63,7 +63,7 @@ public class SubmissionPartPostRequest {
     @Override
     public String toString() {
         return "SubmissionPartPostRequest{" +
-                "userId='" + userId + '\'' +
+                "userEmail='" + userEmail + '\'' +
                 ", fullSubmissionId='" + fullSubmissionId + '\'' +
                 ", category=" + category +
                 ", body=" + body +
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/view/SubmissionService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/view/SubmissionService.java
index f853dba4..55a7ed57 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/view/SubmissionService.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/submission/view/SubmissionService.java
@@ -106,16 +106,16 @@ public class SubmissionService {
 
     @GET
     @Path("/project/{id}")
-    public Response getSubmissionPartsByProjectId(@PathParam("id") String projectId) {
+    public Response getSubmissionPartsByProjectId(@PathParam("id") String projectName) {
         // get submission project representation from database based by project id
         SubmissionController controller = new SubmissionController();
-        ArrayList<SubmissionProjectRepresentation> representations = controller.getSubmissionPartsByProjectId(projectId);
+        ArrayList<SubmissionProjectRepresentation> representations = controller.getSubmissionPartsByProjectId(projectName);
 
         if (representations.size() > 0) {
             return Response.ok(representations).build();
         } else {
             SubmissionResponse response = new SubmissionResponse();
-            response.setMessage("No submission parts found for project id '" + projectId + "'");
+            response.setMessage("No submission parts found for project id '" + projectName + "'");
 
             return Response.status(Response.Status.NOT_FOUND).entity(response).build();
         }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/view/Messages.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/view/Messages.java
index cffc1eae..7e67d50b 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/view/Messages.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/view/Messages.java
@@ -5,12 +5,12 @@ import unipotsdam.gf.core.management.project.Project;
 public class Messages {
     public static String GroupFormation(Project project){
         // TODO add link to site + markup
-        return "Die Gruppen wurden für den Kurs "+ project.getId() + " erstellt";
+        return "Die Gruppen wurden für den Kurs "+ project.getName() + " erstellt";
     }
 
     public static String NewFeedbackTask(Project project) {
         // TODO add link to site + markup
-        return "Eine neue Feedbackaufgabe wurde für den Kurs "+ project.getId() + " erstellt";
+        return "Eine neue Feedbackaufgabe wurde für den Kurs "+ project.getName() + " erstellt";
     }
 
     public static String AssessmentPhaseStarted(Project project) {
diff --git a/gemeinsamforschen/src/main/webapp/annotation/js/annotationScript.js b/gemeinsamforschen/src/main/webapp/annotation/js/annotationScript.js
index 8fb86847..afa0a189 100644
--- a/gemeinsamforschen/src/main/webapp/annotation/js/annotationScript.js
+++ b/gemeinsamforschen/src/main/webapp/annotation/js/annotationScript.js
@@ -1,4 +1,4 @@
-// initialize userToken, userColors
+// initialize userEmail, userColors
 var userColors = new Map();
 var userColorsDark = new Map();
 
@@ -9,8 +9,8 @@ var startCharacter, endCharacter;
  * This function will fire when the DOM is ready
  */
 $(document).ready(function() {
-    let fullSubmissionId = getQueryVariable("fullSubmissionId");
-    let category = getQueryVariable("category");
+    var fullSubmissionId = getQueryVariable("fullSubmissionId");
+    var category = getQueryVariable("category");
 
     // fetch full submission from database
     getFullSubmission(getQueryVariable("fullSubmissionId"), function (response) {
@@ -21,19 +21,19 @@ $(document).ready(function() {
         // fetch submission parts
         getSubmissionPart(fullSubmissionId, category, function (response) {
 
-            let body = response.body;
+            var body = response.body;
             // save body
             $('#documentText').data("body", body);
-            let offset = 0;
-            for (let i = 0; i < body.length; i++) {
+            var offset = 0;
+            for (var i = 0; i < body.length; i++) {
                 addHighlightedSubmissionPart(body[i].startCharacter, body[i].endCharacter, offset);
                 // add char count of '<span class="categoryText"></span>'
                 offset += 34;
             }
 
             // scroll document text to first span element
-            let documentText = $('#documentText');
-            let span = $('#documentText span').first();
+            var documentText = $('#documentText');
+            var span = $('#documentText span').first();
             documentText.scrollTo(span);
 
 
@@ -68,14 +68,14 @@ $(document).ready(function() {
      * continue button
      */
     $('#btnContinue').click(function () {
-        location.href = "../feedback/give-feedback.jsp?token=" + getUserEmail();
+        location.href = "../feedback/give-feedback.jsp";
     });
 
     /**
      * back button
      */
     $('#btnBack').click(function () {
-        location.href = "../project-student.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId");
+        location.href = "../project-student.jsp" ;
     });
 
     /**
@@ -192,20 +192,20 @@ $(document).ready(function() {
     });
 
     /**
-     * Delete an annotation from list and server
+     * Devare an annotation from list and server
      */
-    $('#btnDelete').click(function () {
+    $('#btnDevare').click(function () {
         // get id from edit modal
         var id = $('#annotation-edit-modal').data('id');
 
         // delte annotation from server and from list
-        deleteAnnotation(id, function () {
-            // send delete request to websocket
-            send("DELETE", id);
+        devareAnnotation(id, function () {
+            // send devare request to websocket
+            send("DEvarE", id);
             // remove annotation from list
             $('#' + id).closest('.listelement').remove()
             // remove highlighted text
-            deleteHighlightedText();
+            devareHighlightedText();
 
             // hide and clear the modal
             $('#annotation-edit-modal').modal('hide');
@@ -268,11 +268,11 @@ function displayAnnotation(annotation) {
     }
 
     // declare variables
-    let display, input, filter, user, title, comment;
+    var display, input, filter, user, title, comment;
     input = $('#annotation-search');
     filter = input.val().toLowerCase();
 
-    user = annotation.userToken.toLowerCase();
+    user = annotation.userEmail.toLowerCase();
     title = annotation.body.title.toLowerCase();
     comment = annotation.body.comment.toLowerCase();
 
@@ -297,15 +297,15 @@ function displayAnnotation(annotation) {
                 $('<div>').attr('class', 'annotation-card')
                     .attr('id', annotation.id)
                     .mouseenter(function () {
-                        $(this).children('.annotation-header').css('background-color', getDarkUserColor(annotation.userToken));
+                        $(this).children('.annotation-header').css('background-color', getDarkUserColor(annotation.userEmail));
                     })
                     .mouseleave(function () {
-                        $(this).children('.annotation-header').css('background-color', getUserColor(annotation.userToken));
+                        $(this).children('.annotation-header').css('background-color', getUserColor(annotation.userEmail));
                     })
                     .append(
                         // annotation header
                         $('<div>').attr('class', 'annotation-header')
-                            .css('background-color', getUserColor(annotation.userToken))
+                            .css('background-color', getUserColor(annotation.userEmail))
                             .append(
                                 // header data
                                 $('<div>').attr('class', 'annotation-header-data')
@@ -316,7 +316,7 @@ function displayAnnotation(annotation) {
                                                 $('<i>').attr('class', 'fas fa-user')
                                             )
                                             .append(
-                                                $('<span>').attr('class', 'annotation-header-data-user').append(annotation.userToken)
+                                                $('<span>').attr('class', 'annotation-header-data-user').append(annotation.userEmail)
                                             )
                                     )
                                     .append(
@@ -354,7 +354,7 @@ function displayAnnotation(annotation) {
                             .append(
                                 // edit
                                 function () {
-                                    if (getUserEmail() === annotation.userToken) {
+                                    if (getUserEmail() === annotation.userEmail) {
                                         return $('<div>').attr('class', 'annotation-footer-edit')
                                             .append(
                                                 $('<i>').attr('class', editIcon)
@@ -372,7 +372,7 @@ function displayAnnotation(annotation) {
                                         $('<i>').attr('class', dateIcon)
                                     )
                                     .append(
-                                        $('<span>').append(timestampToReadableTime(annotation.timestamp))
+                                        $('<span>').append(timestampToReadabvarime(annotation.timestamp))
                                     )
                             )
 
@@ -381,15 +381,15 @@ function displayAnnotation(annotation) {
             )
             .data('annotation', annotation)
             .mouseenter(function () {
-                addHighlightedAnnotation(annotation.body.startCharacter, annotation.body.endCharacter, annotation.userToken);
+                addHighlightedAnnotation(annotation.body.startCharacter, annotation.body.endCharacter, annotation.userEmail);
 
                 // scroll document text to anchor element
-                let documentText = $('#documentText');
-                let anchor = $('#anchor');
+                var documentText = $('#documentText');
+                var anchor = $('#anchor');
                 documentText.scrollTo(anchor);
             })
             .mouseleave(function () {
-                deleteHighlightedText();
+                devareHighlightedText();
             })
             .append(
                 $('<div>').attr('class', 'spacing')
@@ -402,17 +402,17 @@ function displayAnnotation(annotation) {
  *
  * @param startCharacter The offset of the start character
  * @param endCharacter The offset of the end character
- * @param userToken The user token
+ * @param userEmail The user token
  */
-function addHighlightedAnnotation(startCharacter, endCharacter, userToken) {
-    let offset = calculateExtraOffset(startCharacter);
+function addHighlightedAnnotation(startCharacter, endCharacter, userEmail) {
+    var offset = calculateExtraOffset(startCharacter);
 
     // initialize variables
-    let documentText = $('#documentText').text();
-    let documentHtml = $('#documentText').html();
+    var documentText = $('#documentText').text();
+    var documentHtml = $('#documentText').html();
 
     // create <span> tag with the annotated text
-    var replacement = $('<span></span>').attr('id', 'anchor').css('background-color', getUserColor(userToken)).html(documentText.slice(startCharacter, endCharacter));
+    var replacement = $('<span></span>').attr('id', 'anchor').css('background-color', getUserColor(userEmail)).html(documentText.slice(startCharacter, endCharacter));
 
     // wrap an <p> tag around the replacement, get its parent (the <p>) and ask for the html
     var replacementHtml = replacement.wrap('<p/>').parent().html();
@@ -457,10 +457,10 @@ function addHighlightedSubmissionPart(startCharacter, endCharacter, offset) {
  */
 function calculateExtraOffset(startCharacter) {
     // get submission part body
-    let body = $('#documentText').data("body");
-    let extraOffset = 0;
+    var body = $('#documentText').data("body");
+    var extraOffset = 0;
 
-    for (let i = 0; i < body.length; i++) {
+    for (var i = 0; i < body.length; i++) {
         if (body[i].startCharacter <= startCharacter) {
             extraOffset += 27;
         }
@@ -475,11 +475,11 @@ function calculateExtraOffset(startCharacter) {
 /**
  * Restore the base text
  */
-function deleteHighlightedText() {
+function devareHighlightedText() {
 
-    let documentText = $('#documentText');
-    let highlight = documentText.find('#anchor');
-    let text = highlight.text();
+    var documentText = $('#documentText');
+    var highlight = documentText.find('#anchor');
+    var text = highlight.text();
     highlight.replaceWith(text);
 
 }
@@ -504,39 +504,39 @@ function getSelectedText() {
 /**
  * Get color based on user id
  *
- * @param userToken The id of the user
+ * @param userEmail The id of the user
  * @returns {string} The user color
  */
-function getUserColor(userToken) {
-    // insert new color if there is no userToken key
-    if (userColors.get(userToken) == null) {
-        generateRandomColor(userToken);
+function getUserColor(userEmail) {
+    // insert new color if there is no userEmail key
+    if (userColors.get(userEmail) == null) {
+        generateRandomColor(userEmail);
     }
     // return the color
-    return userColors.get(userToken);
+    return userColors.get(userEmail);
 }
 
 /**
  * Get dark color based on user id
  *
- * @param userToken The token of the user
+ * @param userEmail The token of the user
  * @returns {string} The dark user color
  */
-function getDarkUserColor(userToken) {
-    // insert new color if there is no userToken key
-    if (userColorsDark.get(userToken) == null) {
-        generateRandomColor(userToken);
+function getDarkUserColor(userEmail) {
+    // insert new color if there is no userEmail key
+    if (userColorsDark.get(userEmail) == null) {
+        generateRandomColor(userEmail);
     }
     // return the color
-    return userColorsDark.get(userToken);
+    return userColorsDark.get(userEmail);
 }
 
 /**
  * Generate a random color of the format 'rgb(r, g, b)'
  *
- * @param userToken The given user token
+ * @param userEmail The given user token
  */
-function generateRandomColor(userToken) {
+function generateRandomColor(userEmail) {
     var r = Math.floor(Math.random()*56)+170;
     var g = Math.floor(Math.random()*56)+170;
     var b = Math.floor(Math.random()*56)+170;
@@ -547,8 +547,8 @@ function generateRandomColor(userToken) {
     var color = 'rgb(' + r + ',' + g + ',' + b + ')';
     var colorDark = 'rgb(' + r_d + ',' + g_d + ',' + b_d + ')';
 
-    userColors.set(userToken, color);
-    userColorsDark.set(userToken, colorDark);
+    userColors.set(userEmail, color);
+    userColorsDark.set(userEmail, colorDark);
 }
 
 /**
@@ -557,7 +557,7 @@ function generateRandomColor(userToken) {
  * @param timestamp A unix timestamp
  * @returns {string} A readable timestamp
  */
-function timestampToReadableTime(timestamp) {
+function timestampToReadabvarime(timestamp) {
     // build Date object from timestamp
     var annotationDate = new Date(timestamp);
     // declare response
@@ -635,13 +635,13 @@ function toggleButtonHandler(id) {
 function saveNewAnnotation(title, comment, startCharacter, endCharacter) {
 
     // initialize target
-    let targetId = getQueryVariable("fullSubmissionId");
-    let targetCategory = getQueryVariable("category");
-    let userToken = getUserEmail();
+    var targetId = getQueryVariable("fullSubmissionId");
+    var targetCategory = getQueryVariable("category");
+    var userEmail = getUserEmail();
 
     // build annotationPostRequest
     var annotationPostRequest = {
-        userToken: userToken,
+        userEmail: userEmail,
         targetId: targetId,
         targetCategory: targetCategory,
         body: {
@@ -766,14 +766,14 @@ function showAndHideToggleButtonById(id) {
 function handleAnnotationClick() {
 
     // if saved selection's range count is > 0
-    let sel = rangy.getSelection();
+    var sel = rangy.getSelection();
     if (sel.rangeCount > 0) {
         // calculate character range offset from range
-        let range = sel.getRangeAt(0);
-        let offsets = range.toCharacterRange($('#documentText')[0]);
+        var range = sel.getRangeAt(0);
+        var offsets = range.toCharacterRange($('#documentText')[0]);
 
         // if selected text's length is > 0
-        let selectedText = getSelectedText();
+        var selectedText = getSelectedText();
         if (selectedText.length > 0) {
             // save start and end character and handle the selection
             startCharacter = offsets.start;
@@ -801,8 +801,8 @@ function handleAnnotationClick() {
  * @returns {boolean} Returns true if the selection is in range
  */
 function isAnnotationInRange(start, end) {
-    let body = $('#documentText').data("body");
-    for (let i = 0; i < body.length; i++) {
+    var body = $('#documentText').data("body");
+    for (var i = 0; i < body.length; i++) {
         if (body[i].startCharacter <= start && end <= body[i].endCharacter) {
             return true;
         }
@@ -815,13 +815,13 @@ function isAnnotationInRange(start, end) {
  */
 function searchAnnotation() {
     // declare variables
-    let input, filter;
+    var input, filter;
     input = $('#annotation-search');
     filter = input.val().toLowerCase();
 
     // iterate over annotation card and hide those who don't match the search query
     $('#annotations').find('li').each(function () {
-        let user, title, comment;
+        var user, title, comment;
         user = $(this).find('.annotation-header-data-user').text().toLowerCase();
         title = $(this).find('.annotation-header-data-title').text().toLowerCase();
         comment = $(this).find('.annotation-body-text').text().toLowerCase();
diff --git a/gemeinsamforschen/src/main/webapp/annotation/js/createJournal.js b/gemeinsamforschen/src/main/webapp/annotation/js/createJournal.js
index aa38ac04..731ae078 100644
--- a/gemeinsamforschen/src/main/webapp/annotation/js/createJournal.js
+++ b/gemeinsamforschen/src/main/webapp/annotation/js/createJournal.js
@@ -1,12 +1,11 @@
-var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+
 
 $(document).ready(function() {
     $('#student').val(student);
     $('#project').val(project);
 
     $('#backLink').on('click', function(){
-        location.href = "eportfolio.jsp?token=" + student + "&projectId=" + project;
+        location.href = "eportfolio.jsp";
     });
 
     var journalID = getQueryVariable("journal");
diff --git a/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredAnnotation.js b/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredAnnotation.js
index a19e1879..822b707a 100644
--- a/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredAnnotation.js
+++ b/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredAnnotation.js
@@ -26,7 +26,7 @@ $(document).ready(function () {
 
     }, function () {
         // jump to upload page on error
-        location.href = "upload-unstructured-annotation.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId");
+        location.href = "upload-unstructured-annotation.jsp"
     });
 
     // set click listener to save button
@@ -255,7 +255,7 @@ function saveButtonHandler() {
                 // initialize the post request
                 let category = $(this).attr('id').toUpperCase();
                 let submissionPartPostRequest = {
-                    userId: getUserEmail(),
+                    userEmail: getUserEmail(),
                     fullSubmissionId: getSubmissionIdFromUrl(),
                     category: category,
                     body: []
@@ -285,11 +285,11 @@ function saveButtonHandler() {
 
         $.when.apply($, promises).then(function () {
             // redirect user to project page after saving
-            location.href = "../project-student.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId");
+            location.href = "../project-student.jsp"
         });
 
         // redirect user to project page after saving
-        // location.href="project-student.jsp?token=" + getUserEmail() + "&projectId=" + getProjectIdFromUrl();
+        // location.href="project-student.jsp" + getUserEmail() + "&projectName=" + getProjectIdFromUrl();
     }
 }
 
diff --git a/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredUpload.js b/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredUpload.js
index d8faf1e6..44b9b6a7 100644
--- a/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredUpload.js
+++ b/gemeinsamforschen/src/main/webapp/annotation/js/unstructuredUpload.js
@@ -14,7 +14,7 @@ $(document).ready(function () {
             var fullSubmissionPostRequest = {
                 user: user,
                 text: text,
-                projectId: getQueryVariable("projectId")
+                projectName: getQueryVariable("projectName")
             };
 
             // save request in database
@@ -23,7 +23,7 @@ $(document).ready(function () {
                 $('#upload-textarea').val("");
 
                 // jump to next page
-                location.href = "create-unstructured-annotation.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId") + "&submission=" + response.id;
+                location.href = "create-unstructured-annotation.jsp" + "&submission=" + response.id;
             });
         }
     });
@@ -38,14 +38,14 @@ $(document).ready(function () {
 
                 // jump to previous page
                 //window.history.back();
-                location.href = "../project-student.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId");
+                location.href = "../project-student.jsp";
             }
         }
         // nothing to check
         else {
             // jump to previous page
             //window.history.back();
-            location.href = "../project-student.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId");
+            location.href = "../project-student.jsp";
         }
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/AlertAssessmentOutlier.js b/gemeinsamforschen/src/main/webapp/assessment/js/AlertAssessmentOutlier.js
index adef7501..1bc4c0ab 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/AlertAssessmentOutlier.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/AlertAssessmentOutlier.js
@@ -5,7 +5,7 @@ $(document).ready(function () {
 
 
         $.ajax({
-            url: "../rest/assessments4/diagramm1/" + getQueryVariable("projectId"),
+            url: "../rest/assessments4/diagramm1/" + getQueryVariable("projectName"),
             type: 'POST',
             headers: {
                 "Content-Type": "application/json",
@@ -71,14 +71,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -110,14 +110,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -148,14 +148,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -186,14 +186,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -224,14 +224,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -262,14 +262,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -300,14 +300,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -338,14 +338,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
@@ -376,14 +376,14 @@ $(document).ready(function () {
 
             var dataP = JSON.stringify({
                 "adressat": true, "student": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": "fgnxnw"
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": "fgnxnw"
                 }, "deadline": new Date(),
                 "bewertender": {
-                    "projectId": getQueryVariable("projectId"),
-                    "studentId": document.getElementById("user").innerText
+                    "projectName": getQueryVariable("projectName"),
+                    "userName": document.getElementById("user").innerText
                 },
-                "projektId": getQueryVariable("projectId"),
+                "projektId": getQueryVariable("projectName"),
                 "bewertung": alarm
             });
             $.ajax({
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js b/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js
index 6e52edcf..43ceb243 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js
@@ -1,6 +1,6 @@
 $(document).ready(function () {
     $('#newQuiz').on('click', function () {
-        location.href = "create-quiz.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+        location.href = "create-quiz.jsp";
     });
 
     let loading = $('#loadbar').hide();
@@ -25,9 +25,9 @@ $(document).ready(function () {
 
     $ans = 3;
 
-    let projectId = document.getElementById('projectId').innerText.trim();
+    let projectName = document.getElementById('projectName').innerText.trim();
     $.ajax({
-        url: '../rest/assessments/project/' + projectId + '/quiz/',
+        url: '../rest/assessments/project/' + projectName + '/quiz/',
         type: 'GET',
         success: function (data) {
             let table = document.getElementById('tableQuiz');
@@ -78,7 +78,7 @@ $(document).ready(function () {
             url: '../rest/assessments/quiz/' + encodeURIComponent(event.data.quizId),
             type: 'POST',
             success: function () {
-                document.location.href = "quiz-docent.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+                document.location.href = "quiz-docent.jsp";
             },
             error: function (a) {
                 alert(a)
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js.orig b/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js.orig
deleted file mode 100644
index ed520f05..00000000
--- a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz-docent.js.orig
+++ /dev/null
@@ -1,93 +0,0 @@
-$(document).ready(function () {
-    $('#newQuiz').on('click', function () {
-        location.href = "create-quiz.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim();
-    });
-
-    let loading = $('#loadbar').hide();
-    $(document)
-        .ajaxStart(function () {
-            loading.show();
-        }).ajaxStop(function () {
-        loading.hide();
-    });
-
-    $("label.btn").on('click', function () {
-        let choice = $(this).find('input:radio').val();
-        $('#loadbar').show();
-        $('#quiz').fadeOut();
-        setTimeout(function () {
-            $("#answer").html($(this).checking(choice));
-            $('#quiz').show();
-            $('#loadbar').fadeOut();
-            /* something else */
-        }, 1500);
-    });
-
-    $ans = 3;
-
-    let projectId = document.getElementById('projectId').innerText.trim();
-    $.ajax({
-        url: '../rest/assessments/project/' + projectId + '/quiz/',
-        type: 'GET',
-        success: function (data) {
-            let table = document.getElementById('tableQuiz');
-<<<<<<< HEAD
-            for (let quiz = 0; quiz < data.length; quiz++){
-                let question = data[quiz].question.replace(/ /g,"").replace(/\?/g,"").replace(/,/g,"");
-                question = question.replace(/\"/g, "").replace(/\'/g,"");
-=======
-            for (let quiz = 0; quiz < data.length; quiz++) {
-                let question = data[quiz].question.replace(/ /g, "").replace("?", "").replace(",", "");
->>>>>>> origin/development_master
-                let answers = data[quiz].correctAnswers.concat(data[quiz].incorrectAnswers);
-                let colspan = answers.length;
-                let trQuestion = document.createElement('TR');
-                let tdQuestion = '<td colspan="' + colspan + '"' +
-                    ' data-toggle="collapse" href="#' + question + '" aria-expanded="false" aria-controls="' + question + '">' +
-                    '' + data[quiz].question + '</td>';
-                trQuestion.innerHTML = tdQuestion;
-                let trAnswers = document.createElement('TR');
-                let answersTd = '<td style="display: block;">' +
-                    '<div ' +
-                    'class="quiz collapse" ' +
-                    'id="' + question + '" ' +
-                    'data-toggle="buttons">' +
-                    '<p hidden>' + data[quiz].question + '</p>';
-                for (let i = 0; i < answers.length; i++) {
-                    answersTd = answersTd + '<div>' +
-                        '<label class="element-animation1 btn btn-lg btn-primary btn-block">' +
-                        '<span class="btn-label">' +
-                        '<i class="glyphicon glyphicon-chevron-right">' +
-                        '</i>' +
-                        '</span>' +
-                        '<input type="checkbox" value="' + answers[i] + '">' + answers[i] + '' +
-                        '</label>' +
-                        '</div>';
-                }
-                tdQuestion = "";
-                answers = [];
-                let deletebutton = '<button class="btn btn-danger" id="delete' + question + '">löschen</button>';
-                trAnswers.innerHTML = answersTd + deletebutton + '</div></td>';
-                table.appendChild(trQuestion);
-                table.appendChild(trAnswers);
-                $("#delete" + question).click({quizId: data[quiz].question}, deleteQuiz);
-            }
-        },
-        error: function (a) {
-            alert('Fehler ' + a);
-        }
-    });
-
-    function deleteQuiz(event) {
-        $.ajax({
-            url: '../rest/assessments/quiz/' + encodeURIComponent(event.data.quizId),
-            type: 'POST',
-            success: function () {
-                document.location.href = "quiz-docent.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim();
-            },
-            error: function (a) {
-                alert(a)
-            }
-        });
-    }
-});
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js b/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js
index 50f1d3bd..5cea13c9 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js
@@ -1,9 +1,9 @@
 $(document).ready(function () {
-    let projectId = document.getElementById('projectId').innerText.trim();
-    let studentId = document.getElementById('user').innerText.trim();
+    let projectName = document.getElementById('projectName').innerText.trim();
+    let userName = document.getElementById('user').innerText.trim();
     $.ajax({
-        url: '../rest/assessments/project/'+projectId+'/quiz/author/'+studentId,
-        projectId: projectId,
+        url: '../rest/assessments/project/'+projectName+'/quiz/author/'+userName,
+        projectName: projectName,
         type: 'GET',
         success: function (data) {
             let table = document.getElementById('myQuizzes');
@@ -14,8 +14,6 @@ $(document).ready(function () {
                 trQuestion.className = "pageChanger";
                 trQuestion.innerHTML = '<td colspan="' + colspan + '"><h3>' +
                     '<a href="view-quiz.jsp' +
-                    '?token=' + getUserEmail() +
-                    '&projectId=' + projectId +
                     '&quizId=' + encodeURIComponent(data[quiz].question) + '"</a>' +
                     data[quiz].question + '</h3></td>';
                 table.appendChild(trQuestion);
@@ -27,6 +25,6 @@ $(document).ready(function () {
     });
 
     $('#newQuiz').on('click', function () {
-        location.href = "create-quiz.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+        location.href = "create-quiz.jsp";
     });
 });
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js.orig b/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js.orig
deleted file mode 100644
index bca1a381..00000000
--- a/gemeinsamforschen/src/main/webapp/assessment/js/Quiz.js.orig
+++ /dev/null
@@ -1,36 +0,0 @@
-$(document).ready(function () {
-    let projectId = document.getElementById('projectId').innerText.trim();
-    let studentId = document.getElementById('user').innerText.trim();
-    $.ajax({
-<<<<<<< HEAD
-        url: '../rest/assessments/project/'+projectId+'/quiz/authorEmail/'+studentId,
-=======
-        url: '../rest/assessments/project/' + projectId + '/quiz/',
->>>>>>> origin/development_master
-        projectId: projectId,
-        type: 'GET',
-        success: function (data) {
-            let table = document.getElementById('myQuizzes');
-            for (let quiz = 0; quiz < data.length; quiz++) {
-                let answers = data[quiz].correctAnswers.concat(data[quiz].incorrectAnswers);
-                let colspan = answers.length;
-                let trQuestion = document.createElement('TR');
-                trQuestion.className = "pageChanger";
-                trQuestion.innerHTML = '<td colspan="' + colspan + '"><h3>' +
-                    '<a href="view-quiz.jsp' +
-                    '?token=' + getUserTokenFromUrl() +
-                    '&projectId=' + projectId +
-                    '&quizId=' + encodeURIComponent(data[quiz].question) + '"</a>' +
-                    data[quiz].question + '</h3></td>';
-                table.appendChild(trQuestion);
-            }
-        },
-        error: function (a,b) {
-            alert('Fehler ' + b);
-        }
-    });
-
-    $('#newQuiz').on('click', function () {
-        location.href = "create-quiz.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim();
-    });
-});
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/assess-work.js b/gemeinsamforschen/src/main/webapp/assessment/js/assess-work.js
index ed6e28db..1346e7bc 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/assess-work.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/assess-work.js
@@ -15,10 +15,10 @@ $(document).ready(function () {
 
 
 function buildTablesForPeers() {
-    let studentId = $('#user').html().trim();
-    let projectId = $('#projectId').html().trim();
+    let userName = $('#user').html().trim();
+    let projectName = $('#projectName').html().trim();
     $.ajax({
-            url: '../rest/group/project/' + projectId + '/student/' + studentId,
+            url: '../rest/group/project/' + projectName + '/student/' + userName,
             type: 'GET',
             headers: {
                 "Content-Type": "text/javascript",
@@ -162,9 +162,9 @@ function assessPeer() {
             }
         }
     }
-    let projectId = $('#projectId').html().trim();
+    let projectName = $('#projectName').html().trim();
     $.ajax({
-        url: '../rest/assessments/peerRating/project/' + projectId,
+        url: '../rest/assessments/peerRating/project/' + projectName,
         type: 'POST',
         headers: {
             "Content-Type": "application/json",
@@ -172,7 +172,7 @@ function assessPeer() {
         },
         data: JSON.stringify(dataP),
         success: function () {
-            location.href = "take-quiz.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+            location.href = "take-quiz.jsp";
         },
         error: function (a, b, c) {
 
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/assessmentCalculator.js b/gemeinsamforschen/src/main/webapp/assessment/js/assessmentCalculator.js
index 548859e3..80294fd8 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/assessmentCalculator.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/assessmentCalculator.js
@@ -6,7 +6,7 @@ $(document).ready(function () {     //todo: paths should be relative
             success: function (data) {
                 alert("here is the TotalPerformance: " + data);
 
-                location.href="../pages/project-student.jsp?token="+getUserEmail();
+                location.href="../pages/project-student.jsp";
             },
             error: function (a, b, c) {
                 alert('some error' + a);
@@ -16,9 +16,9 @@ $(document).ready(function () {     //todo: paths should be relative
     $("#calculateNow").on("click", function () {
         var dataP = [
             {
-                "studentIdentifier": {
-                    "projectId": "projekt",
-                    "studentId": "student"
+                "userNameentifier": {
+                    "projectName": "projekt",
+                    "userName": "student"
                 },
                 "quizAnswer": [
                     1,
@@ -38,9 +38,9 @@ $(document).ready(function () {     //todo: paths should be relative
                 }
             },
             {
-                "studentIdentifier": {
-                    "projectId": "projekt",
-                    "studentId": "student"
+                "userNameentifier": {
+                    "projectName": "projekt",
+                    "userName": "student"
                 },
                 "quizAnswer": [
                     1,
@@ -70,8 +70,8 @@ $(document).ready(function () {     //todo: paths should be relative
             },
             data: JSON.stringify(dataP),
             success: function (response) {
-                alert(response[0].studentIdentifier.studentId + " got " +response[0].grade*100+"% /n"+
-                    response[1].studentIdentifier.studentId + " got " +response[1].grade*100+"% /n");
+                alert(response[0].userNameentifier.userName + " got " +response[0].grade*100+"% /n"+
+                    response[1].userNameentifier.userName + " got " +response[1].grade*100+"% /n");
             },
             error: function (a) {
                 alert('some error' + a);
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js b/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js
index dbc772d8..7386f0b2 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js
@@ -42,12 +42,12 @@ $(document).ready(function () {
             correctAnswers: correctAnswers,
             incorrectAnswers: incorrectAnswers
         };
-        let studentIdentifier = {
-            studentId: $('#user').html().trim(),
-            projectId: $('#projectId').html().trim()
+        let userNameentifier = {
+            userName: $('#user').html().trim(),
+            projectName: $('#projectName').html().trim()
         };
         let data = JSON.stringify({
-            studentIdentifier: studentIdentifier,
+            userNameentifier: userNameentifier,
             quiz: quiz
         });
         $.ajax({
@@ -60,10 +60,10 @@ $(document).ready(function () {
             type: 'POST',
             success: function (response) {
                 if (response === "student") {
-                    location.href = "Quiz.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+                    location.href = "Quiz.jsp";
                 }
                 if (response === "docent") {
-                    location.href = "Quiz-docent.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+                    location.href = "Quiz-docent.jsp";
                 }
 
             },
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js.orig b/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js.orig
deleted file mode 100644
index 42c03723..00000000
--- a/gemeinsamforschen/src/main/webapp/assessment/js/create-quiz.js.orig
+++ /dev/null
@@ -1,83 +0,0 @@
-$(document).ready(function () {
-    $('#addCorrectAnswer').on('click', function () {
-        let divCorrectAnswer = document.getElementById('correctAnswers');
-        let i = divCorrectAnswer.children.length;
-        let inputCorrectAnswer = document.createElement('INPUT');
-        inputCorrectAnswer.id = 'correctAnswer' + i;
-        divCorrectAnswer.appendChild(inputCorrectAnswer);
-    });
-
-    $('#addIncorrectAnswer').on('click', function () {
-        let divIncorrectAnswer = document.getElementById('incorrectAnswers');
-        let i = divIncorrectAnswer.children.length;
-        let inputIncorrectAnswer = document.createElement('INPUT');
-        inputIncorrectAnswer.id = 'incorrectAnswer' + i;
-        divIncorrectAnswer.appendChild(inputIncorrectAnswer);
-    });
-
-    $('#deleteCorrectAnswer').on('click', function () {
-        let divCorrectAnswer = document.getElementById('correctAnswers');
-        divCorrectAnswer.removeChild(divCorrectAnswer.lastChild);
-    });
-
-    $('#deleteIncorrectAnswer').on('click', function () {
-        let divIncorrectAnswer = document.getElementById('incorrectAnswers');
-        divIncorrectAnswer.removeChild(divIncorrectAnswer.lastChild);
-    });
-
-    $("#save").on('click', function () {
-        let correctAnswers = [];
-        let incorrectAnswers = [];
-        let shuttleList = document.getElementById('correctAnswers');
-        for (var i = 0; i < shuttleList.children.length; i++) {
-            correctAnswers.push(shuttleList.children[i].value.trim())
-        }
-        shuttleList = document.getElementById('incorrectAnswers');
-        for (i = 0; i < shuttleList.children.length; i++) {
-            incorrectAnswers.push(shuttleList.children[i].value.trim())
-        }
-        let quiz = {
-            question: $('#question').val().trim(),
-            type: 'mc',
-            correctAnswers: correctAnswers,
-            incorrectAnswers: incorrectAnswers
-        };
-        let studentIdentifier = {
-            studentId: $('#user').html().trim(),
-            projectId: $('#projectId').html().trim()
-        };
-        let data = JSON.stringify({
-            studentIdentifier: studentIdentifier,
-            quiz: quiz
-        });
-        $.ajax({
-            data: data,
-            url: '../rest/assessments/quiz',
-            headers: {
-                "Content-Type": "application/json",
-                "Cache-Control": "no-cache"
-            },
-            type: 'POST',
-<<<<<<< HEAD
-            success: function (response) {
-                if (response === "student") {
-                    location.href = "Quiz.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim();
-                }
-                if (response === "docent") {
-                    location.href = "Quiz-docent.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim();
-                }
-
-            },
-            error: function (a) {
-
-=======
-            success: function () {
-                location.href = "quiz.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim();
-            },
-            error: function (a) {
-
->>>>>>> origin/development_master
-            }
-        });
-    });
-});
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/rateContribution.js b/gemeinsamforschen/src/main/webapp/assessment/js/rateContribution.js
index 40f2e0f1..03ac4e9a 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/rateContribution.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/rateContribution.js
@@ -23,10 +23,10 @@ $(document).ready(function () {
 });
 
 function whichGroupToRate() {
-    let projectId = $('#projectId').html().trim();
-    let studentId = $('#user').html().trim();
+    let projectName = $('#projectName').html().trim();
+    let userName = $('#user').html().trim();
     $.ajax({
-        url: '../rest/assessments/groupRate/project/' + projectId + '/student/' + studentId,
+        url: '../rest/assessments/groupRate/project/' + projectName + '/student/' + userName,
         type: 'GET',
         headers: {
             "Content-Type": "application/json",
@@ -62,7 +62,7 @@ function safeContributionRating() {
         },
         data: JSON.stringify(dataP),
         success: function () {
-            location.href = "project-student.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+            location.href = "project-student.jsp";
         },
         error: function (a, b, c) {
 
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/take-quiz.js b/gemeinsamforschen/src/main/webapp/assessment/js/take-quiz.js
index 344bfe5d..8ee5d47d 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/take-quiz.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/take-quiz.js
@@ -21,9 +21,9 @@ $(document).ready(function () {
 
     $ans = 3;
 
-    let projectId = document.getElementById('projectId').innerText.trim();
+    let projectName = document.getElementById('projectName').innerText.trim();
     $.ajax({
-        url: '../rest/assessments/project/' + projectId + '/quiz/',
+        url: '../rest/assessments/project/' + projectName + '/quiz/',
         type: 'GET',
         success: function (data) {
             let table = document.getElementById('tableQuiz');
@@ -99,10 +99,10 @@ function safeQuizAnswers() {
             dataP[question] = answerList;
         }
     }
-    let projectId = $('#projectId').html().trim();
-    let studentId = $('#user').html().trim();
+    let projectName = $('#projectName').html().trim();
+    let userName = $('#user').html().trim();
     $.ajax({
-        url: '../rest/assessments/quizAnswer/projectId/' + projectId + '/studentId/' + studentId,
+        url: '../rest/assessments/quizAnswer/projectName/' + projectName + '/userName/' + userName,
         type: 'POST',
         headers: {
             "Content-Type": "application/json",
@@ -110,7 +110,7 @@ function safeQuizAnswers() {
         },
         data: JSON.stringify(dataP),
         success: function () {
-            location.href = "rate-contribution.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+            location.href = "rate-contribution.jsp";
         },
         error: function (a, b, c) {
 
diff --git a/gemeinsamforschen/src/main/webapp/assessment/js/view-quiz.js b/gemeinsamforschen/src/main/webapp/assessment/js/view-quiz.js
index 3d0fe721..0c75c004 100644
--- a/gemeinsamforschen/src/main/webapp/assessment/js/view-quiz.js
+++ b/gemeinsamforschen/src/main/webapp/assessment/js/view-quiz.js
@@ -35,9 +35,9 @@ $(document).ready(function () {
     }
     let quizId = encodeURIComponent($_GET['quizId']);
     let author = $('#user').html().trim();
-    let projectId = document.getElementById('projectId').innerText.trim();
+    let projectName = document.getElementById('projectName').innerText.trim();
     $.ajax({
-        url: '../rest/assessments/project/' + projectId + '/quiz/' + quizId + '/author/' + author,
+        url: '../rest/assessments/project/' + projectName + '/quiz/' + quizId + '/author/' + author,
         type: 'GET',
         success: function (data) {
             let table = document.getElementById('tableQuiz');
@@ -67,7 +67,7 @@ $(document).ready(function () {
             url: '../rest/assessments/quiz/' + encodeURIComponent(quizId),
             type: 'POST',
             success: function () {
-                document.location.href = "quiz.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim();
+                document.location.href = "quiz.jsp";
             },
             error: function (a) {
                 alert(a)
diff --git a/gemeinsamforschen/src/main/webapp/core/footer.js b/gemeinsamforschen/src/main/webapp/core/footer.js
index 923c00fd..71899bca 100644
--- a/gemeinsamforschen/src/main/webapp/core/footer.js
+++ b/gemeinsamforschen/src/main/webapp/core/footer.js
@@ -1,6 +1,6 @@
 $(document).ready(function () {
     $('#btnUnstructuredUpload').click(function () {
-        location.href = "annotation/upload-unstructured-annotation.jsp?token=" + getUserEmail() + "&projectId=" + getQueryVariable("projectId");
+        location.href = "annotation/upload-unstructured-annotation.jsp";
     });
 
 });
diff --git a/gemeinsamforschen/src/main/webapp/core/overview-docent.js b/gemeinsamforschen/src/main/webapp/core/overview-docent.js
index a2274f9f..1b9529f8 100644
--- a/gemeinsamforschen/src/main/webapp/core/overview-docent.js
+++ b/gemeinsamforschen/src/main/webapp/core/overview-docent.js
@@ -1,12 +1,12 @@
 $(document).ready(function(){
     $('#project1Link').on('click', function(){
-        location.href = "project-docent.jsp?token=" + getUserEmail() + '&projectId=' + 'gemeinsamForschen';
+        location.href = "project-docent.jsp" + getUserEmail() + '&projectName=' + 'gemeinsamForschen';
     });
     $('#project2Link').on('click', function(){
-        location.href = "project-docent.jsp?token=" + getUserEmail() + '&projectId=' + 'Kaleo';
+        location.href = "project-docent.jsp" + getUserEmail() + '&projectName=' + 'Kaleo';
     });
     $('#createProject').on('click', function(){
-        location.href="./management/create-project.jsp?token="+getUserEmail();
+        location.href="./management/create-project.jsp";
     });
 
 });
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/core/overview-student.js b/gemeinsamforschen/src/main/webapp/core/overview-student.js
index 85f6096f..f6922ebd 100644
--- a/gemeinsamforschen/src/main/webapp/core/overview-student.js
+++ b/gemeinsamforschen/src/main/webapp/core/overview-student.js
@@ -1,21 +1,21 @@
 $(document).ready(function(){
-    let studentId = $('#userEmail').html().trim();
-    getProjects(studentId);
+    let userName = $('#userEmail').html().trim();
+    getProjects(userName);
     $('#enrollProject').on('click', function(){
-        location.href="management/join-project.jsp?token="+getUserEmail();
+        location.href="management/join-project.jsp";
     });
 });
 
-function updateStatus(projectId){
+function updateStatus(projectName){
     $.ajax({
-        url: 'rest/phases/projects/'+projectId,
+        url: 'rest/phases/projects/'+projectName,
         headers: {
             "Content-Type": "application/json",
             "Cache-Control": "no-cache"
         },
         type: 'GET',
         success: function (response) {
-            let statusField = $('#status'+projectId);
+            let statusField = $('#status'+projectName);
             switch (response){
                 case "CourseCreation":
                     statusField.html("Der Kurs wurde gerade angelegt. Sie können sich nun anmelden.");
@@ -33,7 +33,7 @@ function updateStatus(projectId){
                     statusField.html("Nehmen Sie die Bewertungen vor.");
                     break;
                 case "Projectfinished":
-                    getGrade(projectId);
+                    getGrade(projectName);
                     break;
                 default:
                     break;
@@ -46,26 +46,26 @@ function updateStatus(projectId){
     });
 }
 
-function getGrade(projectId){
-    let studentId = $('#userEmail').html().trim();
+function getGrade(projectName){
+    let userName = $('#userEmail').html().trim();
     $.ajax({
-        url: 'rest/assessments/get/project/'+projectId+'/student/'+studentId,
+        url: 'rest/assessments/get/project/'+projectName+'/student/'+userName,
         headers: {
             "Content-Type": "application/json",
             "Cache-Control": "no-cache"
         },
         type: 'GET',
         success: function (response) {
-            $('#status'+projectId).html("Sie erreichten "+response+"%");
+            $('#status'+projectName).html("Sie erreichten "+response+"%");
         },
         error: function(a){
         }
     });
 }
 
-function getProjects(studentId){
+function getProjects(userName){
     $.ajax({
-        url: 'rest/project/all/student/' + studentId,
+        url: 'rest/project/all/student/' + userName,
         headers: {
             "Content-Type": "text/plain",
             "Cache-Control": "no-cache"
diff --git a/gemeinsamforschen/src/main/webapp/core/project-student.js b/gemeinsamforschen/src/main/webapp/core/project-student.js
index 39207f95..3eb7b88c 100644
--- a/gemeinsamforschen/src/main/webapp/core/project-student.js
+++ b/gemeinsamforschen/src/main/webapp/core/project-student.js
@@ -1,6 +1,6 @@
 $(document).ready(function () {
     // fetch all submission part project representations from database
-    getSubmissionPartsByProjectId(getQueryVariable("projectId"), function (response) {
+    getSubmissionPartsByProjectId(getQueryVariable("projectName"), function (response) {
 
         // iterate over response and display each element
         for (let i = 0; i < response.length; i++) {
@@ -11,8 +11,8 @@ $(document).ready(function () {
         $('.annotationview').click(function () {
             let fullSubmissionId = $(this).closest("li").data("fullSubmissionId");
             let category = $(this).closest("li").data("category");
-            location.href = "annotation/annotation-document.jsp?token=" + getUserEmail() +
-                "&projectId=" + getQueryVariable("projectId") +
+            location.href = "annotation/annotation-document.jsp" + getUserEmail() +
+                "&projectName=" + getQueryVariable("projectName") +
                 "&fullSubmissionId=" + fullSubmissionId +
                 "&category=" + category;
         });
@@ -30,18 +30,18 @@ $(document).ready(function () {
     });
     */
     $('.givefeedback').click(function () {
-        location.href = "feedback/give-feedback.jsp?token=" + getUserEmail();
+        location.href = "feedback/give-feedback.jsp" + getUserEmail();
     });
     $('.viewfeedback').click(function () {
-        location.href = "feedback/view-feedback.jsp?token=" + getUserEmail();
+        location.href = "feedback/view-feedback.jsp" + getUserEmail();
     });
 
     $('.annotationview').click(function () {
-        location.href = "annotation/annotation-document.jsp?token=" + getUserEmail();
+        location.href = "annotation/annotation-document.jsp" + getUserEmail();
     });
 
     $('.viewprojectstudent').click(function () {
-        location.href = "project-student.jsp?token=" + getUserEmail();
+        location.href = "project-student.jsp" + getUserEmail();
     })
 });
 
@@ -84,12 +84,12 @@ function displayEmptyView() {
 /**
  * GET: Get all representations of a submission part for a given project id
  *
- * @param projectId The id of the project
+ * @param projectName The id of the project
  * @param responseHandler The response handler
  * @param errorHandler The error handler
  */
-function getSubmissionPartsByProjectId(projectId, responseHandler, errorHandler) {
-    let url = "rest/submissions/project/" + projectId;
+function getSubmissionPartsByProjectId(projectName, responseHandler, errorHandler) {
+    let url = "rest/submissions/project/" + projectName;
     $.ajax({
         url: url,
         type: "GET",
diff --git a/gemeinsamforschen/src/main/webapp/core/showProjects.js b/gemeinsamforschen/src/main/webapp/core/showProjects.js
index 6fdf9798..9ff04089 100644
--- a/gemeinsamforschen/src/main/webapp/core/showProjects.js
+++ b/gemeinsamforschen/src/main/webapp/core/showProjects.js
@@ -35,7 +35,7 @@ function seeProject(projectName) {
                     $("#projectIsMissing").show();
                 } else {
                     if (response !== "wrong password") {            //if response !== project missing and not wrong password, its the projectToken
-                        location.href="preferences.php?token="+getUserEmail()+"&projectToken="+response;
+                        location.href="preferences.php"+"&projectToken="+response;
                     } else {
                         $("#projectIsMissing").hide();
                         $('#projectWrongPassword').show();
diff --git a/gemeinsamforschen/src/main/webapp/core/utility.js b/gemeinsamforschen/src/main/webapp/core/utility.js
index eaf9732d..26e36b2b 100644
--- a/gemeinsamforschen/src/main/webapp/core/utility.js
+++ b/gemeinsamforschen/src/main/webapp/core/utility.js
@@ -1,5 +1,5 @@
 $(document).ready(function () {
-    $('#headLineProject').html($('#projectId').html());
+    $('#headLineProject').html($('#projectName').html());
     $('#logout').click(function () {
         //todo: delete cookies / reset session
         let target = "index.jsp";
@@ -25,10 +25,10 @@ function goBack() {
 }
 
 function checkAssessementPhase() {
-    let studentId = $('#user').html().trim();
-    let projectId = $('#projectId').html().trim();
+    let userName = $('#user').html().trim();
+    let projectName = $('#projectName').html().trim();
     $.ajax({
-        url: 'rest/assessments/whatToRate/project/' + projectId + '/student/' + studentId,
+        url: 'rest/assessments/whatToRate/project/' + projectName + '/student/' + userName,
         type: 'GET',
         headers: {
             "Content-Type": "application/json",
@@ -37,19 +37,19 @@ function checkAssessementPhase() {
         success: function (phase) {
             switch (phase) {
                 case "workRating": {
-                    changeLocationTo("finalAssessment.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim());
+                    changeLocationTo("finalAssessment.jsp");
                     break;
                 }
                 case "quiz": {
-                    changeLocationTo("take-quiz.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim());
+                    changeLocationTo("take-quiz.jsp");
                     break;
                 }
                 case "contributionRating": {
-                    changeLocationTo("rate-contribution.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim());
+                    changeLocationTo("rate-contribution.jsp");
                     break;
                 }
                 case "done": {
-                    changeLocationTo("project-student.jsp?token=" + getUserEmail() + "&projectId=" + $('#projectId').html().trim());
+                    changeLocationTo("project-student.jsp");
                     break;
                 }
             }
diff --git a/gemeinsamforschen/src/main/webapp/core/utility.js.orig b/gemeinsamforschen/src/main/webapp/core/utility.js.orig
deleted file mode 100644
index 3ef0b238..00000000
--- a/gemeinsamforschen/src/main/webapp/core/utility.js.orig
+++ /dev/null
@@ -1,113 +0,0 @@
-$(document).ready(function () {
-    $('#headLineProject').html($('#projectId').html());
-    $('#logout').click(function () {
-        //todo: delete cookies / reset session
-        let target = "index.jsp";
-        let link = changeLocationTo(target);
-        document.location = link;
-    });
-    $('#assessment').click(function () {
-        checkAssessementPhase();
-    });
-    $('#footerBack').click(function () {
-        goBack();
-    });
-});
-
-function changeLocationTo(target) {
-    let level = $('#hierarchyLevel').html().trim();
-    return calculateHierachy(level) + target;;
-}
-
-
-function goBack() {
-    window.history.back();
-}
-
-function checkAssessementPhase() {
-    let studentId = $('#user').html().trim();
-    let projectId = $('#projectId').html().trim();
-    $.ajax({
-<<<<<<< HEAD
-        url: 'rest/assessments/whatToRate/project/'+projectId+'/student/'+studentId,
-=======
-        url: '../rest/assessments/whatToRate/project/' + projectId + '/student/' + studentId,
->>>>>>> origin/development_master
-        type: 'GET',
-        headers: {
-            "Content-Type": "application/json",
-            "Cache-Control": "no-cache"
-        },
-        success: function (phase) {
-            switch (phase) {
-                case "workRating": {
-                    changeLocationTo("finalAssessment.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim());
-                    break;
-                }
-                case "quiz": {
-                    changeLocationTo("take-quiz.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim());
-                    break;
-                }
-                case "contributionRating": {
-                    changeLocationTo("rate-contribution.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim());
-                    break;
-                }
-                case "done": {
-                    changeLocationTo("project-student.jsp?token=" + getUserTokenFromUrl() + "&projectId=" + $('#projectId').html().trim());
-                    break;
-                }
-            }
-        },
-        error: function (a) {
-        }
-    });
-}
-
-function getUserTokenFromUrl() {
-    let parts = window.location.search.substr(1).split("&");
-    let $_GET = {};
-    for (let i = 0; i < parts.length; i++) {
-        let temp = parts[i].split("=");
-        $_GET[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]);
-    }
-    return $_GET['token'];
-
-}
-
-
-function getProjectTokenFromUrl() {
-    let parts = window.location.search.substr(1).split("&");
-    let $_GET = {};
-    for (let i = 0; i < parts.length; i++) {
-        let temp = parts[i].split("=");
-        $_GET[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]);
-    }
-    return $_GET['projectToken'];
-}
-
-function getQueryVariable(variable) {
-    let query = window.location.search.substring(1);
-    let vars = query.split("&");
-    for (let i = 0; i < vars.length; i++) {
-        let pair = vars[i].split("=");
-        if (pair[0] === variable) {
-            return pair[1];
-        }
-    }
-    return (false);
-}
-
-
-function calculateHierachy(level) {
-
-    if (level == 0) {
-
-        return "";
-
-    } else {
-
-        return calculateHierachy(level - 1) + "../";
-
-    }
-
-}
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/course/js/createProject.js b/gemeinsamforschen/src/main/webapp/course/js/createProject.js
index 2f6d9b27..02c3fae2 100644
--- a/gemeinsamforschen/src/main/webapp/course/js/createProject.js
+++ b/gemeinsamforschen/src/main/webapp/course/js/createProject.js
@@ -1,10 +1,10 @@
 $(document).ready(function () {
     $('#submit').on('click', function () {
-        location.href = "specificRequirement.jsp?token=" + getUserEmail();
+        location.href = "specificRequirement.jsp" + getUserEmail();
     });
-    let projectId = $('#projectId').html().trim();
+    let projectName = $('#projectName').html().trim();
     $.ajax({
-        url: '../rest/phases/projects/' + projectId,
+        url: '../rest/phases/projects/' + projectName,
         headers: {
             "Content-Type": "application/json",
             "Cache-Control": "no-cache"
diff --git a/gemeinsamforschen/src/main/webapp/course/js/enrollProject.js b/gemeinsamforschen/src/main/webapp/course/js/enrollProject.js
index 827e6651..16eb87e6 100644
--- a/gemeinsamforschen/src/main/webapp/course/js/enrollProject.js
+++ b/gemeinsamforschen/src/main/webapp/course/js/enrollProject.js
@@ -1,5 +1,5 @@
 $(document).ready(function () {
     $('#submit').on('click',function(){
-        document.location="specificSkills.jsp?token="+getUserEmail();
+        document.location="specificSkills.jsp";
     });
 });
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/course/js/showProjects.js b/gemeinsamforschen/src/main/webapp/course/js/showProjects.js
index b84fc3e1..39d46cd0 100644
--- a/gemeinsamforschen/src/main/webapp/course/js/showProjects.js
+++ b/gemeinsamforschen/src/main/webapp/course/js/showProjects.js
@@ -35,7 +35,7 @@ function seeProject(projectName) {
                     $("#projectIsMissing").show();
                 } else {
                     if (response !== "wrong password") {            //if response !== project missing and not wrong password, its the projectToken
-                        location.href = "enter-preferences.jsp?token=" + getUserEmail() + "&projectToken=" + response;
+                        location.href = "enter-preferences.jsp" + getUserEmail() + "&projectToken=" + response;
                     } else {
                         $("#projectIsMissing").hide();
                         $('#projectWrongPassword').show();
diff --git a/gemeinsamforschen/src/main/webapp/course/js/specificRequirement.js b/gemeinsamforschen/src/main/webapp/course/js/specificRequirement.js
index b7f5cc7a..ade5f968 100644
--- a/gemeinsamforschen/src/main/webapp/course/js/specificRequirement.js
+++ b/gemeinsamforschen/src/main/webapp/course/js/specificRequirement.js
@@ -1,5 +1,5 @@
 $(document).ready(function(){
     $('#submit').on('click', function(){
-        location.href="project-docent.jsp?token="+getUserEmail();
+        location.href="project-docent.jsp";
     });
 });
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/course/js/specificSkills.js b/gemeinsamforschen/src/main/webapp/course/js/specificSkills.js
index c51d1fd9..92fb4bbc 100644
--- a/gemeinsamforschen/src/main/webapp/course/js/specificSkills.js
+++ b/gemeinsamforschen/src/main/webapp/course/js/specificSkills.js
@@ -1,5 +1,5 @@
 $(document).ready(function () {
     $('#submit').on('click',function(){
-        document.location="project-docent.jsp?token="+getUserEmail();
+        document.location="project-docent.jsp";
     });
 });
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/feedback/js/givepeerfeedback.js b/gemeinsamforschen/src/main/webapp/feedback/js/givepeerfeedback.js
index 947720ab..2444caf9 100644
--- a/gemeinsamforschen/src/main/webapp/feedback/js/givepeerfeedback.js
+++ b/gemeinsamforschen/src/main/webapp/feedback/js/givepeerfeedback.js
@@ -1,5 +1,5 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
diff --git a/gemeinsamforschen/src/main/webapp/feedback/js/peerfeedback.js b/gemeinsamforschen/src/main/webapp/feedback/js/peerfeedback.js
index 02737ed2..a12ccc7c 100644
--- a/gemeinsamforschen/src/main/webapp/feedback/js/peerfeedback.js
+++ b/gemeinsamforschen/src/main/webapp/feedback/js/peerfeedback.js
@@ -20,7 +20,7 @@
 }*/
 
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 function go() {
     var a = document.getElementById("editor").valueOf().toString();
@@ -49,7 +49,7 @@ $(document).ready(function () {
         });*/
 
         //console.log(data);
-        location.href = "give-feedback.jsp?token=" + getUserEmail();
+        location.href = "give-feedback.jsp" + getUserEmail();
         alert("Feedback wurde gesendet!");
     });
 })
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/feedback/view-feedback.jsp b/gemeinsamforschen/src/main/webapp/feedback/view-feedback.jsp
index 7e5df843..ca68d4c5 100644
--- a/gemeinsamforschen/src/main/webapp/feedback/view-feedback.jsp
+++ b/gemeinsamforschen/src/main/webapp/feedback/view-feedback.jsp
@@ -20,7 +20,7 @@
     <div class="page-content-wrapper">
         <headLine:headLine/>
         <div class="container-fluid">
-            <h1 id="projectId"> PeerFeedback</h1>
+            <h1 id="projectName"> PeerFeedback</h1>
         </div>
         <div align="right" class="dropdown">
             <button style= "position: absolute; right: 50px;" class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">
diff --git a/gemeinsamforschen/src/main/webapp/groupfinding/js/create-preferences.js b/gemeinsamforschen/src/main/webapp/groupfinding/js/create-preferences.js
index 2d25ea78..181e8cc3 100644
--- a/gemeinsamforschen/src/main/webapp/groupfinding/js/create-preferences.js
+++ b/gemeinsamforschen/src/main/webapp/groupfinding/js/create-preferences.js
@@ -119,10 +119,10 @@ function takesPartInProject(context) {
     };
 
 
-    var userId = context.user.email;
-    var projectId = context.project.id;
+    var userEmail = context.user.email;
+    var projectName = context.project.id;
     var dataString = JSON.stringify(data);                     //to send correctly, data needs to be stringified
-    var url = compbaseUrl + "/api2/user/" + userId + "/projects/" + projectId + "/preferences";
+    var url = compbaseUrl + "/api2/user/" + userEmail + "/projects/" + projectName + "/preferences";
     $.ajax({
         url: url,
         type: 'PUT',
@@ -133,7 +133,7 @@ function takesPartInProject(context) {
             console.log(response);
             document.getElementById('loader').className = "loader-inactive";
             document.getElementById('wrapper').className = "wrapper";
-            location.href = "../overview-student.jsp?token=" + getUserEmail();
+            location.href = "../overview-student.jsp" + getUserEmail();
         },
         error: function (a, b, c) {
             console.log(a);
diff --git a/gemeinsamforschen/src/main/webapp/journal/create-journal.jsp b/gemeinsamforschen/src/main/webapp/journal/create-journal.jsp
index b0ef3c22..a9855f39 100644
--- a/gemeinsamforschen/src/main/webapp/journal/create-journal.jsp
+++ b/gemeinsamforschen/src/main/webapp/journal/create-journal.jsp
@@ -19,7 +19,7 @@
 
     <div class="page-content-wrapper">
         <div class="container-fluid">
-            <h1 id="projectId">project1
+            <h1 id="projectName">project1
                 <a href="#">
                 <span class="glyphicon glyphicon-envelope"
                       style="font-size:27px;margin-top:-17px;margin-left:600px;"></span>
diff --git a/gemeinsamforschen/src/main/webapp/journal/edit-description.jsp.orig b/gemeinsamforschen/src/main/webapp/journal/edit-description.jsp.orig
deleted file mode 100644
index 8d7feb66..00000000
--- a/gemeinsamforschen/src/main/webapp/journal/edit-description.jsp.orig
+++ /dev/null
@@ -1,75 +0,0 @@
-<%@ taglib uri="../core/gemeinsamForschen.tld" prefix="menu" %>
-<%@ taglib uri="../core/gemeinsamForschen.tld" prefix="omniDependencies" %>
-
-<!DOCTYPE html>
-<html>
-
-<head>
-<<<<<<< HEAD:gemeinsamforschen/src/main/webapp/management/edit-project.jsp
-    <omniDependencies:omniDependencies hierarchy="1"/>
-</head>
-
-<body>
-
-<h1> Projektbeschreibung bearbeiten </h1>
-=======
-
-    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/inscrybmde@1.11.3/dist/inscrybmde.min.css">
-    <script src="https://cdn.jsdelivr.net/npm/inscrybmde@1.11.3/dist/inscrybmde.min.js"></script>
-    <omniDependencies:omniDependencies hierarchy="1"/>
-    <script  src="js/edit-description.js"></script>
-
-
-</head>
-
-<body>
-<div id="wrapper">
-    <menu:menu hierarchy="1"/>
-
-    <div class="page-content-wrapper">
-        <div class="container-fluid">
-            <h1 id="projectId">project1
-                <a href="#">
-                <span class="glyphicon glyphicon-envelope"
-                      style="font-size:27px;margin-top:-17px;margin-left:600px;"></span>
-                </a>
-                <a href="#">
-                    <span class="glyphicon glyphicon-cog" style="font-size:29px;margin-left:5px;margin-top:-25px;"></span>
-                </a></h1>
-        </div>
-        <div>
-            <table>
-                <tr>
-                    <td  id="yourContent">
-                        <h1> Projektbeschreibung bearbeiten </h1>
-
-                        <form id="descriptionform" class="form-journal" method="POST"
-                              action="rest/projectdescription/saveText">
-
-                            <input type="hidden" id="student" name="student">
-                            <input type="hidden" id="project" name="project">
-
-                            <div class="description-form-container">
-
-                                <div class ="description-form-editor">
-                                    <textarea id="editor" name="text" form="descriptionform"></textarea>
-                                </div>
->>>>>>> origin/development_master:gemeinsamforschen/src/main/webapp/journal/edit-description.jsp
-
-<a
-        href="edit-assessment-settings.jsp?token=<%=request.getParameter("token")+"&projectToken="+request.getParameter("projectToken") %>" > Weiter </a>
-
-
-<<<<<<< HEAD:gemeinsamforschen/src/main/webapp/management/edit-project.jsp
-=======
-                    </td>
-                </tr>
-            </table>
-        </div>
-    </div>
-</div>
-<script src="js/editDescription.js"></script>
->>>>>>> origin/development_master:gemeinsamforschen/src/main/webapp/journal/edit-description.jsp
-</body>
-
-</html>
\ No newline at end of file
diff --git a/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp b/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp
index 5579b765..25219e4b 100644
--- a/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp
+++ b/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp
@@ -18,7 +18,7 @@
 
     <div class="page-content-wrapper">
         <div class="container-fluid">
-            <h1 id="projectId">project1
+            <h1 id="projectName">project1
                 <a href="#">
                 <span class="glyphicon glyphicon-envelope"
                       style="font-size:27px;margin-top:-17px;margin-left:600px;"></span>
diff --git a/gemeinsamforschen/src/main/webapp/journal/js/create-journal.js b/gemeinsamforschen/src/main/webapp/journal/js/create-journal.js
index 18fe4660..1b68406c 100644
--- a/gemeinsamforschen/src/main/webapp/journal/js/create-journal.js
+++ b/gemeinsamforschen/src/main/webapp/journal/js/create-journal.js
@@ -1,5 +1,5 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 
 $(document).ready(function () {
@@ -7,7 +7,7 @@ $(document).ready(function () {
     $('#project').val(project);
 
     $('#backLink').on('click', function () {
-        location.href = "eportfolio.jsp?token=" + student + "&projectId=" + project;
+        location.href = "eportfolio.jsp";
     });
 
     $.ajax({
diff --git a/gemeinsamforschen/src/main/webapp/journal/js/edit-description.js b/gemeinsamforschen/src/main/webapp/journal/js/edit-description.js
index c664f15f..e7682c75 100644
--- a/gemeinsamforschen/src/main/webapp/journal/js/edit-description.js
+++ b/gemeinsamforschen/src/main/webapp/journal/js/edit-description.js
@@ -1,5 +1,5 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 
 $(document).ready(function() {
@@ -7,7 +7,7 @@ $(document).ready(function() {
     $('#project').val(project);
 
     $('#backLink').on('click', function(){
-        location.href = "eportfolio.jsp?token=" + student + "&projectId=" + project;
+        location.href = "eportfolio.jsp";
     });
 
     $.ajax({
diff --git a/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js b/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js
index de0f6182..0ba3c9f2 100644
--- a/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js
+++ b/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js
@@ -1,5 +1,5 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 var description = 0;
 
 $(document).ready(function () {
@@ -38,11 +38,11 @@ $(document).ready(function () {
     });
 
     $('#editDescriptionLink').on('click', function () {
-        location.href = "edit-description.jsp?project=" + project + "&token=" + student + "&projectId=" + project;
+        location.href = "edit-description.jsp";
     });
 
     $('#createJournalLink').on('click', function () {
-        location.href = "create-journal.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-journal.jsp";
     });
 
 });
@@ -61,7 +61,7 @@ function timestampToDateString(timestamp) {
 
 function filterJournals() {
     var filter = $('#journalfilter option:selected').val();
-    project = getQueryVariable("projectId");
+    project = getQueryVariable("projectName");
     $('.journal').empty();
 
     $.ajax({
@@ -85,17 +85,17 @@ function loadJournals(data) {
             '</div>' +
             '<div class="journal-name">' +
             // TODO id to name
-            data[journal].studentIdentifier.studentId +
+            data[journal].userNameentifier.userName +
             '</div>' +
             '<div class="journal-category">' +
             data[journal].category +
             '</div>' +
             '<div class="journal-edit" align="right">';
 
-        //TODO userToken...
-        if (data[journal].studentIdentifier.studentId == student && data[journal].open) {
+        //TODO userEmail...
+        if (data[journal].userNameentifier.userName == student && data[journal].open) {
             journalString = journalString +
-                '<a class="btn btn-default btn-sm" href="create-journal.jsp?token=' + student + '&projectId=' + project + '&journal=' + data[journal].id + '"><i class="fa fa-pencil"></i> Bearbeiten</a>' +
+                '<a class="btn btn-default btn-sm" href="create-journal.jsp&journal=' + data[journal].id + '"><i class="fa fa-pencil"></i> Bearbeiten</a>' +
                 '<a class="open-CloseJournalDialog btn btn-default btn-sm" data-toggle="modal" data-id ='
                 + data[journal].id +
                 ' data-target ="#closeJournalModal" > <i class="fa fa-check-square" aria-hidden = "true" ></i> Abschlie&szlig;en</a> '
diff --git a/gemeinsamforschen/src/main/webapp/management/edit-assessment-settings.jsp b/gemeinsamforschen/src/main/webapp/management/edit-assessment-settings.jsp
index d00323eb..36d22ccc 100644
--- a/gemeinsamforschen/src/main/webapp/management/edit-assessment-settings.jsp
+++ b/gemeinsamforschen/src/main/webapp/management/edit-assessment-settings.jsp
@@ -13,7 +13,7 @@
 <h1> Bewertungsverfahren einstellen </h1>
 
 <a
-        href="edit-group-settings.jsp?token=<%=request.getParameter("token")+"&projectToken="+request.getParameter("projectToken") %>">
+        href="edit-group-settings.jsp">
     Weiter </a>
 
 
diff --git a/gemeinsamforschen/src/main/webapp/management/edit-group-settings.jsp b/gemeinsamforschen/src/main/webapp/management/edit-group-settings.jsp
index 848e2ce8..9d633e30 100644
--- a/gemeinsamforschen/src/main/webapp/management/edit-group-settings.jsp
+++ b/gemeinsamforschen/src/main/webapp/management/edit-group-settings.jsp
@@ -24,10 +24,6 @@
 <label for="bp">Basierend auf Präferenzen</label>
 <button class="btn btn-primary" style="margin-left:129px;" id="selectGFM">wählen</button>
 
-<%--
-<a href="../groupfinding/create-create-groups-learninggoal.jsp?token=<%=request.getParameter("token")+"&projectToken="+request.getParameter("projectToken") %>" > Weiter </a>
---%>
-
 
 </body>
 
diff --git a/gemeinsamforschen/src/main/webapp/management/js/changePhase.js b/gemeinsamforschen/src/main/webapp/management/js/changePhase.js
index cff36267..cb48e511 100644
--- a/gemeinsamforschen/src/main/webapp/management/js/changePhase.js
+++ b/gemeinsamforschen/src/main/webapp/management/js/changePhase.js
@@ -1,7 +1,7 @@
 $(document).ready(function () {
-    let projectId = $('#projectId').html().trim();
+    let projectName = $('#projectName').html().trim();
     $.ajax({
-        url: '../rest/phases/projects/' + projectId,
+        url: '../rest/phases/projects/' + projectName,
         headers: {
             "Content-Type": "application/json",
             "Cache-Control": "no-cache"
@@ -22,9 +22,9 @@ $(document).ready(function () {
         }
     });
     $('#changePhase').on('click', function () {
-        let projectId = $('#projectId').html().trim();
+        let projectName = $('#projectName').html().trim();
         $.ajax({
-            url: '../rest/phases/projects/'+projectId,
+            url: '../rest/phases/projects/'+projectName,
             headers: {
                 "Content-Type": "application/json",
                 "Cache-Control": "no-cache"
@@ -41,9 +41,9 @@ $(document).ready(function () {
 });
 
 function changePhase(currentPhase) {
-    let projectId = $('#projectId').html().trim();
+    let projectName = $('#projectName').html().trim();
     $.ajax({
-        url: '../rest/phases/' + currentPhase + '/projects/' + projectId,
+        url: '../rest/phases/' + currentPhase + '/projects/' + projectName,
         headers: {
             "Content-Type": "application/json",
             "Cache-Control": "no-cache"
diff --git a/gemeinsamforschen/src/main/webapp/management/js/create-project.js b/gemeinsamforschen/src/main/webapp/management/js/create-project.js
index 99724ba1..4ddcb3da 100644
--- a/gemeinsamforschen/src/main/webapp/management/js/create-project.js
+++ b/gemeinsamforschen/src/main/webapp/management/js/create-project.js
@@ -138,7 +138,7 @@ function createProjectinCompbase(projectName) {
         success: function (response) {
             console.log(response);
             // it actually worked, too
-            document.location.href = "edit-project.jsp?token="+getUserEmail()+"&projectToken="+projectToken;
+            document.location.href = "edit-project.jsp"+"&projectToken="+projectToken;
         },
         error: function (a, b, c) {
             console.log(a);
diff --git a/gemeinsamforschen/src/main/webapp/management/js/deleteProject.js b/gemeinsamforschen/src/main/webapp/management/js/deleteProject.js
index 2dd5dc97..76035892 100644
--- a/gemeinsamforschen/src/main/webapp/management/js/deleteProject.js
+++ b/gemeinsamforschen/src/main/webapp/management/js/deleteProject.js
@@ -12,7 +12,7 @@ $(document).ready(function () {
 
 function deleteProject(projectName) {
     var token = getUserEmail();
-    var url = "../database/delete-project.jsp?project=" + projectName + "&password=" + document.getElementById('projectPassword').value.trim() + "&token=" + token;
+    var url = "../database/delete-project.jsp?project=" + projectName + "&password=" + document.getElementById('projectPassword').value.trim();
     if (projectName === "") {
         return false;
     } else {
@@ -39,7 +39,7 @@ function deleteProject(projectName) {
                                 console.log(a);
                             }
                         });
-                        window.location.href = " ../pages/projects.php?token=" + getUserEmail();
+                        window.location.href = " ../pages/projects.php" + getUserEmail();
                     } else {
                         $("#projectIsMissing").hide();
                         $('#projectWrongPassword').show();
diff --git a/gemeinsamforschen/src/main/webapp/management/js/edit-group-settings.js b/gemeinsamforschen/src/main/webapp/management/js/edit-group-settings.js
index 1ac256c1..1429fe3c 100644
--- a/gemeinsamforschen/src/main/webapp/management/js/edit-group-settings.js
+++ b/gemeinsamforschen/src/main/webapp/management/js/edit-group-settings.js
@@ -23,13 +23,13 @@ $(document).ready(function () {
             data: gfm,
             success: function (a,b,c) {
                 if (gfm == "Manual") {
-                    document.location.href = "../groupfinding/create-groups-manual.jsp?token="+getUserEmail()+"&projectToken="+projectToken;
+                    document.location.href = "../groupfinding/create-groups-manual.jsp"+"&projectToken="+projectToken;
                 }
                 if (gfm == "UserProfilStrategy"){
-                    document.location.href = "../groupfinding/create-groups-preferences.jsp?token="+getUserEmail()+"&projectToken="+projectToken;
+                    document.location.href = "../groupfinding/create-groups-preferences.jsp"+"&projectToken="+projectToken;
                 }
                 else {
-                    document.location.href = "../groupfinding/create-groups-learninggoal.jsp?token="+getUserEmail()+"&projectToken="+projectToken;
+                    document.location.href = "../groupfinding/create-groups-learninggoal.jsp"+"&projectToken="+projectToken;
                 }
                 return true;
             },
diff --git a/gemeinsamforschen/src/main/webapp/management/js/join-project.js b/gemeinsamforschen/src/main/webapp/management/js/join-project.js
index 2aedc7d4..3b5edabb 100644
--- a/gemeinsamforschen/src/main/webapp/management/js/join-project.js
+++ b/gemeinsamforschen/src/main/webapp/management/js/join-project.js
@@ -37,7 +37,7 @@ function loginProject(projectName) {
                 } else {
                     if (response !== "wrong password") {            //if response !== project missing and not wrong password, its the projectToken
                         var projectToken = response;
-                        document.location.href = "../groupfinding/enter-preferences.jsp?token="+getUserEmail()+"&projectToken="+projectToken;
+                        document.location.href = "../groupfinding/enter-preferences.jsp"+"&projectToken="+projectToken;
                     } else {
                         $("#projectIsMissing").hide();
                         $('#projectWrongPassword').show();
diff --git a/gemeinsamforschen/src/main/webapp/management/js/overview.js b/gemeinsamforschen/src/main/webapp/management/js/overview.js
index 7815ec76..863218cb 100644
--- a/gemeinsamforschen/src/main/webapp/management/js/overview.js
+++ b/gemeinsamforschen/src/main/webapp/management/js/overview.js
@@ -23,7 +23,7 @@ function printProjects(projects, offset) {
             //'<a class="btn btn-default"><em class="fa fa-pencil" ></em></a>' +
             //'<button id="deleteButton' +i+ '" class="btn btn-danger fa fa-trash deleteButton"></button>' +
             content.innerHTML = '<td align="center">' +
-                '<a href="delete-project.jsp?token=' + getUserEmail() + '" class="btn btn-danger fa fa-trash"></a>' +
+                '<a href="delete-project.jsp class="btn btn-danger fa fa-trash"></a>' +
                 '</td>' +
                 '<td class="hidden-xs" href="#Div_Promo_Carousel" data-slide="next">' + projects[i] + '</td>' +
                 '<td id="projectTags' + (i + offset) + '" href="#Div_Promo_Carousel" data-slide="next"></td>';
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportBibo.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportBibo.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportBibo.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportBibo.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportConcept.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportConcept.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportConcept.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportConcept.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportDo.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportDo.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportDo.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportDo.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportEvaluation.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportEvaluation.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportEvaluation.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportEvaluation.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportMethod.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportMethod.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportMethod.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportMethod.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportOverview.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportOverview.js
index 76061330..b1542e3a 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportOverview.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportOverview.js
@@ -1,20 +1,20 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#uploader').on('click', function () {
-        //location.href="create-title.jsp?token="+getUserEmail();
+        //location.href="create-title.jsp";
         //boolean uploaded=true;
     });
     $('#backLink').on('click', function () {
-        location.href = "overview-student.jsp?token=" + student + "&projectId=" + project;
+        location.href = "overview-student.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "create-title.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-title.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportProgress.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportProgress.js
index ea147dc8..08344e5f 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportProgress.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportProgress.js
@@ -1,40 +1,40 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
 
     $('#title').on('click', function () {
-        location.href = "create-title.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-title.jsp";
         return false;
     });
     $('#recherche').on('click', function () {
-        location.href = "create-research.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-research.jsp";
         return false;
     });
     $('#bibo').on('click', function () {
-        location.href = "create-bibliography.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-bibliography.jsp";
         return false;
     });
     $('#question').on('click', function () {
-        location.href = "create-question.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-question.jsp";
         return false;
     });
     $('#concept').on('click', function () {
-        location.href = "create-concept.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-concept.jsp";
         return false;
     });
     $('#method').on('click', function () {
-        location.href = "create-method.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-method.jsp";
         return false;
     });
     $('#reportDo').on('click', function () {
-        location.href = "create-process-description.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-process-description.jsp";
         return false;
     });
     $('#evaluation').on('click', function () {
-        location.href = "create-evaluation.jsp?token=" + student + "&projectId=" + project;
+        location.href = "create-evaluation.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportQuestion.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportQuestion.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportQuestion.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportQuestion.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportRecherche.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportRecherche.js
index e7f063bf..82ee6494 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportRecherche.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportRecherche.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportTitle.js b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportTitle.js
index 8412428f..ffcd1ff8 100644
--- a/gemeinsamforschen/src/main/webapp/researchReport/js/createReportTitle.js
+++ b/gemeinsamforschen/src/main/webapp/researchReport/js/createReportTitle.js
@@ -1,16 +1,16 @@
 var student = getQueryVariable("token");
-var project = getQueryVariable("projectId");
+var project = getQueryVariable("projectName");
 
 $(document).ready(function () {
     $('#student').val(student);
     $('#project').val(project);
     $('#backLink').on('click', function () {
-        location.href = "createReportOverview.jsp?token=" + student + "&projectId=" + project;
+        location.href = "createReportOverview.jsp";
         return false;
     });
 
     $('#forwardLink').on('click', function () {
-        location.href = "researchReportResearch.jsp?token=" + student + "&projectId=" + project;
+        location.href = "researchReportResearch.jsp";
         return false;
     });
 
diff --git a/gemeinsamforschen/src/scripts/dbschema/createDummyUsersGroupsProject.sql b/gemeinsamforschen/src/scripts/dbschema/createDummyUsersGroupsProject.sql
index 35124db8..e0e2a801 100644
--- a/gemeinsamforschen/src/scripts/dbschema/createDummyUsersGroupsProject.sql
+++ b/gemeinsamforschen/src/scripts/dbschema/createDummyUsersGroupsProject.sql
@@ -30,19 +30,19 @@ INSERT INTO `users` (`name`, `password`, `email`, `token`, `rocketChatId`, `rock
 INSERT INTO  `projects` (`id`, `password`,`active`,`timecreated`,`authorEmail`,`adminpassword`,`token`,`phase`) VALUES
   ('1','123',1,current_timestamp,'Julian','123','abc','CourseCreation');
 
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test1@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test2@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test3@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test4@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test5@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test6@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test7@uni.de');
-INSERT INTO `projectuser` (`projectId`,`userId`) VALUES ('1','test8@uni.de');
-
-INSERT INTO groups (projectId, chatRoomId) VALUES ('1','1');
-INSERT INTO groups (projectId, chatRoomId) VALUES ('1','2');
-INSERT INTO groups (projectId, chatRoomId) VALUES ('1','3');
-INSERT INTO groups (projectId, chatRoomId) VALUES ('1','4');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test1@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test2@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test3@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test4@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test5@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test6@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test7@uni.de');
+INSERT INTO `projectuser` (`projectName`,`userEmail`) VALUES ('1','test8@uni.de');
+
+INSERT INTO groups (projectName, chatRoomId) VALUES ('1','1');
+INSERT INTO groups (projectName, chatRoomId) VALUES ('1','2');
+INSERT INTO groups (projectName, chatRoomId) VALUES ('1','3');
+INSERT INTO groups (projectName, chatRoomId) VALUES ('1','4');
 
 INSERT INTO groupuser (userEmail, groupId) VALUES ('test1@uni.de','1');
 INSERT INTO groupuser (userEmail, groupId) VALUES ('test2@uni.de','2');
diff --git a/gemeinsamforschen/src/scripts/dbschema/fltrail.sql b/gemeinsamforschen/src/scripts/dbschema/fltrail.sql
index f6c19b09..41e4e7fe 100644
--- a/gemeinsamforschen/src/scripts/dbschema/fltrail.sql
+++ b/gemeinsamforschen/src/scripts/dbschema/fltrail.sql
@@ -1,20 +1,9 @@
-SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
-SET AUTOCOMMIT = 0;
-START TRANSACTION;
-SET time_zone = "+00:00";
 
-/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
-/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
-/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
-/*!40101 SET NAMES utf8mb4 */;
-
-CREATE DATABASE IF NOT EXISTS `fltrail` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
-USE `fltrail`;
 
 CREATE TABLE IF NOT EXISTS `annotations` (
   `id` varchar(120) NOT NULL,
   `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
-  `userToken` varchar(120) DEFAULT NULL,
+  `userEmail` varchar(120) DEFAULT NULL,
   `targetId` varchar(120) DEFAULT NULL,
   `targetCategory` varchar(30) NOT NULL,
   `title` varchar(120) DEFAULT NULL,
@@ -25,25 +14,25 @@ CREATE TABLE IF NOT EXISTS `annotations` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `answeredquiz` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `question` varchar(400) NOT NULL,
   `correct` tinyint(4) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `assessmentmechanismselected` (
-  `projectId` varchar(100) NOT NULL,
+  `projectName` varchar(100) NOT NULL,
   `amSelected` varchar(200) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `categoriesselected` (
-  `projectId` varchar(100) NOT NULL,
+  `projectName` varchar(100) NOT NULL,
   `categorySelected` varchar(200) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `contributionrating` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `fromPeer` varchar(400) NOT NULL,
   `dossier` int(11) NOT NULL,
   `eJournal` int(11) NOT NULL,
@@ -55,24 +44,24 @@ CREATE TABLE IF NOT EXISTS `fullsubmissions` (
   `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
   `user` varchar(120) NOT NULL,
   `text` mediumtext NOT NULL,
-  `projectId` varchar(120) NOT NULL,
+  `projectName` varchar(120) NOT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `grades` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `grade` double NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `groupfindingmechanismselected` (
-  `projectId` varchar(100) NOT NULL,
+  `projectName` varchar(100) NOT NULL,
   `gfmSelected` varchar(200) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `groups` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
-  `projectId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `chatRoomId` varchar(400) NOT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
@@ -83,12 +72,12 @@ CREATE TABLE IF NOT EXISTS `groupuser` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `phasesselected` (
-  `projectId` varchar(100) NOT NULL,
+  `projectName` varchar(100) NOT NULL,
   `phaseSelected` varchar(200) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `projects` (
-  `id` varchar(100) NOT NULL,
+  `name` varchar(100) NOT NULL,
   `password` varchar(400) NOT NULL,
   `active` tinyint(1) NOT NULL,
   `timecreated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
@@ -96,19 +85,19 @@ CREATE TABLE IF NOT EXISTS `projects` (
   `adminPassword` varchar(400) NOT NULL,
   `token` varchar(400) NOT NULL,
   `phase` varchar(400) NOT NULL,
-  UNIQUE KEY `id` (`id`)
+  UNIQUE KEY `name` (`name`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `projectuser` (
-  `projectId` varchar(100) NOT NULL,
-  `userId` varchar(100) NOT NULL,
-  UNIQUE KEY `projectId_2` (`projectId`,`userId`),
-  KEY `projectId` (`projectId`,`userId`)
+  `projectName` varchar(100) NOT NULL,
+  `userEmail` varchar(100) NOT NULL,
+  UNIQUE KEY `projectName_2` (`projectName`,`userEmail`),
+  KEY `projectName` (`projectName`,`userEmail`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `quiz` (
   `author` varchar(400) NOT NULL,
-  `projectId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `question` varchar(400) NOT NULL,
   `mcType` varchar(400) NOT NULL,
   `answer` varchar(400) NOT NULL,
@@ -125,20 +114,20 @@ CREATE TABLE IF NOT EXISTS `submissionpartbodyelements` (
 
 CREATE TABLE IF NOT EXISTS `submissionparts` (
   `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
-  `userId` varchar(120) NOT NULL,
+  `userEmail` varchar(120) NOT NULL,
   `fullSubmissionId` varchar(120) NOT NULL,
   `category` varchar(30) NOT NULL,
   PRIMARY KEY (`fullSubmissionId`,`category`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `tags` (
-  `projectId` varchar(100) NOT NULL,
+  `projectName` varchar(100) NOT NULL,
   `tag` varchar(400) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `tasks` (
-  `userId` varchar(400) NOT NULL,
-  `projectId` varchar(400) NOT NULL,
+  `userEmail` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `taskUrl` varchar(400) NOT NULL,
   `speakingName` varchar(400) DEFAULT NULL,
   `technicalName` varchar(400) DEFAULT NULL,
@@ -155,7 +144,6 @@ CREATE TABLE IF NOT EXISTS `users` (
   `name` varchar(100) NOT NULL,
   `password` varchar(200) NOT NULL,
   `email` varchar(255) NOT NULL,
-  `token` varchar(800) NOT NULL,
   `rocketChatId` varchar(400) NOT NULL,
   `rocketChatAuthToken` varchar(800) NOT NULL,
   `isStudent` tinyint(1) DEFAULT '1',
@@ -163,8 +151,8 @@ CREATE TABLE IF NOT EXISTS `users` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE IF NOT EXISTS `workrating` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `fromPeer` varchar(400) NOT NULL,
   `responsibility` int(11) NOT NULL,
   `partOfWork` int(11) NOT NULL,
@@ -172,8 +160,9 @@ CREATE TABLE IF NOT EXISTS `workrating` (
   `communication` int(11) NOT NULL,
   `autonomous` int(11) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+ALTER TABLE groupuser ADD projectName varchar(150) NULL;
+
 COMMIT;
 
-/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
-/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
-/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+
diff --git a/gemeinsamforschen/src/scripts/dbschema/journal.sql b/gemeinsamforschen/src/scripts/dbschema/journal.sql
index e8e9ed5f..96747fe8 100644
--- a/gemeinsamforschen/src/scripts/dbschema/journal.sql
+++ b/gemeinsamforschen/src/scripts/dbschema/journal.sql
@@ -4,8 +4,8 @@ CREATE TABLE if not exists `journals` (
   `id`         varchar(400) NOT NULL,
   `timestamp`  timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
   ON UPDATE CURRENT_TIMESTAMP,
-  `studentId`     varchar(400) NOT NULL,
-  `projectId`    varchar(400) NOT NULL,
+  `userName`     varchar(400) NOT NULL,
+  `projectName`    varchar(400) NOT NULL,
   `text`       text,
   `visibility` varchar(50),
   `category`   varchar(50),
@@ -18,8 +18,8 @@ CREATE TABLE if not exists `projectDescription` (
   `id`         varchar(400) NOT NULL,
   `timestamp`  timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
   ON UPDATE CURRENT_TIMESTAMP,
-  `studentId`     varchar(400) NOT NULL,
-  `projectId`    varchar(400) NOT NULL,
+  `userName`     varchar(400) NOT NULL,
+  `projectName`    varchar(400) NOT NULL,
   `text`       text,
   `open`       TINYINT(1)
 )
diff --git a/gemeinsamforschen/src/scripts/dbschema/setup_gamification.sql b/gemeinsamforschen/src/scripts/dbschema/setup_gamification.sql
index c77014b4..a7a7e02f 100644
--- a/gemeinsamforschen/src/scripts/dbschema/setup_gamification.sql
+++ b/gemeinsamforschen/src/scripts/dbschema/setup_gamification.sql
@@ -17,8 +17,8 @@ CREATE TABLE if not exists events
 (
   eventId     varchar(400) NOT NULL,
   eventType   varchar(400) NOT NULL,
-  studentId   varchar(400) NOT NULL,
-  projectId   varchar(400) NOT NULL,
+  userName   varchar(400) NOT NULL,
+  projectName   varchar(400) NOT NULL,
   title       varchar(400) NOT NULL,
   description varchar(400) NOT NULL
 )
@@ -36,7 +36,7 @@ CREATE TABLE if not exists tasks
 (
   taskId     varchar(400) NOT NULL,
   taskType   varchar(400) NOT NULL,
-  projectId   varchar(400) NOT NULL,
+  projectName   varchar(400) NOT NULL,
   title       varchar(400) NOT NULL,
   description varchar(400) NOT NULL,
   state       varchar(400) NOT NULL -- should be "open" or "closed"
@@ -48,7 +48,7 @@ CREATE TABLE if not exists tasks
 CREATE TABLE if not exists achievements
 (
   authorEmail varchar(400) NOT NULL,
-  projectId varchar(400) NOT NULL,
+  projectName varchar(400) NOT NULL,
   question varchar(400) NOT NULL,
   mcType varchar(400) NOT NULL,
   answer varchar(400) NOT NULL,
diff --git a/gemeinsamforschen/src/scripts/fltrail_tasks.sql b/gemeinsamforschen/src/scripts/fltrail_tasks.sql
index 4bfe8578..bbc5ae59 100644
--- a/gemeinsamforschen/src/scripts/fltrail_tasks.sql
+++ b/gemeinsamforschen/src/scripts/fltrail_tasks.sql
@@ -1 +1 @@
-INSERT INTO fltrail.tasks (userId, projectId, taskUrl, speakingName, technicalName, linkedMode, groupTask, importance, progress, phase, created, due) VALUES ('1', '1', '1', '1', '1', '1', 1, '1', '1', '1', '1', '1');
\ No newline at end of file
+INSERT INTO fltrail.tasks (userEmail, projectName, taskUrl, speakingName, technicalName, linkedMode, groupTask, importance, progress, phase, created, due) VALUES ('1', '1', '1', '1', '1', '1', 1, '1', '1', '1', '1', '1');
\ No newline at end of file
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/database/TestGFApplicationBinder.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/database/TestGFApplicationBinder.java
new file mode 100644
index 00000000..99f0bf7f
--- /dev/null
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/database/TestGFApplicationBinder.java
@@ -0,0 +1,13 @@
+package unipotsdam.gf.core.database;
+
+import unipotsdam.gf.config.GFApplicationBinder;
+import unipotsdam.gf.core.database.mysql.MysqlConnect;
+
+public class TestGFApplicationBinder extends GFApplicationBinder {
+
+    @Override
+    protected void configure() {
+        super.configure();
+        bind(InMemoryMySqlConnect.class).to(MysqlConnect.class);
+    }
+}
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/group/GroupDAOTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/group/GroupDAOTest.java
index 6eacdade..4af32ea2 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/group/GroupDAOTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/group/GroupDAOTest.java
@@ -1,45 +1,55 @@
 package unipotsdam.gf.core.management.group;
 
+import org.glassfish.hk2.api.ServiceLocator;
+import org.glassfish.hk2.utilities.ServiceLocatorUtilities;
 import org.junit.Before;
 import org.junit.Test;
 import uk.co.jemos.podam.api.PodamFactory;
 import uk.co.jemos.podam.api.PodamFactoryImpl;
-import unipotsdam.gf.core.database.InMemoryMySqlConnect;
+import unipotsdam.gf.config.GFApplicationBinder;
 import unipotsdam.gf.core.management.user.User;
 import unipotsdam.gf.core.management.user.UserDAO;
 import unipotsdam.gf.modules.groupfinding.service.GroupDAO;
 
-import java.util.Arrays;
+import javax.inject.Inject;
 import java.util.List;
 
 import static org.hamcrest.Matchers.equalTo;
 import static org.hamcrest.Matchers.hasSize;
 import static org.hamcrest.Matchers.is;
+import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 
 public class GroupDAOTest {
 
-    private InMemoryMySqlConnect inMemoryMySqlConnect;
+
+    @Inject
     private GroupDAO groupDAO;
+
+    @Inject
     private UserDAO userDAO;
+
     private Group group;
 
     private PodamFactory factory = new PodamFactoryImpl();
 
     @Before
     public void setUp() {
-        inMemoryMySqlConnect = new InMemoryMySqlConnect();
-        groupDAO = new GroupDAO(inMemoryMySqlConnect);
-        userDAO = new UserDAO(inMemoryMySqlConnect);
-
-        User userStudent = new User("Student", "password", "testStudent@mail.com", "1",
-                "1", "1", true);
-        User userDocent = new User("Docent", "password", "testDocent@mail.com",
-                "1", "1", "1", false);
+        //final ServiceLocator locator = ServiceLocatorUtilities.bind(new TestGFApplicationBinder());
+        final ServiceLocator locator = ServiceLocatorUtilities.bind(new GFApplicationBinder());
+        locator.inject(this);
+
+
+        User userStudent = factory.manufacturePojo(User.class);
+        userStudent.setStudent(true);
+        User userDocent = factory.manufacturePojo(User.class);
+        userDocent.setStudent(false);
+
         userDAO.persist(userStudent, null);
         userDAO.persist(userDocent, null);
-
-        group = new Group(Arrays.asList(userStudent, userDocent), "1", "1");
+        //group = new Group(Arrays.asList(userStudent, userDocent), "1", "1");
+        group = factory.manufacturePojo(Group.class);
+        assertThat (group.getMembers().isEmpty(), is(false));
     }
 
     @Test
@@ -59,7 +69,7 @@ public class GroupDAOTest {
     public void testUpdate() {
         groupDAO.persist(group);
         assertThat(groupDAO.exists(group), is(true));
-        Group groupWithId = groupDAO.getGroupsByProjectId(group.getProjectId()).get(0);
+        Group groupWithId = groupDAO.getGroupsByProjectName(group.getProjectName()).get(0);
         groupWithId.setChatRoomId("neu");
         groupDAO.update(groupWithId);
         assertThat(groupDAO.exists(groupWithId), is(true));
@@ -68,7 +78,7 @@ public class GroupDAOTest {
     @Test
     public void testGetGroupsByProjectId() {
         groupDAO.persist(group);
-        List<Group> groups = groupDAO.getGroupsByProjectId(group.getProjectId());
+        List<Group> groups = groupDAO.getGroupsByProjectName(group.getProjectName());
         assertThat(groups, hasSize(1));
         assertThat(groups.get(0), equalTo(group));
     }
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/project/ProjectDAOTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/project/ProjectDAOTest.java
index 91e78703..15d5b838 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/project/ProjectDAOTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/project/ProjectDAOTest.java
@@ -32,7 +32,7 @@ public class ProjectDAOTest {
         inMemoryMySqlConnect.connect();
         String mysqlRequest = "SELECT * FROM projects where id = ? and adminPassword = ?";
         VereinfachtesResultSet vereinfachtesResultSet =
-                inMemoryMySqlConnect.issueSelectStatement(mysqlRequest, project.getId(), project.getAdminPassword());
+                inMemoryMySqlConnect.issueSelectStatement(mysqlRequest, project.getName(), project.getAdminPassword());
         boolean result = vereinfachtesResultSet.next();
         assertThat(result, is(true));
     }
@@ -55,11 +55,11 @@ public class ProjectDAOTest {
     @Test
     public void testGetProjectById() {
         projectDAO.persist(project);
-        Project projectActual = projectDAO.getProjectById(project.getId());
+        Project projectActual = projectDAO.getProjectById(project.getName());
 
         assertEquals(project.getAdminPassword(), projectActual.getAdminPassword());
         assertEquals(project.getAuthorEmail(), projectActual.getAuthorEmail());
-        assertEquals(project.getId(), projectActual.getId());
+        assertEquals(project.getName(), projectActual.getName());
         assertEquals(project.getPassword(), projectActual.getPassword());
         assertEquals(project.getPhase(), projectActual.getPhase());
         assertEquals(project.isActive(), projectActual.isActive());
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/user/UserDAOTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/user/UserDAOTest.java
index e29c15bf..7f049eaf 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/user/UserDAOTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/core/management/user/UserDAOTest.java
@@ -54,7 +54,7 @@ public class UserDAOTest {
         assert management.exists(user2);
 
         UserDAO userDAO = new UserDAO(inMemoryMySqlConnect);
-        List<User> users = userDAO.getUsersByProjectId(project.getId());
+        List<User> users = userDAO.getUsersByProjectId(project.getName());
         assert users != null;
         assert !users.isEmpty();
         assertThat(users, hasSize(2));
@@ -79,14 +79,13 @@ public class UserDAOTest {
     public void testUpdateUser() {
         UserDAO userDAO = new UserDAO(inMemoryMySqlConnect);
         User user = new User("julian", "1234", "testUpdateUser@stuff.com", true);
-        user.setToken("abc");
         userDAO.persist(user, new UserProfile());
         assertTrue(userDAO.exists(user));
 
         user.setStudent(false);
         userDAO.update(user);
         assertTrue(userDAO.exists(user));
-        User managementUser = userDAO.getUserByEmail(user.getToken());
+        User managementUser = userDAO.getUserByEmail(user.getEmail());
         assertEquals(user.getStudent(), managementUser.getStudent());
     }
 
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/AnnotationTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/AnnotationTest.java
index 7faee341..a0001122 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/AnnotationTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/interfaces/AnnotationTest.java
@@ -38,7 +38,7 @@ public class AnnotationTest {
         String comment = "comment_testAddAnnotation";
 
         // prepare and execute request
-        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userToken", "1", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userEmail", "1", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
         Annotation response = controller.addAnnotation(annotationPostRequest);
 
         // the new annotation should be found in the database
@@ -59,7 +59,7 @@ public class AnnotationTest {
         String commentNew = "commentNew_testAlterAnnotation";
 
         // save new annotation in database
-        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userToken", "0", Category.TITEL, new AnnotationBody(titleOld, commentOld, 1, 2));
+        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userEmail", "0", Category.TITEL, new AnnotationBody(titleOld, commentOld, 1, 2));
         Annotation response = controller.addAnnotation(annotationPostRequest);
 
         // the new annotation should be found in the database
@@ -97,7 +97,7 @@ public class AnnotationTest {
         String comment = "comment_testDeleteAnnotation";
 
         // prepare and execute request
-        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userToken", "1", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userEmail", "1", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
         Annotation response = controller.addAnnotation(annotationPostRequest);
 
         // the new annotation should be found in the database
@@ -119,7 +119,7 @@ public class AnnotationTest {
         String comment = "comment_testGetAnnotation";
 
         // prepare and execute request
-        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userToken", "1", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userEmail", "1", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
         Annotation response = controller.addAnnotation(annotationPostRequest);
 
         // receive the new annotation
@@ -149,9 +149,9 @@ public class AnnotationTest {
         targetIds.add("-2");
 
         // save new annotations in database
-        AnnotationPostRequest request1 = new AnnotationPostRequest("userToken", targetIds.get(0), Category.TITEL, new AnnotationBody(title, comment, 1, 2));
-        AnnotationPostRequest request2 = new AnnotationPostRequest("userToken", targetIds.get(1), Category.TITEL, new AnnotationBody(title, comment, 1, 2));
-        AnnotationPostRequest request3 = new AnnotationPostRequest("userToken", targetIds.get(1), Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest request1 = new AnnotationPostRequest("userEmail", targetIds.get(0), Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest request2 = new AnnotationPostRequest("userEmail", targetIds.get(1), Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest request3 = new AnnotationPostRequest("userEmail", targetIds.get(1), Category.TITEL, new AnnotationBody(title, comment, 1, 2));
         controller.addAnnotation(request1);
         controller.addAnnotation(request2);
         controller.addAnnotation(request3);
@@ -184,7 +184,7 @@ public class AnnotationTest {
         String badId = "badId";
 
         // save new annotation in database
-        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userToken", "0", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
+        AnnotationPostRequest annotationPostRequest = new AnnotationPostRequest("userEmail", "0", Category.TITEL, new AnnotationBody(title, comment, 1, 2));
         Annotation response = controller.addAnnotation(annotationPostRequest);
 
         // the annotation shouldn't be found in the database
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java
index b4501460..59613474 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java
@@ -19,14 +19,14 @@ import java.util.Map;
 public class TestAddAssessment {
 
     private IPeerAssessment peer = new PeerAssessment();
-    private String studentId = "Kevin";
-    private String projectId = "test a la test";
+    private String userName = "Kevin";
+    private String projectName = "test a la test";
     private String quizId = "Whats a good Test?";
 
     @Test
     public void createQuiz() {
         StudentAndQuiz studentAndQuiz = new StudentAndQuiz();
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         studentAndQuiz.setStudentIdentifier(student);
         Quiz quiz = new Quiz();
         ArrayList<String> correctAnswers = new ArrayList<>();
@@ -47,18 +47,18 @@ public class TestAddAssessment {
 
     @Test
     public void getAllQuizzesInProject() {
-        peer.getQuiz(projectId);
+        peer.getQuiz(projectName);
     }
 
     @Test
     public void getQuiz() {
-        peer.getQuiz(projectId, quizId, studentId);
+        peer.getQuiz(projectName, quizId, userName);
     }
 
     @Test
     public void answerQuiz() {
         Map<String, List<String>> questions = new HashMap<>();
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         List<String> answers = new ArrayList<>();
         answers.add("1");
         answers.add("2");
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java.orig b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java.orig
index 7114d3e0..fc6d0b82 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java.orig
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/assessment/TestAddAssessment.java.orig
@@ -28,14 +28,14 @@ import java.util.Map;
 public class TestAddAssessment {
 
     private IPeerAssessment peer = new PeerAssessment();
-    private String studentId = "Kevin";
-    private String projectId = "test a la test";
+    private String userName = "Kevin";
+    private String projectName = "test a la test";
     private String quizId = "Whats a good Test?";
 
     @Test
     public void createQuiz() {
         StudentAndQuiz studentAndQuiz = new StudentAndQuiz();
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         studentAndQuiz.setStudentIdentifier(student);
         Quiz quiz = new Quiz();
         ArrayList<String> correctAnswers = new ArrayList<>();
@@ -56,18 +56,18 @@ public class TestAddAssessment {
 
     @Test
     public void getAllQuizzesInProject() {
-        peer.getQuiz(projectId);
+        peer.getQuiz(projectName);
     }
 
     @Test
     public void getQuiz() {
-        peer.getQuiz(projectId, quizId, studentId);
+        peer.getQuiz(projectName, quizId, userName);
     }
 
     @Test
     public void answerQuiz() {
         Map<String, List<String>> questions = new HashMap<>();
-        StudentIdentifier student = new StudentIdentifier(projectId, studentId);
+        StudentIdentifier student = new StudentIdentifier(projectName, userName);
         List<String> answers = new ArrayList<>();
         answers.add("1");
         answers.add("2");
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationServiceTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationServiceTest.java
index 87407422..ba471ab0 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationServiceTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/groupfinding/dummy/service/DummyProjectCreationServiceTest.java
@@ -42,7 +42,7 @@ public class DummyProjectCreationServiceTest {
         Project project = factory.manufacturePojo(Project.class);
         assertTrue(projectDAO.exists(project));
 
-        List<Group> dummyGroups = dummyProjectCreationService.createDummyGroups(project.getId());
+        List<Group> dummyGroups = dummyProjectCreationService.createDummyGroups(project.getName());
         dummyGroups.forEach(group -> group.setChatRoomId("1"));
         dummyGroups.forEach(group -> {
             assertTrue(groupDAO.exists(group));
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImplTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImplTest.java
index e429d35f..ca4db71c 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImplTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/JournalDAOImplTest.java
@@ -46,8 +46,8 @@ public class JournalDAOImplTest {
         Journal resultJournal = resultJournals.get(0);
 
         //check if data correct
-        assertEquals(resultJournal.getStudentIdentifier().getStudentId(), testStudent);
-        assertEquals(resultJournal.getStudentIdentifier().getProjectId(), testProject);
+        assertEquals(resultJournal.getStudentIdentifier().getUserEmail(), testStudent);
+        assertEquals(resultJournal.getStudentIdentifier().getProjectName(), testProject);
         assertEquals(resultJournal.getEntryMD(), testEntry);
 
         //Journal should get real id while create
@@ -94,8 +94,8 @@ public class JournalDAOImplTest {
         Journal resultJournal = resultJournals.get(0);
 
         //check if data correct
-        assertEquals(resultJournal.getStudentIdentifier().getStudentId(), testStudent);
-        assertEquals(resultJournal.getStudentIdentifier().getProjectId(), testProject);
+        assertEquals(resultJournal.getStudentIdentifier().getUserEmail(), testStudent);
+        assertEquals(resultJournal.getStudentIdentifier().getProjectName(), testProject);
         assertEquals(resultJournal.getEntryMD(), newEntry);
         assertEquals(resultJournal.getId(), testId);
         assertEquals(resultJournal.getVisibility(), newVisibility);
@@ -150,8 +150,8 @@ public class JournalDAOImplTest {
         Journal resultJournal = journalDAO.getJournal(testId);
 
         //check data
-        assertEquals(resultJournal.getStudentIdentifier().getStudentId(), testStudent);
-        assertEquals(resultJournal.getStudentIdentifier().getProjectId(), testProject);
+        assertEquals(resultJournal.getStudentIdentifier().getUserEmail(), testStudent);
+        assertEquals(resultJournal.getStudentIdentifier().getProjectName(), testProject);
         assertEquals(resultJournal.getEntryMD(), testEntry);
         assertEquals(resultJournal.getId(), testId);
         assertEquals(resultJournal.getVisibility(), testVisibility);
@@ -174,7 +174,7 @@ public class JournalDAOImplTest {
         j1.setId("-2");
         create(j1);
         j1.setId("-3");
-        j1.getStudentIdentifier().setProjectId("otherProject");
+        j1.getStudentIdentifier().setProjectName("otherProject");
         create(j1);
 
         //get for project
@@ -200,7 +200,7 @@ public class JournalDAOImplTest {
         //Create some journals
         Journal j1 = testJournal;
         create(j1);
-        j1.getStudentIdentifier().setStudentId("otherStudent");
+        j1.getStudentIdentifier().setUserEmail("otherStudent");
         j1.setId("-2");
         create(j1);
         j1.setId("-3");
@@ -255,7 +255,7 @@ public class JournalDAOImplTest {
         j1.setId("-2");
         create(j1);
         j1.setId("-3");
-        j1.getStudentIdentifier().setProjectId("otherProject");
+        j1.getStudentIdentifier().setProjectName("otherProject");
         create(j1);
 
         //getOpenJournals
@@ -275,7 +275,7 @@ public class JournalDAOImplTest {
     //utility
 
     private ArrayList<Journal> getJournals() {
-        String request = "SELECT * FROM journals WHERE projectId= ?;";
+        String request = "SELECT * FROM journals WHERE projectName= ?;";
         VereinfachtesResultSet rs = connection.issueSelectStatement(request, testProject);
 
         ArrayList<Journal> resultJournals = new ArrayList<>();
@@ -286,9 +286,9 @@ public class JournalDAOImplTest {
     }
 
     private void create(Journal getJournal) {
-        String createRequest = "INSERT INTO journals (`id`, `studentId`, `projectId`, `text`, `visibility`,`category`, `open` ) VALUES (?,?,?,?,?,?,?);";
-        connection.issueInsertOrDeleteStatement(createRequest, getJournal.getId(), getJournal.getStudentIdentifier().getStudentId(),
-                getJournal.getStudentIdentifier().getProjectId(), getJournal.getEntryMD(), getJournal.getVisibility(), getJournal.getCategory(), getJournal.isOpen());
+        String createRequest = "INSERT INTO journals (`id`, `userName`, `projectName`, `text`, `visibility`,`category`, `open` ) VALUES (?,?,?,?,?,?,?);";
+        connection.issueInsertOrDeleteStatement(createRequest, getJournal.getId(), getJournal.getStudentIdentifier().getUserEmail(),
+                getJournal.getStudentIdentifier().getProjectName(), getJournal.getEntryMD(), getJournal.getVisibility(), getJournal.getCategory(), getJournal.isOpen());
     }
 
     private void cleanup(String... ids) {
@@ -302,8 +302,8 @@ public class JournalDAOImplTest {
 
         String id = rs.getString("id");
         long timestamp = rs.getTimestamp(2).getTime();
-        String student = rs.getString("studentId");
-        String project = rs.getString("projectId");
+        String student = rs.getString("userName");
+        String project = rs.getString("projectName");
         String text = rs.getString("text");
         String visibility = rs.getString("visibility");
         String category = rs.getString("category");
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionImplDAOTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionImplDAOTest.java
index 601245c3..f8a13dbf 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionImplDAOTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/model/dao/ProjectDescriptionImplDAOTest.java
@@ -42,8 +42,8 @@ public class ProjectDescriptionImplDAOTest {
         //check data
         assertFalse(testId.equals(result.getId()));
         assertEquals(testDescription, result.getDescriptionMD());
-        assertEquals(testStudent, result.getStudent().getStudentId());
-        assertEquals(testProjekt, result.getStudent().getProjectId());
+        assertEquals(testStudent, result.getStudent().getUserEmail());
+        assertEquals(testProjekt, result.getStudent().getProjectName());
 
         cleanup(result.getId());
         connection.close();
@@ -88,8 +88,8 @@ public class ProjectDescriptionImplDAOTest {
 
         assertEquals(testId, result.getId());
         assertEquals(testDescription, result.getDescriptionMD());
-        assertEquals(testStudent, result.getStudent().getStudentId());
-        assertEquals(testProjekt, result.getStudent().getProjectId());
+        assertEquals(testStudent, result.getStudent().getUserEmail());
+        assertEquals(testProjekt, result.getStudent().getProjectName());
 
         cleanup(result.getId());
         connection.close();
@@ -105,8 +105,8 @@ public class ProjectDescriptionImplDAOTest {
 
         assertEquals(testId, result.getId());
         assertEquals(testDescription, result.getDescriptionMD());
-        assertEquals(testStudent, result.getStudent().getStudentId());
-        assertEquals(testProjekt, result.getStudent().getProjectId());
+        assertEquals(testStudent, result.getStudent().getUserEmail());
+        assertEquals(testProjekt, result.getStudent().getProjectName());
 
         cleanup(result.getId());
         connection.close();
@@ -181,7 +181,7 @@ public class ProjectDescriptionImplDAOTest {
 
     //Utility
     private ArrayList<ProjectDescription> getProjectDescription() {
-        String request = "SELECT * FROM projectdescription WHERE projectId=?;";
+        String request = "SELECT * FROM projectdescription WHERE projectName=?;";
         VereinfachtesResultSet rs = connection.issueSelectStatement(request, testProjekt);
 
         ArrayList<ProjectDescription> resultDescriptions = new ArrayList<>();
@@ -192,8 +192,8 @@ public class ProjectDescriptionImplDAOTest {
     }
 
     private void create(ProjectDescription projectDescription) {
-        String request = "INSERT INTO projectdescription(`id`, `studentId`, `projectId`, `text`, `open`) VALUES (?,?,?,?,?);";
-        connection.issueInsertOrDeleteStatement(request, projectDescription.getId(), projectDescription.getStudent().getStudentId(), projectDescription.getStudent().getProjectId(), projectDescription.getDescriptionMD(), projectDescription.isOpen());
+        String request = "INSERT INTO projectdescription(`id`, `userName`, `projectName`, `text`, `open`) VALUES (?,?,?,?,?);";
+        connection.issueInsertOrDeleteStatement(request, projectDescription.getId(), projectDescription.getStudent().getUserEmail(), projectDescription.getStudent().getProjectName(), projectDescription.getDescriptionMD(), projectDescription.isOpen());
     }
 
     private void cleanup(String... ids) {
@@ -206,8 +206,8 @@ public class ProjectDescriptionImplDAOTest {
     private ProjectDescription getDescriptionFromResultSet(VereinfachtesResultSet rs) {
         String id = rs.getString("id");
         long timestamp = rs.getTimestamp(2).getTime();
-        String author = rs.getString("studentId");
-        String project = rs.getString("projectId");
+        String author = rs.getString("userName");
+        String project = rs.getString("projectName");
         String text = rs.getString("text");
         boolean open = rs.getBoolean("open");
 
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/JournalServiceImplTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/JournalServiceImplTest.java
index 936830ac..78681fd7 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/JournalServiceImplTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/JournalServiceImplTest.java
@@ -55,8 +55,8 @@ public class JournalServiceImplTest {
 
         assertNotNull(resultJournal);
 
-        assertEquals(resultJournal.getStudentIdentifier().getStudentId(), testStudent);
-        assertEquals(resultJournal.getStudentIdentifier().getProjectId(), testProject);
+        assertEquals(resultJournal.getStudentIdentifier().getUserEmail(), testStudent);
+        assertEquals(resultJournal.getStudentIdentifier().getProjectName(), testProject);
         assertEquals(resultJournal.getEntryMD(), testEntry);
         assertEquals(resultJournal.getId(), journalID);
         assertEquals(resultJournal.getVisibility(), testVisibility);
@@ -115,8 +115,8 @@ public class JournalServiceImplTest {
 
         assertNotNull(resultJournal);
 
-        assertEquals(resultJournal.getStudentIdentifier().getStudentId(), testStudent);
-        assertEquals(resultJournal.getStudentIdentifier().getProjectId(), testProject);
+        assertEquals(resultJournal.getStudentIdentifier().getUserEmail(), testStudent);
+        assertEquals(resultJournal.getStudentIdentifier().getProjectName(), testProject);
         assertEquals(resultJournal.getEntryMD(), testEntry);
         assertEquals(resultJournal.getId(), journalID);
         assertEquals(resultJournal.getVisibility(), testVisibility);
@@ -131,8 +131,8 @@ public class JournalServiceImplTest {
 
         assertNotNull(resultJournal);
 
-        assertEquals(resultJournal.getStudentIdentifier().getStudentId(), testStudent);
-        assertEquals(resultJournal.getStudentIdentifier().getProjectId(), testProject);
+        assertEquals(resultJournal.getStudentIdentifier().getUserEmail(), testStudent);
+        assertEquals(resultJournal.getStudentIdentifier().getProjectName(), testProject);
         assertEquals(resultJournal.getEntryMD(), testEntry + testEntry);
         assertEquals(resultJournal.getId(), journalID);
         assertEquals(resultJournal.getVisibility(), Visibility.MINE);
@@ -202,7 +202,7 @@ public class JournalServiceImplTest {
 
         Project project = new Project();
 
-        testJournal.getStudentIdentifier().setStudentId(token);
+        testJournal.getStudentIdentifier().setUserEmail(token);
         project.setId(testProject);
 
         journalDAO.createJournal(testJournal);
@@ -210,6 +210,6 @@ public class JournalServiceImplTest {
         ArrayList<User> resultUsers = journalService.getOpenUserByProject(project);
 
         assertEquals(1, resultUsers.size());
-        assertEquals(user.getEmail(), resultUsers.get(0).getId());
+        assertEquals(user.getEmail(), resultUsers.get(0).getEmail());
     }
 }
\ No newline at end of file
diff --git a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImplTest.java b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImplTest.java
index 4669f793..1b552336 100644
--- a/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImplTest.java
+++ b/gemeinsamforschen/src/test/java/unipotsdam/gf/modules/journal/service/ProjectDescriptionImplTest.java
@@ -68,8 +68,8 @@ public class ProjectDescriptionImplTest {
 
         assertNotNull(resProjectDescription);
         assertEquals("Hier soll ein Turtorialtext stehen", resProjectDescription.getDescriptionMD());
-        assertEquals(testStudent, resProjectDescription.getStudent().getStudentId());
-        assertEquals(testProject, resProjectDescription.getStudent().getProjectId());
+        assertEquals(testStudent, resProjectDescription.getStudent().getUserEmail());
+        assertEquals(testProject, resProjectDescription.getStudent().getProjectName());
 
         //description exists
         resProjectDescription = descriptionDAO.getDescription(new StudentIdentifier(testProject, testStudent));
@@ -77,8 +77,8 @@ public class ProjectDescriptionImplTest {
         assertNotNull(resProjectDescription);
         assertEquals(id, resProjectDescription.getId());
         assertEquals("Hier soll ein Turtorialtext stehen", resProjectDescription.getDescriptionMD());
-        assertEquals(testStudent, resProjectDescription.getStudent().getStudentId());
-        assertEquals(testProject, resProjectDescription.getStudent().getProjectId());
+        assertEquals(testStudent, resProjectDescription.getStudent().getUserEmail());
+        assertEquals(testProject, resProjectDescription.getStudent().getProjectName());
 
     }
 
@@ -95,8 +95,8 @@ public class ProjectDescriptionImplTest {
 
         assertNotNull(resProjectDescription);
         assertEquals(testDescription, resProjectDescription.getDescriptionMD());
-        assertEquals(testStudent, resProjectDescription.getStudent().getStudentId());
-        assertEquals(testProject, resProjectDescription.getStudent().getProjectId());
+        assertEquals(testStudent, resProjectDescription.getStudent().getUserEmail());
+        assertEquals(testProject, resProjectDescription.getStudent().getProjectName());
 
         ArrayList<Link> links = resProjectDescription.getLinks();
         assertEquals(1, links.size());
@@ -193,13 +193,13 @@ public class ProjectDescriptionImplTest {
         Project project = new Project();
         project.setId(testProject);
 
-        testProjectDescriptionObj.getStudent().setStudentId(token);
+        testProjectDescriptionObj.getStudent().setUserEmail(token);
         descriptionDAO.createDescription(testProjectDescriptionObj);
 
         ArrayList<User> resultUser = projectDescriptionService.getOpenUserByProject(project);
 
         assertEquals(1, resultUser.size());
-        assertEquals(user.getEmail(), resultUser.get(0).getId());
+        assertEquals(user.getEmail(), resultUser.get(0).getEmail());
 
         StudentIdentifier delUser = new StudentIdentifier(testProject, token);
         descriptionDAO.deleteDescription(delUser);
diff --git a/gemeinsamforschen/src/test/resources/database/fltrail.sql b/gemeinsamforschen/src/test/resources/database/fltrail.sql
index 07602a72..8b6e5b3b 100644
--- a/gemeinsamforschen/src/test/resources/database/fltrail.sql
+++ b/gemeinsamforschen/src/test/resources/database/fltrail.sql
@@ -8,7 +8,7 @@ USE fltrail;
 CREATE TABLE if not exists `annotations` (
   `id` varchar(120) NOT NULL,
   `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
-  `userToken` varchar(120) DEFAULT NULL,
+  `userEmail` varchar(120) DEFAULT NULL,
   `targetId` varchar(120) DEFAULT NULL,
   `targetCategory` VARCHAR(30) NOT NULL,
   `title` varchar(120) DEFAULT NULL,
@@ -23,13 +23,13 @@ CREATE TABLE if not exists `fullsubmissions` (
   `timestamp` TIMESTAMP on update CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
   `user` VARCHAR(120) NOT NULL,
   `text` MEDIUMTEXT NOT NULL,
-  `projectId` VARCHAR(120) NOT NULL,
+  `projectName` VARCHAR(120) NOT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE = InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE if not exists `submissionparts` (
   `timestamp` TIMESTAMP on update CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
-  `userId` VARCHAR(120) NOT NULL,
+  `userEmail` VARCHAR(120) NOT NULL,
   `fullSubmissionId` VARCHAR(120) NOT NULL,
   `category` VARCHAR(30) NOT NULL,
   PRIMARY KEY (`fullSubmissionId`, `category`)
@@ -44,8 +44,8 @@ CREATE TABLE if not exists `submissionpartbodyelements` (
 ) ENGINE = InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE `answeredquiz` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `question` varchar(400) NOT NULL,
   `correct` tinyint(4) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
@@ -56,26 +56,26 @@ CREATE TABLE `contributionrating` (
   `research` int(11) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 CREATE TABLE `grades` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `grade` double NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 CREATE TABLE `groups` (
   `id` int(11) NOT NULL,
-  `projectId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `chatRoomId` varchar(400) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 CREATE TABLE `groupuser` (
-  `studentId` varchar(400) NOT NULL,
-  `projectId` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `groupId` int(11) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 CREATE TABLE `phasesselected` (
-  `projectId` varchar(100) NOT NULL,
+  `projectName` varchar(100) NOT NULL,
   `phaseSelected` varchar(200) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 CREATE TABLE `profilepicture` (
-  `studentId` varchar(200) NOT NULL,
+  `userName` varchar(200) NOT NULL,
   `image` longblob NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 CREATE TABLE `projects` (
@@ -90,26 +90,26 @@ CREATE TABLE `projects` (
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE `projectuser` (
-  `projectId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `useremail` varchar(400) NOT NULL,
   `id` int(11) NOT NULL AUTO_INCREMENT;
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 CREATE TABLE `quiz` (
-  `studentId` varchar(400) NOT NULL,
-  `projectId` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `question` varchar(400) NOT NULL,
   `mcType` varchar(400) NOT NULL,
   `answer` varchar(400) NOT NULL,
   `correct` tinyint(1) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 CREATE TABLE `tags` (
-  `projectId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `tag` varchar(400) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 CREATE TABLE `tasks` (
-  `userId` varchar(400) NOT NULL,
-  `projectId` varchar(400) NOT NULL,
+  `userEmail` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
   `taskUrl` varchar(400) NOT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -126,8 +126,8 @@ CREATE TABLE `users` (
   DEFAULT CHARSET = utf8;
 
 CREATE TABLE `workrating` (
-  `projectId` varchar(400) NOT NULL,
-  `studentId` varchar(400) NOT NULL,
+  `projectName` varchar(400) NOT NULL,
+  `userName` varchar(400) NOT NULL,
   `fromPeer` varchar(400) NOT NULL,
   `responsibility` int(11) NOT NULL,
   `partOfWork` int(11) NOT NULL,
@@ -140,7 +140,7 @@ ALTER TABLE `groups`
   ADD PRIMARY KEY (`id`);
 
 ALTER TABLE `projectuser`
-  ADD KEY `projectId` (`projectId`(255),`userId`(255));
+  ADD KEY `projectName` (`projectName`(255),`userEmail`(255));
 
 ALTER TABLE `users`
   ADD UNIQUE KEY `email` (`email`);
-- 
GitLab