You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.8 KiB
83 lines
2.8 KiB
-- Create `accounts` table
|
|
CREATE TABLE IF NOT EXISTS `accounts` (
|
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
|
`login_name` varchar(50) NOT NULL,
|
|
`user_name` varchar(50) NOT NULL,
|
|
`password` varchar(255) NOT NULL,
|
|
`email` varchar(100) NOT NULL,
|
|
`admin` TINYINT NOT NULL DEFAULT '0',
|
|
`lang` CHAR(3) NOT NULL DEFAULT 'eng',
|
|
`disabled` INT NOT NULL DEFAULT '0',
|
|
`last_login` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
|
|
|
|
ALTER TABLE `accounts` ADD UNIQUE `unique_login_name`(`login_name`);
|
|
|
|
-- Insert initial admin account if it doesn't exist
|
|
INSERT INTO `accounts` (`id`, `login_name`, `user_name`, `password`, `email`, `admin`, `lang`, `last_login`)
|
|
SELECT 1, 'admin', 'My name', '$2y$10$SfhYIDtn.iOuCW7zfoFLuuZHX6lja4lF4XA4JqNmpiH/.P3zB8JCa', 'admin@mysite.com', 1, 'eng', '0000-00-00 00:00:00'
|
|
WHERE NOT EXISTS (SELECT 1 FROM `accounts` WHERE `id` = 1);
|
|
|
|
-- Create `user_permission` table
|
|
CREATE TABLE IF NOT EXISTS `user_permission` (
|
|
`id` INT NOT NULL AUTO_INCREMENT,
|
|
`function` VARCHAR(50),
|
|
`permission_lvl` INT NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`, `function`)
|
|
);
|
|
|
|
-- Insert admin permissions
|
|
INSERT INTO `user_permission` (`id`, `function`, `permission_lvl`)
|
|
SELECT 1, 'fyrk_project', 100
|
|
WHERE NOT EXISTS (SELECT 1 FROM `user_permission` WHERE `id` = 1 AND `function` = 'fyrk_project');
|
|
|
|
-- Create `fyrk_projects` table
|
|
CREATE TABLE IF NOT EXISTS `fyrk_projects` (
|
|
`id` INT NOT NULL AUTO_INCREMENT,
|
|
`date` DATE NOT NULL,
|
|
`name` VARCHAR(50) NOT NULL,
|
|
`owner` INT NOT NULL,
|
|
`project_status` INT NOT NULL DEFAULT '0',
|
|
`edited` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`)
|
|
);
|
|
|
|
-- Create `fyrk_project_tasks` table
|
|
CREATE TABLE IF NOT EXISTS `fyrk_project_tasks` (
|
|
`task_id` INT NOT NULL AUTO_INCREMENT,
|
|
`project_id` INT NOT NULL,
|
|
`name` VARCHAR(60) NOT NULL,
|
|
`owner` INT NOT NULL,
|
|
`end_date` DATE NOT NULL,
|
|
`status` INT NOT NULL DEFAULT '0',
|
|
`description` TEXT NOT NULL,
|
|
`options` TEXT,
|
|
`reminder_active` TINYINT NOT NULL DEFAULT '0',
|
|
`reminder_sent` DATE NOT NULL DEFAULT '0000-00-00',
|
|
`changed_by` INT NOT NULL,
|
|
PRIMARY KEY (`task_id`)
|
|
);
|
|
|
|
-- Create `scheduler_log` table
|
|
CREATE TABLE IF NOT EXISTS `scheduler_log` (
|
|
`scheduler_log_id` INT NOT NULL AUTO_INCREMENT,
|
|
`datetime` DATETIME NOT NULL,
|
|
`name` VARCHAR(50) NOT NULL,
|
|
`info` TEXT NOT NULL,
|
|
PRIMARY KEY (`scheduler_log_id`)
|
|
);
|
|
|
|
-- Create `site_settings` table
|
|
CREATE TABLE IF NOT EXISTS `site_settings` (
|
|
`setting_id` INT NOT NULL AUTO_INCREMENT,
|
|
`function` VARCHAR(50) NOT NULL,
|
|
`part` VARCHAR(50) NOT NULL,
|
|
`setting_name` VARCHAR(100) NOT NULL,
|
|
`value1` VARCHAR(255) NOT NULL,
|
|
`value2` VARCHAR(255),
|
|
`array` TEXT,
|
|
`int_value` INT NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`setting_id`)
|
|
);
|