X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmessagelist.cpp;fp=src%2Fmessagelist.cpp;h=902d5cb8005e5a2877bf0f5d9d5a9e4dbaa23a4c;hb=6b896a9e1dc143bba86795be1e9336549db9b85f;hp=0000000000000000000000000000000000000000;hpb=8adfd604a97d385869b0ce763b35d014d7aa2cca;p=fms.git diff --git a/src/messagelist.cpp b/src/messagelist.cpp new file mode 100644 index 0000000..902d5cb --- /dev/null +++ b/src/messagelist.cpp @@ -0,0 +1,34 @@ +#include "../include/messagelist.h" + +void MessageList::LoadRange(const long lowmessageid, const long highmessageid, const long boardid) +{ + std::string sql; + + sql="SELECT tblMessage.MessageID FROM tblMessage INNER JOIN tblMessageBoard ON tblMessage.MessageID=tblMessageBoard.MessageID WHERE tblMessage.MessageID>=? AND tblMessage.MessageID<=?"; + if(boardid!=-1) + { + sql+=" AND tblMessageBoard.BoardID=?"; + } + sql+=" ORDER BY tblMessage.MessageID;"; + + SQLite3DB::Statement st=m_db->Prepare(sql); + st.Bind(0,lowmessageid); + st.Bind(1,highmessageid); + if(boardid!=-1) + { + st.Bind(2,boardid); + } + st.Step(); + + // clear existing messages from the list + clear(); + + while(st.RowReturned()) + { + int result; + st.ResultInt(0,result); + push_back(Message(result)); + st.Step(); + } + +}