/* $Id: schema-sqlite.txt 22799 2006-06-19 19:52:34Z leeh $ */

CREATE TABLE nicks (
	nickname TEXT,
	username TEXT,
	reg_time INTEGER,
	last_time INTEGER,
	flags INTEGER,
	PRIMARY KEY(nickname)
);

CREATE TABLE users (
	username TEXT,
	password TEXT,
	email TEXT,
	suspender TEXT,
	suspend_reason TEXT,
	reg_time INTEGER,
	last_time INTEGER,
	flags INTEGER,
	verify_token TEXT,
	PRIMARY KEY(username)
);

CREATE TABLE users_resetpass (
	username TEXT,
	token TEXT,
	time INTEGER,
	PRIMARY KEY(username)
);

CREATE TABLE users_resetemail (
	username TEXT,
	token TEXT,
	email TEXT DEFAULT NULL,
	time INTEGER,
	PRIMARY KEY(username)
);

CREATE TABLE users_sync (
	id INTEGER PRIMARY KEY,
	hook TEXT,
	data TEXT
);

CREATE TABLE channels (
	chname TEXT,
	topic TEXT,
	url TEXT,
	createmodes TEXT,
	enforcemodes TEXT,
	tsinfo INTEGER,
	reg_time INTEGER,
	last_time INTEGER,
	flags INTEGER,
	suspender TEXT,
	suspend_reason TEXT,
	PRIMARY KEY(chname)
);

CREATE TABLE channels_dropowner (
	chname TEXT,
	token TEXT,
	time INTEGER,
	PRIMARY KEY(chname)
);

CREATE TABLE members (
	chname TEXT,
	username TEXT,
	lastmod TEXT,
	level INTEGER,
	flags INTEGER,
	suspend INTEGER,
	FOREIGN KEY(chname) REFERENCES channels (chname) MATCH FULL,
	FOREIGN KEY(username) REFERENCES users (username) MATCH FULL	
);

CREATE TABLE bans (
	chname TEXT,
	mask TEXT,
	reason TEXT,
	username TEXT,
	level INTEGER,
	hold INTEGER,
	FOREIGN KEY(chname) REFERENCES channels (chname) MATCH FULL
);

CREATE TABLE operbot (
	chname TEXT,
	tsinfo INTEGER,
	oper TEXT
);

CREATE TABLE operserv (
	chname TEXT,
	tsinfo INTEGER,
	oper TEXT
);

CREATE TABLE jupes (
	servername TEXT,
	reason TEXT
);

CREATE TABLE operbans (
	type TEXT,
	mask TEXT,
	reason TEXT,
	operreason TEXT,
	hold INTEGER,
	create_time INTEGER,
	oper TEXT,
	remove INTEGER,
	flags INTEGER
);

CREATE TABLE global_welcome (
	id INTEGER,
	text TEXT,
	PRIMARY KEY(id)
);

CREATE TABLE email_banned_domain (
	domain TEXT,
	PRIMARY KEY(domain)
);

