Add new models ColumnMoveRestrictionModel and ProjectRoleModel

This commit is contained in:
Frederic Guillot
2016-09-07 22:40:38 -04:00
parent 102de7e386
commit dded773749
7 changed files with 417 additions and 3 deletions

View File

@@ -6,7 +6,35 @@ use Kanboard\Core\Security\Token;
use Kanboard\Core\Security\Role;
use PDO;
const VERSION = 103;
const VERSION = 104;
function version_104(PDO $pdo)
{
$pdo->exec("
CREATE TABLE project_has_roles (
role_id INTEGER PRIMARY KEY,
role TEXT NOT NULL,
project_id INTEGER NOT NULL,
UNIQUE(project_id, role),
FOREIGN KEY(project_id) REFERENCES projects(id) ON DELETE CASCADE
)
");
$pdo->exec("
CREATE TABLE column_has_move_restrictions (
restriction_id INTEGER PRIMARY KEY,
project_id INTEGER NOT NULL,
role_id INTEGER NOT NULL,
src_column_id INTEGER NOT NULL,
dst_column_id INTEGER NOT NULL,
UNIQUE(role_id, src_column_id, dst_column_id),
FOREIGN KEY(project_id) REFERENCES projects(id) ON DELETE CASCADE,
FOREIGN KEY(role_id) REFERENCES project_has_roles(role_id) ON DELETE CASCADE,
FOREIGN KEY(src_column_id) REFERENCES columns(id) ON DELETE CASCADE,
FOREIGN KEY(dst_column_id) REFERENCES columns(id) ON DELETE CASCADE
)
");
}
function version_103(PDO $pdo)
{