Skip to content
Snippets Groups Projects
Commit 412ff555 authored by Christoph Thelen's avatar Christoph Thelen
Browse files

Fixes #11549: List user's own messages

parent 65adcd82
No related merge requests found
......@@ -692,6 +692,19 @@ public class CouchDBDao implements IDatabaseDao {
view.setStartKeyArray(session.get_id());
view.setEndKeyArray(session.get_id(), "{}");
view.setGroup(true);
return getInterposedReadingCount(view);
}
@Override
public InterposedReadingCount getInterposedReadingCount(final Session session, final User user) {
final NovaView view = new NovaView("interposed_question/count_by_session_reading_for_creator");
view.setStartKeyArray(session.get_id(), user.getUsername());
view.setEndKeyArray(session.get_id(), user.getUsername(), "{}");
view.setGroup(true);
return getInterposedReadingCount(view);
}
private InterposedReadingCount getInterposedReadingCount(final NovaView view) {
final ViewResults results = getDatabase().view(view);
if (results.size() == 0 || results.getResults().size() == 0) {
return new InterposedReadingCount();
......
......@@ -83,6 +83,8 @@ public interface IDatabaseDao {
InterposedReadingCount getInterposedReadingCount(Session session);
InterposedReadingCount getInterposedReadingCount(Session session, User user);
List<InterposedQuestion> getInterposedQuestions(Session session);
List<InterposedQuestion> getInterposedQuestions(Session session, User user);
......
......@@ -322,10 +322,15 @@ public class QuestionService implements IQuestionService {
@PreAuthorize("isAuthenticated()")
public InterposedReadingCount getInterposedReadingCount(final String sessionKey) {
final Session session = databaseDao.getSessionFromKeyword(sessionKey);
final User user = getCurrentUser();
if (session == null) {
throw new NotFoundException();
}
return databaseDao.getInterposedReadingCount(session);
if (session.isCreator(user)) {
return databaseDao.getInterposedReadingCount(session);
} else {
return databaseDao.getInterposedReadingCount(session, user);
}
}
@Override
......
......@@ -529,4 +529,10 @@ public class StubDatabaseDao implements IDatabaseDao {
// TODO Auto-generated method stub
}
@Override
public InterposedReadingCount getInterposedReadingCount(Session session, User user) {
// TODO Auto-generated method stub
return null;
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment