diff options
author | Matthias Andreas Benkard <code@mail.matthias.benkard.de> | 2012-04-09 15:05:27 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <code@mail.matthias.benkard.de> | 2012-04-09 15:05:27 +0200 |
commit | e3aee2b049c46599b3e8f7552bd33ea162e485ab (patch) | |
tree | 043a97f2452cecef526baf6fdede68b94cdfae3b /schema.sql | |
parent | eec1fa16980cfc91b9fe69e4840f9cfb2f535167 (diff) |
Add Lafargue subsite (lazy chat functionality).
Diffstat (limited to 'schema.sql')
-rw-r--r-- | schema.sql | 30 |
1 files changed, 30 insertions, 0 deletions
@@ -85,5 +85,35 @@ CREATE TABLE bookmark_tags( FOREIGN KEY(bookmark) REFERENCES bookmarks ); + +CREATE TABLE lazychat_messages( + id SERIAL NOT NULL, + author INTEGER, + date TIMESTAMP WITH TIME ZONE DEFAULT now(), + content VARCHAR, + visibility VARCHAR NOT NULL, + format VARCHAR NOT NULL, + PRIMARY KEY(id), + FOREIGN KEY(author) REFERENCES users, + CHECK (format IN ('markdown')), + CHECK (visibility IN ('personal', 'protected', 'public')) +); + +CREATE TABLE lazychat_targets( + message INTEGER NOT NULL, + target INTEGER NOT NULL, + PRIMARY KEY(message, target), + FOREIGN KEY(message) REFERENCES lazychat_messages, + FOREIGN KEY(target) REFERENCES users +); + +CREATE TABLE lazychat_references( + referrer INTEGER NOT NULL, + referee INTEGER NOT NULL, + PRIMARY KEY(referrer, referee), + FOREIGN KEY(referrer) REFERENCES lazychat_messages, + FOREIGN KEY(referee) REFERENCES lazychat_messages +); + ROLLBACK; --COMMIT; |