From a750b8ab2a0cb715da6fd9025a7ec8375db68a4d Mon Sep 17 00:00:00 2001 From: Frédéric Guillot Date: Wed, 21 May 2014 22:33:57 -0400 Subject: Add categories for projects and tasks --- schemas/mysql.php | 16 ++++++++++++++++ schemas/sqlite.php | 15 +++++++++++++++ 2 files changed, 31 insertions(+) (limited to 'schemas') diff --git a/schemas/mysql.php b/schemas/mysql.php index 46f56e7b..eb869465 100644 --- a/schemas/mysql.php +++ b/schemas/mysql.php @@ -2,6 +2,22 @@ namespace Schema; +function version_16($pdo) +{ + $pdo->exec(" + CREATE TABLE project_has_categories ( + id INT NOT NULL AUTO_INCREMENT, + name VARCHAR(255), + project_id INT, + PRIMARY KEY (id), + UNIQUE KEY `idx_project_category` (project_id, name), + FOREIGN KEY(project_id) REFERENCES projects(id) ON DELETE CASCADE + ) ENGINE=InnoDB CHARSET=utf8" + ); + + $pdo->exec("ALTER TABLE tasks ADD COLUMN category_id INT DEFAULT 0"); +} + function version_15($pdo) { $pdo->exec("ALTER TABLE projects ADD COLUMN last_modified INT DEFAULT 0"); diff --git a/schemas/sqlite.php b/schemas/sqlite.php index 94580235..b444faa5 100644 --- a/schemas/sqlite.php +++ b/schemas/sqlite.php @@ -2,6 +2,21 @@ namespace Schema; +function version_16($pdo) +{ + $pdo->exec(" + CREATE TABLE project_has_categories ( + id INTEGER PRIMARY KEY, + name TEXT COLLATE NOCASE, + project_id INT, + UNIQUE (project_id, name), + FOREIGN KEY(project_id) REFERENCES projects(id) ON DELETE CASCADE + )" + ); + + $pdo->exec("ALTER TABLE tasks ADD COLUMN category_id INTEGER DEFAULT 0"); +} + function version_15($pdo) { $pdo->exec("ALTER TABLE projects ADD COLUMN last_modified INTEGER DEFAULT 0"); -- cgit v1.2.3