\r
const long MessageRequester::GetBoardID(const std::string &boardname)\r
{\r
+ std::string lowerboard=boardname;\r
+ StringFunctions::LowerCase(lowerboard,lowerboard);\r
SQLite3DB::Statement st=m_db->Prepare("SELECT BoardID FROM tblBoard WHERE BoardName=?;");\r
- st.Bind(0,boardname);\r
+ st.Bind(0,lowerboard);\r
st.Step();\r
\r
if(st.RowReturned())\r
{\r
DateTime now;\r
now.SetToGMTime();\r
- st=m_db->Prepare("INSERT INTO tblBoard(BoardName,DateAdded) VALUES(?,?);");\r
+ st=m_db->Prepare("INSERT INTO tblBoard(BoardName,DateAdded,SaveReceivedMessages) VALUES(?,?,?);");\r
st.Bind(0,boardname);\r
st.Bind(1,now.Format("%Y-%m-%d %H:%M:%S"));\r
+ if(m_savemessagesfromnewboards)\r
+ {\r
+ st.Bind(2,"true");\r
+ }\r
+ else\r
+ {\r
+ st.Bind(2,"false");\r
+ }\r
st.Step(true);\r
return st.GetLastInsertRowID();\r
} \r
if(boards.size()<=0)\r
{\r
m_log->WriteLog(LogFile::LOGLEVEL_ERROR,"MessageRequester::HandleAllData Message XML did not contain any boards! "+message["Identifier"]);\r
+ // remove this identityid from request list\r
+ RemoveFromRequestList(idparts[1]); \r
return true;\r
}\r
if(xml.GetReplyBoard()=="")\r
{\r
m_log->WriteLog(LogFile::LOGLEVEL_ERROR,"MessageRequester::HandleAllData Message XML did not contain a reply board! "+message["Identifier"]);\r
+ // remove this identityid from request list\r
+ RemoveFromRequestList(idparts[1]); \r
return true;\r
}\r
\r
\r
if(validmessage && savetoboardcount>0)\r
{\r
- st=m_db->Prepare("INSERT INTO tblMessage(IdentityID,FromName,MessageDate,MessageTime,Subject,MessageUUID,ReplyBoardID,Body) VALUES(?,?,?,?,?,?,?,?);");\r
+ st=m_db->Prepare("INSERT INTO tblMessage(IdentityID,FromName,MessageDate,MessageTime,Subject,MessageUUID,ReplyBoardID,Body,MessageIndex) VALUES(?,?,?,?,?,?,?,?,?);");\r
st.Bind(0,identityid);\r
st.Bind(1,GetIdentityName(identityid));\r
st.Bind(2,xml.GetDate());\r
st.Bind(5,xml.GetMessageID());\r
st.Bind(6,GetBoardID(xml.GetReplyBoard()));\r
st.Bind(7,xml.GetBody());\r
+ st.Bind(8,index);\r
inserted=st.Step(true);\r
int messageid=st.GetLastInsertRowID();\r
\r
{\r
m_log->WriteLog(LogFile::LOGLEVEL_WARNING,"Option MaxBoardsPerMessage is currently set at "+tempval+". This value might be incorrectly configured.");\r
}\r
+ Option::Instance()->Get("SaveMessagesFromNewBoards",tempval);\r
+ if(tempval=="true")\r
+ {\r
+ m_savemessagesfromnewboards=true;\r
+ }\r
+ else\r
+ {\r
+ m_savemessagesfromnewboards=false;\r
+ }\r
}\r
\r
void MessageRequester::PopulateIDList()\r