+ if(validmessage && savetoboardcount>0)\r
+ {\r
+ std::string nntpbody="";\r
+ nntpbody=xml.GetBody();\r
+\r
+ //add file keys/sizes to body\r
+ std::vector<MessageXML::fileattachment> fileattachments=xml.GetFileAttachments();\r
+ if(fileattachments.size()>0)\r
+ {\r
+ nntpbody+="\r\nAttachments";\r
+ }\r
+ for(std::vector<MessageXML::fileattachment>::iterator i=fileattachments.begin(); i!=fileattachments.end(); i++)\r
+ {\r
+ std::string sizestr="0";\r
+ StringFunctions::Convert((*i).m_size,sizestr);\r
+\r
+ nntpbody+="\r\n"+(*i).m_key;\r
+ nntpbody+="\r\n"+sizestr+" bytes";\r
+ nntpbody+="\r\n";\r
+ }\r
+\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(3,xml.GetTime());\r
+ st.Bind(4,xml.GetSubject());\r
+ st.Bind(5,xml.GetMessageID());\r
+ st.Bind(6,GetBoardID(xml.GetReplyBoard(),GetIdentityName(identityid)));\r
+ st.Bind(7,nntpbody);\r
+ st.Bind(8,index);\r
+ inserted=st.Step(true);\r
+ int messageid=st.GetLastInsertRowID();\r
+\r
+ if(inserted==true)\r
+ {\r
+\r
+ st=m_db->Prepare("INSERT INTO tblMessageBoard(MessageID,BoardID) VALUES(?,?);");\r
+ for(std::vector<std::string>::iterator i=boards.begin(); i!=boards.end(); i++)\r
+ {\r
+ if(SaveToBoard((*i)))\r
+ {\r
+ st.Bind(0,messageid);\r
+ st.Bind(1,GetBoardID((*i),GetIdentityName(identityid)));\r
+ st.Step();\r
+ st.Reset();\r
+ }\r
+ }\r
+ st.Finalize();\r
+\r
+ st=m_db->Prepare("INSERT INTO tblMessageReplyTo(MessageID,ReplyToMessageUUID,ReplyOrder) VALUES(?,?,?);");\r
+ for(std::map<long,std::string>::iterator j=replyto.begin(); j!=replyto.end(); j++)\r
+ {\r
+ st.Bind(0,messageid);\r
+ st.Bind(1,(*j).second);\r
+ st.Bind(2,(*j).first);\r
+ st.Step();\r
+ st.Reset();\r
+ }\r
+ st.Finalize();\r
+\r
+ m_log->debug("MessageRequester::HandleAllData parsed Message XML file : "+message["Identifier"]);\r
+\r
+ }\r
+ else // couldn't insert - was already in database\r
+ {\r
+ //m_log->WriteLog(LogFile::LOGLEVEL_ERROR,"MessageRequester::HandleAddData could not insert message into database. "+message["Identifier"]);\r
+ }\r
+\r
+ } // if validmessage\r