version 0.0.4
[fms.git] / src / identitytestglobal.cpp
index 4b40288..985cb3f 100644 (file)
@@ -126,6 +126,45 @@ void SetupDB()
                                TrustListTrust          INTEGER CHECK(TrustListTrust BETWEEN 0 AND 100)\\r
                                );");\r
 \r
+       db->Execute("CREATE TABLE IF NOT EXISTS tblBoard(\\r
+                               BoardID                         INTEGER PRIMARY KEY,\\r
+                               BoardName                       TEXT UNIQUE,\\r
+                               BoardDescription        TEXT,\\r
+                               DateAdded                       DATETIME\\r
+                               );");\r
+\r
+       db->Execute("INSERT INTO tblBoard(BoardName,BoardDescription,DateAdded) VALUES('fms','Freenet Message System','2007-12-01');");\r
+       db->Execute("INSERT INTO tblBoard(BoardName,BoardDescription,DateAdded) VALUES('freenet','Discussion about Freenet','2007-12-01');");\r
+       db->Execute("INSERT INTO tblBoard(BoardName,BoardDescription,DateAdded) VALUES('public','Public discussion','2007-12-01');");\r
+       db->Execute("INSERT INTO tblBoard(BoardName,BoardDescription,DateAdded) VALUES('test','Test board','2007-12-01');");\r
+\r
+       db->Execute("CREATE TABLE IF NOT EXISTS tblMessage(\\r
+                               MessageID                       INTEGER PRIMARY KEY,\\r
+                               MessageDate                     DATE,\\r
+                               MessageTime                     TIME,\\r
+                               Subject                         TEXT,\\r
+                               MessageUUID                     TEXT UNIQUE,\\r
+                               ReplyBoardID            INTEGER,\\r
+                               Body                            TEXT\\r
+                               );");\r
+\r
+       db->Execute("CREATE TABLE IF NOT EXISTS tblMessageReplyTo(\\r
+                               MessageID                       INTEGER,\\r
+                               ReplyToMessageID        INTEGER,\\r
+                               Order                           INTEGER\\r
+                               );");\r
+       \r
+       db->Execute("CREATE TABLE IF NOT EXISTS tblMessageBoard(\\r
+                               MessageID                       INTEGER,\\r
+                               BoardID                         INTEGER\\r
+                               );");\r
+\r
+       // low / high / message count for each board\r
+       db->Execute("CREATE VIEW IF NOT EXISTS vwBoardStats AS \\r
+                               SELECT tblBoard.BoardID AS 'BoardID', IFNULL(MIN(MessageID),0) AS 'LowMessageID', IFNULL(MAX(MessageID),0) AS 'HighMessageID', COUNT(MessageID) AS 'MessageCount' \\r
+                               FROM tblBoard LEFT JOIN tblMessageBoard ON tblBoard.BoardID=tblMessageBoard.BoardID \\r
+                               GROUP BY tblBoard.BoardID;");\r
+\r
        // calculates peer trust\r
        db->Execute("CREATE VIEW IF NOT EXISTS vwCalculatedPeerTrust AS \\r
                                SELECT TargetIdentityID, \\r