f5802525450bc12fd7fdc16379819a7451be7d15
[platal.git] / upgrade / account / 00_account.sql
1 CREATE TABLE accounts (
2 # Account identifier and type
3 uid int(6) not null auto_increment,
4 hruid varchar(255) not NULL,
5
6 # Account type and state
7 type varchar(16) default null,
8 is_admin bool default false,
9 state enum('pending', 'active', 'disabled') not null default 'pending',
10
11 # Access
12 password char(40) default null,
13 token varchar(32) default null,
14 weak_password varchar(256) default null,
15 registration_date datetime not null,
16
17 # Administrative tools
18 flags set('watch') not null default '',
19 comment varchar(255) default null,
20
21 # User settings
22 email varchar(255) default null,
23 full_name varchar(255) default null,
24 display_name varchar(255) default null,
25 sex enum('female', 'male') not null default 'male',
26 email_format enum('text', 'html') not null default 'html',
27 skin varchar(32) default null,
28 last_version varchar(16) not null,
29
30 primary key uid (uid),
31 unique key hruid (hruid),
32 key full_name (full_name),
33 key state (state),
34 key type (type)
35 ) ENGINE=InnoDB, CHARSET=utf8;
36
37 CREATE TABLE account_types (
38 type varchar(16) not null,
39 perms set('mail', 'groups', 'forums', 'list', 'search', 'portal') default '',
40
41 primary key type (type)
42 ) ENGINE=InnoDB, CHARSET=utf8;
43
44 CREATE TABLE account_profiles (
45 uid int(6) not null,
46 pid int(6) not null,
47 perms set('owner') not null default '',
48
49 primary key id (uid, pid),
50 key uid (uid),
51 key pid (pid)
52 ) ENGINE=InnoDB, CHARSET=utf8;
53
54 # vim:set syntax=mysql: