X-Git-Url: https://jfr.im/git/erebus.git/blobdiff_plain/5f42c250f797d8cf1bca89d431134764d97c63fd..3b51ce573ec339152de082d38d87ae0632931215:/modules/contrib/trivia/trivia.sql diff --git a/modules/contrib/trivia/trivia.sql b/modules/contrib/trivia/trivia.sql new file mode 100644 index 0000000..ec8365a --- /dev/null +++ b/modules/contrib/trivia/trivia.sql @@ -0,0 +1,73 @@ +DROP TABLE IF EXISTS trivia_questions; +CREATE TABLE trivia_questions ( + qid int unsigned not null auto_increment, + question varchar(300) not null, + answer varchar(300) not null, + deleted bool not null default 0, + addtime timestamp not null default CURRENT_TIMESTAMP, + modtime timestamp not null, + timesasked int unsigned not null, + asktime timestamp not null on update CURRENT_TIMESTAMP, + author int unsigned not null, + primary key (qid) +); +-- count = SELECT COUNT(questions) FROM questions +-- index = random (0,count] +-- while row_is_empty: +-- row = SELECT question, answer FROM questions WHERE qid = index AND deleted = 0 + +DROP TABLE IF EXISTS trivia_channels; +CREATE TABLE trivia_channels ( + channel varchar(100) not null, + isteam bool default 0, + primary key (channel) +); + +DROP TABLE IF EXISTS trivia_games; +CREATE TABLE trivia_games ( + gid int unsigned not null auto_increment, + startdate timestamp not null default CURRENT_TIMESTAMP, + enddate timestamp not null, + channel int unsigned not null, + maxscore int unsigned not null, + active bool not null default 1, + primary key (gid) +); + +DROP TABLE IF EXISTS trivia_scores; +CREATE TABLE trivia_scores ( + gid int unsigned not null, + pid int unsigned not null, + score int unsigned, + primary key (gid, pid) +); + +DROP TABLE IF EXISTS trivia_players; +CREATE TABLE trivia_players ( + pid int unsigned not null auto_increment, + nick varchar(30) not null, + password char(70), + salt varchar(10), + auth varchar(30) not null, + wins int unsigned not null, + podiums int unsigned not null, + highstreak int unsigned not null, + primary key (pid), + unique key (nick) +); + +DROP TABLE IF EXISTS trivia_teams; +CREATE TABLE trivia_teams ( + tid int unsigned not null auto_increment, + teamname varchar(20) not null, + channel int unsigned not null, + primary key (tid) +); + +DROP TABLE IF EXISTS trivia_team_players; +CREATE TABLE trivia_team_players ( + tid int unsigned not null, + pid int unsigned not null, + captain bool not null, + primary key (tid, pid) +);