Implement type-filtered backlog fetching
[quassel.git] / src / core / SQL / SQLite / select_messagesNewestK_filtered.sql
diff --git a/src/core/SQL/SQLite/select_messagesNewestK_filtered.sql b/src/core/SQL/SQLite/select_messagesNewestK_filtered.sql
new file mode 100644 (file)
index 0000000..b4411af
--- /dev/null
@@ -0,0 +1,9 @@
+SELECT messageid, time,  type, flags, sender, senderprefixes, realname, avatarurl, message
+FROM backlog
+JOIN sender ON backlog.senderid = sender.senderid
+WHERE bufferid = :bufferid
+AND backlog.messageid <= (SELECT buffer.lastmsgid FROM buffer WHERE buffer.bufferid = :bufferid)
+AND backlog.type & :type != 0
+AND (:flags = 0 OR backlog.flags & :flags != 0)
+ORDER BY messageid DESC
+LIMIT :limit