diff --git a/install/create_tables-innodb.sql b/install/create_tables-innodb.sql index 082d27bd4..030368c09 100644 --- a/install/create_tables-innodb.sql +++ b/install/create_tables-innodb.sql @@ -29,6 +29,9 @@ CREATE TABLE `tblUsers` ( `comment` text NOT NULL, `role` smallint(1) NOT NULL default '0', `hidden` smallint(1) NOT NULL default '0', + `pwdExpiration` datetime NOT NULL default '0000-00-00 00:00:00'; + `loginfailures` tinyint(4) NOT NULL default '0', + `disabled` smallint(1) NOT NULL default '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; @@ -43,11 +46,27 @@ CREATE TABLE `tblUserPasswordRequest` ( `userID` int(11) NOT NULL default '0', `hash` varchar(50) default NULL, `date` datetime NOT NULL default '0000-00-00 00:00:00', - PRIMARY KEY (`id`) + PRIMARY KEY (`id`), + CONSTRAINT `tblUserPasswordRequest_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- +-- +-- Table structure for table `tblUserPasswordHistory` +-- + +CREATE TABLE `tblUserPasswordHistory` ( + `id` int(11) NOT NULL auto_increment, + `userID` int(11) NOT NULL default '0', + `pwd` varchar(50) default NULL, + `date` datetime NOT NULL default '0000-00-00 00:00:00', + PRIMARY KEY (`id`), + CONSTRAINT `tblUserPasswordHistory_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE +) DEFAULT CHARSET=utf8; + +-- -------------------------------------------------------- + -- -- Table structure for table `tblUserImages` -- @@ -58,7 +77,7 @@ CREATE TABLE `tblUserImages` ( `image` blob NOT NULL, `mimeType` varchar(10) NOT NULL default '', PRIMARY KEY (`id`), - CONSTRAINT `tblUserImages_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblUserImages_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -80,7 +99,7 @@ CREATE TABLE `tblFolders` ( `sequence` double NOT NULL default '0', PRIMARY KEY (`id`), KEY `parent` (`parent`), - CONSTRAINT `tblFolders_owner` FOREIGN KEY (`owner`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblFolders_owner` FOREIGN KEY (`owner`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -104,8 +123,8 @@ CREATE TABLE `tblDocuments` ( `keywords` text NOT NULL, `sequence` double NOT NULL default '0', PRIMARY KEY (`id`), - CONSTRAINT `tblDocuments_folder` FOREIGN KEY (`folder`) REFERENCES `tblFolders` (`id`) ON DELETE CASCADE, - CONSTRAINT `tblDocuments_owner` FOREIGN KEY (`owner`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocuments_folder` FOREIGN KEY (`folder`) REFERENCES `tblFolders` (`id`) ON DELETE CASCADE, + CONSTRAINT `tblDocuments_owner` FOREIGN KEY (`owner`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -122,7 +141,7 @@ CREATE TABLE `tblDocumentApprovers` ( `required` int(11) NOT NULL default '0', PRIMARY KEY (`approveID`), UNIQUE KEY `documentID` (`documentID`,`version`,`type`,`required`), - CONSTRAINT `tblDocumentApprovers_document` FOREIGN KEY (`documentID`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentApprovers_document` FOREIGN KEY (`documentID`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -139,8 +158,8 @@ CREATE TABLE `tblDocumentApproveLog` ( `date` datetime NOT NULL default '0000-00-00 00:00:00', `userID` int(11) NOT NULL default '0', PRIMARY KEY (`approveLogID`), - CONSTRAINT `tblDocumentApproveLog_approve` FOREIGN KEY (`approveID`) REFERENCES `tblDocumentApprovers` (`approveID`) ON DELETE CASCADE, - CONSTRAINT `tblDocumentApproveLog_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentApproveLog_approve` FOREIGN KEY (`approveID`) REFERENCES `tblDocumentApprovers` (`approveID`) ON DELETE CASCADE, + CONSTRAINT `tblDocumentApproveLog_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -160,7 +179,7 @@ CREATE TABLE `tblDocumentContent` ( `fileType` varchar(10) NOT NULL default '', `mimeType` varchar(100) NOT NULL default '', UNIQUE (`document`, `version`), - CONSTRAINT `tblDocumentDocument_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentDocument_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -176,8 +195,8 @@ CREATE TABLE `tblDocumentLinks` ( `userID` int(11) NOT NULL default '0', `public` tinyint(1) NOT NULL default '0', PRIMARY KEY (`id`), - CONSTRAINT `tblDocumentLinks_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE, - CONSTRAINT `tblDocumentLinks_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentLinks_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE, + CONSTRAINT `tblDocumentLinks_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -198,8 +217,8 @@ CREATE TABLE `tblDocumentFiles` ( `fileType` varchar(10) NOT NULL default '', `mimeType` varchar(100) NOT NULL default '', PRIMARY KEY (`id`), - CONSTRAINT `tblDocumentFiles_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE, - CONSTRAINT `tblDocumentFiles_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentFiles_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE, + CONSTRAINT `tblDocumentFiles_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; @@ -214,8 +233,8 @@ CREATE TABLE `tblDocumentLocks` ( `document` int(11) NOT NULL default '0', `userID` int(11) NOT NULL default '0', PRIMARY KEY (`document`), - CONSTRAINT `tblDocumentLocks_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE, - CONSTRAINT `tblDocumentLocks_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentLocks_document` FOREIGN KEY (`document`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE, + CONSTRAINT `tblDocumentLocks_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -232,7 +251,7 @@ CREATE TABLE `tblDocumentReviewLog` ( `date` datetime NOT NULL default '0000-00-00 00:00:00', `userID` int(11) NOT NULL default '0', PRIMARY KEY (`reviewLogID`), - CONSTRAINT `tblDocumentReviewLog_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentReviewLog_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -249,7 +268,7 @@ CREATE TABLE `tblDocumentReviewers` ( `required` int(11) NOT NULL default '0', PRIMARY KEY (`reviewID`), UNIQUE KEY `documentID` (`documentID`,`version`,`type`,`required`), - CONSTRAINT `tblDocumentReviewers_document` FOREIGN KEY (`documentID`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentReviewers_document` FOREIGN KEY (`documentID`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -264,7 +283,7 @@ CREATE TABLE `tblDocumentStatus` ( `version` smallint(5) unsigned NOT NULL default '0', PRIMARY KEY (`statusID`), UNIQUE KEY `documentID` (`documentID`,`version`), - CONSTRAINT `tblDocumentStatus_document` FOREIGN KEY (`documentID`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentStatus_document` FOREIGN KEY (`documentID`) REFERENCES `tblDocuments` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -282,8 +301,8 @@ CREATE TABLE `tblDocumentStatusLog` ( `userID` int(11) NOT NULL default '0', PRIMARY KEY (`statusLogID`), KEY `statusID` (`statusID`), - CONSTRAINT `tblDocumentStatusLog_status` FOREIGN KEY (`statusID`) REFERENCES `tblDocumentStatus` (`statusID`) ON DELETE CASCADE, - CONSTRAINT `tblDocumentStatusLog_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblDocumentStatusLog_status` FOREIGN KEY (`statusID`) REFERENCES `tblDocumentStatus` (`statusID`) ON DELETE CASCADE, + CONSTRAINT `tblDocumentStatusLog_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -336,7 +355,7 @@ CREATE TABLE `tblKeywords` ( `category` int(11) NOT NULL default '0', `keywords` text NOT NULL, PRIMARY KEY (`id`), - CONSTRAINT `tblKeywords_category` FOREIGN KEY (`category`) REFERENCES `tblKeywordCategories` (`id`) ON DELETE CASCADE + CONSTRAINT `tblKeywords_category` FOREIGN KEY (`category`) REFERENCES `tblKeywordCategories` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -389,7 +408,7 @@ CREATE TABLE `tblSessions` ( `theme` varchar(30) NOT NULL default '', `language` varchar(30) NOT NULL default '', PRIMARY KEY (`id`), - CONSTRAINT `tblSessions_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE + CONSTRAINT `tblSessions_user` FOREIGN KEY (`userID`) REFERENCES `tblUsers` (`id`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -474,5 +493,5 @@ CREATE TABLE `tblVersion` ( INSERT INTO tblUsers VALUES (1, 'admin', '21232f297a57a5a743894a0e4a801fc3', 'Administrator', 'address@server.com', '', '', '', 1, 0); INSERT INTO tblUsers VALUES (2, 'guest', NULL, 'Guest User', NULL, '', '', '', 2, 0); INSERT INTO tblFolders VALUES (1, 'DMS', 0, '', 'DMS root', UNIX_TIMESTAMP(), 1, 0, 2, 0); -INSERT INTO tblVersion VALUES (NOW(), 3, 3, 0); +INSERT INTO tblVersion VALUES (NOW(), 3, 4, 0); INSERT INTO tblCategory VALUES (0, '');