version 0.2.11
[fms.git] / include / message.h
index 1fe1216..625aa22 100644 (file)
@@ -22,6 +22,8 @@ public:
        std::vector<std::string> GetBoards() const              { return m_boards; }\r
        std::map<long,std::string> GetInReplyTo() const { return m_inreplyto; }\r
 \r
+       void SetFromName(const std::string &fromname)   { m_fromname=fromname; }\r
+\r
        const std::string GetNNTPHeaders() const;\r
        const std::string GetNNTPArticleID() const;\r
        const std::string GetNNTPBody() const;\r
@@ -44,12 +46,28 @@ public:
        \r
        const bool ParseNNTPMessage(const std::string &nntpmessage);\r
 \r
-       void StartFreenetInsert();\r
+       const bool PostedToAdministrationBoard()                { return CheckForAdministrationBoard(m_boards); }\r
+\r
+       const bool StartFreenetInsert();\r
+       void HandleAdministrationMessage();\r
 \r
 private:\r
        void Initialize();\r
+       // checks vector of boards for any special administration boards - if it finds one true is returned, otherwise false\r
+       const bool CheckForAdministrationBoard(const std::vector<std::string> &boards);\r
+       void HandleChangeTrust();\r
+       void StripAdministrationBoards();       // removes administration boards from boards vector\r
+       const int FindLocalIdentityID(const std::string &name);\r
+\r
+       struct fileattachment\r
+       {\r
+               fileattachment(const std::string &filename, const std::vector<unsigned char> &data):m_filename(filename),m_data(data)   {}\r
+               std::string m_filename;\r
+               std::vector<unsigned char> m_data;\r
+       };\r
 \r
        long m_messageid;\r
+       bool m_addnewpostfromidentities;\r
        std::string m_messageuuid;\r
        std::string m_subject;\r
        std::string m_body;\r
@@ -58,6 +76,10 @@ private:
        std::string m_fromname;\r
        std::vector<std::string> m_boards;\r
        std::map<long,std::string> m_inreplyto;\r
+       std::vector<fileattachment> m_fileattachments;\r
+       long m_changemessagetrustonreply;\r
+       long m_minlocalmessagetrust;\r
+       long m_minlocaltrustlisttrust;\r
 \r
 };\r
 \r