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

-- 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`)
);

Powered by TurnKey Linux.