diff --git a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java
index 5bbedb74b18de4b1f1c83e717518d2c9e0b08d5f..b160c172258352bdeb2991c0ff9495e77a130190 100644
--- a/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java
+++ b/src/main/java/de/thm/arsnova/controller/LecturerQuestionController.java
@@ -428,7 +428,7 @@ public class LecturerQuestionController extends AbstractController {
 		}
 	}
 
-	@RequestMapping(value = "/setsort", method = RequestMethod.POST)
+	@RequestMapping(value = "/setsubjectsort", method = RequestMethod.POST)
 	public void setSubjectSortOrder(
 			@PathVariable final String questionId,
 			@RequestParam(required = false) final Boolean publish,
@@ -437,10 +437,10 @@ public class LecturerQuestionController extends AbstractController {
 		if (publish != null) {
 			question.setActive(publish);
 		}
-		questionService.update(question);
+		//whaat?
 	}
 
-	@RequestMapping(value = "/getsort", method = RequestMethod.GET)
+	@RequestMapping(value = "/getsubjectsort", method = RequestMethod.GET)
 	public String getSubjectSortType(
 			@RequestParam(required = true) final String sessionkey,
             @RequestParam(required = true) final String isPreparation
@@ -448,7 +448,7 @@ public class LecturerQuestionController extends AbstractController {
 		return questionService.getSubjectSortType(sessionkey, isPreparation);
 	}
 
-	@RequestMapping(value = "/setsort", method = RequestMethod.POST)
+	@RequestMapping(value = "/setquestionsort", method = RequestMethod.POST)
 	public void setQuestionSortOrder(
 			@PathVariable final String questionId,
 			@RequestParam(required = false) final Boolean publish,
@@ -457,15 +457,15 @@ public class LecturerQuestionController extends AbstractController {
 		if (publish != null) {
 			question.setActive(publish);
 		}
-		questionService.update(question);
+		//whaat?
 	}
 
-	@RequestMapping(value = "/getsort", method = RequestMethod.GET)
+	@RequestMapping(value = "/getquestionsort", method = RequestMethod.GET)
 	public String getQuestionSortType(
 			@RequestParam(required = true) final String sessionkey,
 			@RequestParam(required = true) final String subject,
             @RequestParam(required = true) final String isPreparation
 			) {
-		return questionService.getQuestionSortType(sessionkey, subject, isPreparation);
+		return questionService.getQuestionSortType(sessionkey, isPreparation, subject);
 	}
 }
\ No newline at end of file
diff --git a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
index d98a437eaf09827305223e67ccf618f13c27faf0..b747ab4fe810a3ef514ec93263d64f4804863cad 100644
--- a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
+++ b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
@@ -1395,13 +1395,13 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 	@Override
 	public List<Question> getLectureQuestionsForUsers(final Session session) {
         SortOrder subjectSortOrder = getSortOrder(session.get_id(), "lecture", "");
-        if (sortOrder != null) {
+        if (subjectSortOrder != null) {
             List<Question> questions = new ArrayList<Question>();
-            if ("alphabet".equals(sortOrder.getSortType())) {
+            if ("alphabet".equals(subjectSortOrder.getSortType())) {
                 // i srsly dunno, lol
             }
             else {
-                questions = getQuestionsBySortOrder(sortOrder, true);
+                questions = getQuestionsBySortOrder(subjectSortOrder, true);
             }
             return questions;
         }
@@ -1413,14 +1413,14 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 
 	@Override
 	public List<Question> getLectureQuestionsForTeachers(final Session session) {
-        SortOrder subjectSortOrder = getSortOrder(session, "lecture", "");
-        if (sortOrder != null) {
+        SortOrder subjectSortOrder = getSortOrder(session.get_id(), "lecture", "");
+        if (subjectSortOrder != null) {
             List<Question> questions = new ArrayList<Question>();
-            if ("alphabet".equals(sortOrder.getSortType())) {
+            if ("alphabet".equals(subjectSortOrder.getSortType())) {
                 // i srsly dunno, lol
             }
             else {
-                questions = getQuestionsBySortOrder(sortOrder, false);
+                questions = getQuestionsBySortOrder(subjectSortOrder, false);
             }
             return questions;
         }
@@ -1446,14 +1446,14 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 	@Cacheable("preparationquestions")
 	@Override
 	public List<Question> getPreparationQuestionsForUsers(final Session session) {
-        SortOrder subjectSortOrder = getSortOrder(session, "preparation", "");
-        if (sortOrder != null) {
+        SortOrder subjectSortOrder = getSortOrder(session.get_id(), "preparation", "");
+        if (subjectSortOrder != null) {
             List<Question> questions = new ArrayList<Question>();
-            if ("alphabet".equals(sortOrder.getSortType())) {
+            if ("alphabet".equals(subjectSortOrder.getSortType())) {
                 // i srsly dunno, lol
             }
             else {
-                questions = getQuestionsBySortOrder(sortOrder, true);
+                questions = getQuestionsBySortOrder(subjectSortOrder, true);
             }
             return questions;
         }
@@ -1465,14 +1465,14 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 
 	@Override
 	public List<Question> getPreparationQuestionsForTeachers(final Session session) {
-        SortOrder sortOrder = getSortOrder(session, "preparation");
-        if (sortOrder != null) {
+        SortOrder subjectSortOrder = getSortOrder(session.get_id(), "preparation", "");
+        if (subjectSortOrder != null) {
             List<Question> questions = new ArrayList<Question>();
-            if ("alphabet".equals(sortOrder.getSortType())) {
+            if ("alphabet".equals(subjectSortOrder.getSortType())) {
                 // i srsly dunno, lol
             }
             else {
-                questions = getQuestionsBySortOrder(sortOrder, false);
+                questions = getQuestionsBySortOrder(subjectSortOrder, false);
             }
             return questions;
         }
@@ -1987,11 +1987,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
         
 		NovaView view = new NovaView(viewString);
 		view.setKey(sessionId);
-        if(subject.isempty() == false) {
-            String suffix = "_and_subject";
-            viewString = viewString.concat(suffix);
-            view.setKey(subject);
-        }
+        view.setKey(subject);
         
 		ViewResults results = this.getDatabase().view(view);
 
@@ -1999,7 +1995,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
 			return null;
 		}
 
-        return (SortOrder) JSONObject.toBean(results.getJSONObject(), Question.class);
+        return (SortOrder) JSONObject.toBean(results.getJSONObject(), SortOrder.class);
     }
     
     @Override
@@ -2044,5 +2040,6 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
                 questions.add(tempQuestion);
             }
         }
+        return questions;
     }
 }
diff --git a/src/main/java/de/thm/arsnova/entities/SortOrder.java b/src/main/java/de/thm/arsnova/entities/SortOrder.java
index c69e8552a57e78ab237af077304e3330d209be91..01d87ebf1c328de84b50a3bb1c7935213564717c 100644
--- a/src/main/java/de/thm/arsnova/entities/SortOrder.java
+++ b/src/main/java/de/thm/arsnova/entities/SortOrder.java
@@ -41,11 +41,11 @@ public class SortOrder {
     }
     
     public String getSortType() {
-        return this.SortType;
+        return this.sortType;
     }
     
     public void setQuestionVariant(final String questionVariant) {
-        this.sortVariant = sortVariant;
+        this.questionVariant = questionVariant;
     }
     
     public String getQuestionVariant() {
diff --git a/src/main/java/de/thm/arsnova/services/IQuestionService.java b/src/main/java/de/thm/arsnova/services/IQuestionService.java
index 369435fa6efe0f5ed6eeae5ab68c72eb4db0965e..46b940876584d1015a3b205a3cc1bfe19162d522 100644
--- a/src/main/java/de/thm/arsnova/services/IQuestionService.java
+++ b/src/main/java/de/thm/arsnova/services/IQuestionService.java
@@ -139,5 +139,5 @@ public interface IQuestionService {
     
     String getSubjectSortType(String sessionkey, String isPreparation);
     
-    String getQuestionSortType(String sessionkey, String isPreparation);
+    String getQuestionSortType(String sessionkey, String isPreparation, String subject);
 }
diff --git a/src/main/java/de/thm/arsnova/services/QuestionService.java b/src/main/java/de/thm/arsnova/services/QuestionService.java
index b5364db1fccd6ac8272f2fa1af04ac20b21834f9..f99039eba7ac82426988554a26563af225c46d5e 100644
--- a/src/main/java/de/thm/arsnova/services/QuestionService.java
+++ b/src/main/java/de/thm/arsnova/services/QuestionService.java
@@ -138,12 +138,12 @@ public class QuestionService implements IQuestionService, ApplicationEventPublis
         
         SortOrder sortOrder = databaseDao.getSortOrder(session.get_id(), question.getQuestionVariant(), question.getSubject());
         if (sortOrder != null) {
-            if("alphabet____work".equals(sortOrder.getSortType())) {
+            if("alphabet".equals(sortOrder.getSortType())) {
                 
             }
             else {
                 String[] tmp = sortOrder.getSortOrder();
-                tmp.add(question.get_id());
+                tmp.append(question.get_id());
                 sortOrder.setSortOrder(tmp);
             }
         }
@@ -793,12 +793,12 @@ public class QuestionService implements IQuestionService, ApplicationEventPublis
     @Override
     public String getSubjectSortType(String sessionkey, String isPreparation) {
         SortOrder sortOrder = databaseDao.getSortOrder(sessionkey, isPreparation, "");
-        return SortOrder.getSortType();
+        return sortOrder.getSortType();
     }
     
     @Override
-    public String getQuestionSortType(String session, String subject, String isPreparation) {
+    public String getQuestionSortType(String sessionkey, String isPreparation, String subject) {
         SortOrder sortOrder = databaseDao.getSortOrder(sessionkey, isPreparation, subject);
-        return SortOrder.getSortType();
+        return sortOrder.getSortType();
     }
 }