931e0969fe8554ea9a28a6d70506a48d9d5485f4
[fms.git] / src / boardlist.cpp
1 #include "../include/boardlist.h"\r
2 \r
3 #ifdef XMEM\r
4         #include <xmem.h>\r
5 #endif\r
6 \r
7 void BoardList::Load()\r
8 {\r
9         clear();\r
10         \r
11         int boardid=0;\r
12         std::string boardname="";\r
13         std::string boarddescription="";\r
14         std::string dateadded="";\r
15         std::string savereceivedstr="";\r
16         bool savereceived=false;\r
17         int highmessageid=0;\r
18         int lowmessageid=0;\r
19         int messagecount=0;\r
20         std::string addedmethod="";\r
21 \r
22         SQLite3DB::Statement st=m_db->Prepare("SELECT tblBoard.BoardID, BoardName, BoardDescription, DateAdded, HighMessageID, LowMessageID, MessageCount, SaveReceivedMessages, AddedMethod FROM tblBoard LEFT JOIN vwBoardStats ON tblBoard.BoardID=vwBoardStats.BoardID ORDER BY BoardName COLLATE NOCASE;");\r
23         st.Step();\r
24         \r
25         while(st.RowReturned())\r
26         {\r
27                 st.ResultInt(0,boardid);\r
28                 st.ResultText(1,boardname);\r
29                 st.ResultText(2,boarddescription);\r
30                 st.ResultText(3,dateadded);\r
31                 st.ResultInt(4,highmessageid);\r
32                 st.ResultInt(5,lowmessageid);\r
33                 st.ResultInt(6,messagecount);\r
34                 st.ResultText(7,savereceivedstr);\r
35                 st.ResultText(8,addedmethod);\r
36 \r
37                 if(savereceivedstr=="true")\r
38                 {\r
39                         savereceived=true;\r
40                 }               \r
41                 else\r
42                 {\r
43                         savereceived=false;\r
44                 }\r
45 \r
46                 push_back(Board(boardid,boardname,boarddescription,dateadded,lowmessageid,highmessageid,messagecount,savereceived,addedmethod));\r
47                 st.Step();\r
48         }\r
49 }\r
50 \r
51 void BoardList::LoadNew(const std::string &date)\r
52 {\r
53         clear();\r
54 \r
55         int tempint;\r
56         SQLite3DB::Statement st=m_db->Prepare("SELECT BoardID FROM tblBoard WHERE DateAdded>? ORDER BY BoardName;");\r
57         st.Bind(0,date);\r
58         st.Step();\r
59 \r
60         while(st.RowReturned())\r
61         {\r
62                 st.ResultInt(0,tempint);\r
63                 push_back(Board(tempint));\r
64                 st.Step();\r
65         }\r
66 }\r