version 0.2.14
[fms.git] / src / message.cpp
index d7aaf3f..53d8b34 100644 (file)
@@ -729,50 +729,56 @@ const bool Message::StartFreenetInsert()
        MessageXML xml;\r
        int localidentityid=-1;\r
 \r
-       xml.SetMessageID(m_messageuuid);\r
-       xml.SetSubject(m_subject);\r
-       xml.SetBody(m_body);\r
-       xml.SetReplyBoard(m_replyboardname);\r
-       xml.SetDate(m_datetime.Format("%Y-%m-%d"));\r
-       xml.SetTime(m_datetime.Format("%H:%M:%S"));\r
-       \r
        StripAdministrationBoards();\r
-       for(std::vector<std::string>::iterator i=m_boards.begin(); i!=m_boards.end(); i++)\r
-       {\r
-               xml.AddBoard((*i));\r
-       }\r
-       \r
-       for(std::map<long,std::string>::iterator j=m_inreplyto.begin(); j!=m_inreplyto.end(); j++)\r
-       {\r
-               xml.AddInReplyTo((*j).first,(*j).second);\r
-       }\r
 \r
-       localidentityid=FindLocalIdentityID(m_fromname);\r
-       if(localidentityid==-1)\r
+       if(m_boards.size()>0)\r
        {\r
-               return false;\r
-       }\r
 \r
-       SQLite3DB::Statement st=m_db->Prepare("INSERT INTO tblMessageInserts(LocalIdentityID,MessageUUID,MessageXML) VALUES(?,?,?);");\r
-       st.Bind(0,localidentityid);\r
-       st.Bind(1,m_messageuuid);\r
-       st.Bind(2,xml.GetXML());\r
-       st.Step();\r
+               xml.SetMessageID(m_messageuuid);\r
+               xml.SetSubject(m_subject);\r
+               xml.SetBody(m_body);\r
+               xml.SetReplyBoard(m_replyboardname);\r
+               xml.SetDate(m_datetime.Format("%Y-%m-%d"));\r
+               xml.SetTime(m_datetime.Format("%H:%M:%S"));\r
+               \r
+               for(std::vector<std::string>::iterator i=m_boards.begin(); i!=m_boards.end(); i++)\r
+               {\r
+                       xml.AddBoard((*i));\r
+               }\r
+               \r
+               for(std::map<long,std::string>::iterator j=m_inreplyto.begin(); j!=m_inreplyto.end(); j++)\r
+               {\r
+                       xml.AddInReplyTo((*j).first,(*j).second);\r
+               }\r
 \r
-       // insert file attachments into database\r
-       st=m_db->Prepare("INSERT INTO tblFileInserts(MessageUUID,FileName,Size,MimeType,Data) VALUES(?,?,?,?,?);");\r
-       for(std::vector<fileattachment>::iterator i=m_fileattachments.begin(); i!=m_fileattachments.end(); i++)\r
-       {\r
-               st.Bind(0,m_messageuuid);\r
-               st.Bind(1,(*i).m_filename);\r
-               st.Bind(2,(long)(*i).m_data.size());\r
-               st.Bind(3,(*i).m_mimetype);\r
-               st.Bind(4,&((*i).m_data[0]),(*i).m_data.size());\r
+               localidentityid=FindLocalIdentityID(m_fromname);\r
+               if(localidentityid==-1)\r
+               {\r
+                       return false;\r
+               }\r
+\r
+               SQLite3DB::Statement st=m_db->Prepare("INSERT INTO tblMessageInserts(LocalIdentityID,MessageUUID,MessageXML) VALUES(?,?,?);");\r
+               st.Bind(0,localidentityid);\r
+               st.Bind(1,m_messageuuid);\r
+               st.Bind(2,xml.GetXML());\r
                st.Step();\r
-               st.Reset();\r
-       }\r
 \r
-       HandleChangeTrust();\r
+               // insert file attachments into database\r
+               st=m_db->Prepare("INSERT INTO tblFileInserts(MessageUUID,FileName,Size,MimeType,Data) VALUES(?,?,?,?,?);");\r
+               for(std::vector<fileattachment>::iterator i=m_fileattachments.begin(); i!=m_fileattachments.end(); i++)\r
+               {\r
+                       st.Bind(0,m_messageuuid);\r
+                       st.Bind(1,(*i).m_filename);\r
+                       st.Bind(2,(long)(*i).m_data.size());\r
+                       st.Bind(3,(*i).m_mimetype);\r
+                       st.Bind(4,&((*i).m_data[0]),(*i).m_data.size());\r
+                       st.Step();\r
+                       st.Reset();\r
+               }\r
+\r
+               HandleChangeTrust();\r
+\r
+       }\r
 \r
        return true;\r
 \r