create table Variants (
id integer primary key,
name varchar unique,
- description text
+ description text,
+ noProblems boolean
);
create table Users (
sessionToken varchar,
created datetime,
notify boolean,
- newsRead datetime
+ bio text default ''
);
create table Problems (
foreign key (vid) references Variants(id)
);
-create table News (
- id integer primary key,
- uid integer,
- added datetime,
- content text,
- foreign key (uid) references Users(id)
-);
-
create table Challenges (
id integer primary key,
added datetime,
foreign key (vid) references Variants(id)
);
+create table GameStat (
+ vid integer,
+ total integer default 0,
+ foreign key (vid) references Variants(id)
+);
+
create table Games (
id integer primary key,
vid integer,
fenStart varchar, --initial state
fen varchar, --current state
+ white integer,
+ black integer,
score varchar default '*',
scoreMsg varchar,
cadence varchar,
rematchOffer character default '',
deletedByWhite boolean,
deletedByBlack boolean,
- foreign key (vid) references Variants(id)
+ chatReadWhite datetime,
+ chatReadBlack datetime,
+ foreign key (vid) references Variants(id),
+ foreign key (white) references Users(id),
+ foreign key (black) references Users(id)
);
create table Chats (
added datetime
);
--- Store informations about players in a corr game
-create table Players (
- gid integer,
- uid integer,
- color character,
- foreign key (gid) references Games(id),
- foreign key (uid) references Users(id)
-);
-
create table Moves (
gid integer,
squares varchar, --description, appear/vanish/from/to
foreign key (gid) references Games(id)
);
+create index scoreIdx on Games(score);
+
pragma foreign_keys = on;