diff options
author | Lukas Fleischer <lfleischer@archlinux.org> | 2017-04-27 09:24:11 +0200 |
---|---|---|
committer | Lukas Fleischer <lfleischer@archlinux.org> | 2017-04-30 16:47:13 +0200 |
commit | a8ac2004d3f25877d9e7b4fa58f10009c39f8acf (patch) | |
tree | 968cb95c2e7617608f15ccece4823ea4006c59cf /schema | |
parent | 6892ec7791bf04361ac2973b38d0025b50fa4727 (diff) | |
download | aur-a8ac2004d3f25877d9e7b4fa58f10009c39f8acf.tar.gz aur-a8ac2004d3f25877d9e7b4fa58f10009c39f8acf.tar.xz |
Add support for Terms of Service documents
This allows for adding Terms of Service documents to the database that
registered users need to accept before using the AUR. A revision field
can be used to indicate whether a document was updated. If it is
increased, all users are again asked to accept the new terms.
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
Diffstat (limited to 'schema')
-rw-r--r-- | schema/aur-schema.sql | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/schema/aur-schema.sql b/schema/aur-schema.sql index e5841652..45272bbe 100644 --- a/schema/aur-schema.sql +++ b/schema/aur-schema.sql @@ -379,3 +379,23 @@ CREATE TABLE Bans ( BanTS TIMESTAMP NOT NULL, PRIMARY KEY (IPAddress) ) ENGINE = InnoDB; + +-- Terms and Conditions +-- +CREATE TABLE Terms ( + ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + Description VARCHAR(255) NOT NULL, + URL VARCHAR(8000) NOT NULL, + Revision INTEGER UNSIGNED NOT NULL DEFAULT 1, + PRIMARY KEY (ID) +) ENGINE = InnoDB; + +-- Terms and Conditions accepted by users +-- +CREATE TABLE AcceptedTerms ( + UsersID INTEGER UNSIGNED NOT NULL, + TermsID INTEGER UNSIGNED NOT NULL, + Revision INTEGER UNSIGNED NOT NULL DEFAULT 0, + FOREIGN KEY (UsersID) REFERENCES Users(ID) ON DELETE CASCADE, + FOREIGN KEY (TermsID) REFERENCES Terms(ID) ON DELETE CASCADE +) ENGINE = InnoDB; |