+ st.Bind(0,identityid);\r
+ st.Bind(1,xml.GetDate(i));\r
+ st.Bind(2,xml.GetIndex(i));\r
+ st.Step();\r
+ if(st.RowReturned()==false)\r
+ {\r
+ mst.Bind(0,identityid);\r
+ mst.Bind(1,xml.GetDate(i));\r
+ mst.Bind(2,xml.GetIndex(i));\r
+ mst.Step();\r
+ mst.Reset();\r
+ }\r
+ st.Reset();\r
+ }\r
+ else\r
+ {\r
+ m_log->trace("MessageListRequester::HandleAllData will not download message posted to "+boardsstr);\r
+ }\r
+ }\r
+\r
+ // insert external message indexes\r
+ for(long i=0; i<xml.ExternalMessageCount(); i++)\r
+ {\r
+ if(xml.GetExternalType(i)=="Keyed")\r
+ {\r
+ // go through each board the message was posted to and see if we are saving messages to that board\r
+ // if the board isn't found, see if we are saving messages to new boards\r
+ boardsstr="";\r
+ addmessage=false;\r
+ std::vector<std::string> messageboards=xml.GetExternalBoards(i);\r
+ for(std::vector<std::string>::iterator j=messageboards.begin(); j!=messageboards.end(); j++)\r
+ {\r
+ if(boards.find((*j))!=boards.end())\r
+ {\r
+ if(boards[(*j)]==true)\r
+ {\r
+ addmessage=true;\r
+ }\r
+ }\r
+ else if(m_savetonewboards==true)\r
+ {\r
+ addmessage=true;\r
+ }\r
+ if(j!=messageboards.begin())\r
+ {\r
+ boardsstr+=", ";\r
+ }\r
+ boardsstr+=(*j);\r
+ }\r
+\r
+ if(addmessage==true)\r
+ {\r
+ spk.Bind(0,xml.GetExternalIdentity(i));\r
+ spk.Step();\r
+ if(spk.RowReturned())\r
+ {\r
+ int thisidentityid=0;\r
+ spk.ResultInt(0,thisidentityid);\r
+ mst.Bind(0,thisidentityid);\r
+ mst.Bind(1,xml.GetExternalDate(i));\r
+ mst.Bind(2,xml.GetExternalIndex(i));\r
+ mst.Step();\r
+ mst.Reset();\r
+ }\r
+ spk.Reset();\r
+ }\r
+ else\r
+ {\r
+ m_log->trace("MessageListRequester::HandleAllData will not download external message posted to "+boardsstr+" from " + xml.GetExternalIdentity(i));\r
+ }\r