diff --git a/app/modules/web/Controllers/ErrorController.php b/app/modules/web/Controllers/ErrorController.php index 7fd26f6d..9f3be1f6 100644 --- a/app/modules/web/Controllers/ErrorController.php +++ b/app/modules/web/Controllers/ErrorController.php @@ -61,12 +61,12 @@ class ErrorController */ public function __construct(Container $container, $actionName) { + $this->router = $container->get(Klein::class); + $this->view = $container->get(Template::class); $this->view->setBase('error'); - $this->router = $container->get(Klein::class); $this->layoutHelper = $container->get(LayoutHelper::class); - $this->layoutHelper->getPublicLayout('error'); } /** diff --git a/lib/SP/Services/Install/MySQL.php b/lib/SP/Services/Install/MySQL.php index c1266bcd..890af3a9 100644 --- a/lib/SP/Services/Install/MySQL.php +++ b/lib/SP/Services/Install/MySQL.php @@ -30,7 +30,7 @@ use SP\Core\Exceptions\SPException; use SP\Storage\DatabaseConnectionData; use SP\Storage\DBUtil; use SP\Storage\FileHandler; -use SP\Storage\MysqlFileParser; +use SP\Storage\MySQLFileParser; use SP\Storage\MySQLHandler; use SP\Util\Util; @@ -296,7 +296,7 @@ class MySQL implements DatabaseSetupInterface } - foreach ((new MysqlFileParser()) + foreach ((new MySQLFileParser()) ->parse(new FileHandler($fileName)) as $query) { try { $dbc->exec($query); diff --git a/lib/SP/Services/Upgrade/UpgradeDatabaseService.php b/lib/SP/Services/Upgrade/UpgradeDatabaseService.php index 9d6450e5..25cba74e 100644 --- a/lib/SP/Services/Upgrade/UpgradeDatabaseService.php +++ b/lib/SP/Services/Upgrade/UpgradeDatabaseService.php @@ -32,7 +32,7 @@ use SP\Storage\Database; use SP\Storage\DbWrapper; use SP\Storage\FileException; use SP\Storage\FileHandler; -use SP\Storage\MysqlFileParser; +use SP\Storage\MySQLFileParser; use SP\Storage\QueryData; use SP\Util\Util; @@ -202,7 +202,7 @@ class UpgradeDatabaseService extends Service implements UpgradeInterface $file = SQL_PATH . DIRECTORY_SEPARATOR . str_replace('.', '', $filename) . '.sql'; try { - return (new MysqlFileParser())->parse(new FileHandler($file), '$$'); + return (new MySQLFileParser())->parse(new FileHandler($file), '$$'); } catch (FileException $e) { processException($e); diff --git a/lib/SP/Storage/MysqlFileParser.php b/lib/SP/Storage/MySQLFileParser.php similarity index 69% rename from lib/SP/Storage/MysqlFileParser.php rename to lib/SP/Storage/MySQLFileParser.php index 340dfce5..e4a61428 100644 --- a/lib/SP/Storage/MysqlFileParser.php +++ b/lib/SP/Storage/MySQLFileParser.php @@ -2,8 +2,8 @@ /** * sysPass * - * @author nuxsmin - * @link https://syspass.org + * @author nuxsmin + * @link https://syspass.org * @copyright 2012-2018, Rubén Domínguez nuxsmin@$syspass.org * * This file is part of sysPass. @@ -26,16 +26,17 @@ namespace SP\Storage; /** * Class MysqlFileParser + * * @package SP\Storage */ -class MysqlFileParser implements DatabaseFileInterface +class MySQLFileParser implements DatabaseFileInterface { /** * Parses a database script file and returns an array of lines parsed * * @param FileHandler $fileHandler - * @param string $delimiter + * @param string $delimiter * @return array * @throws FileException */ @@ -54,24 +55,25 @@ class MysqlFileParser implements DatabaseFileInterface if ($length > 0 && strpos($buffer, '--') !== 0 ) { - // Checks if line is a set wrapped by a comment + // CHecks if delimiter based EOL is reached + $end = strrpos($buffer, $delimiter) === $length - $delimiterLength; + // Checks if line is an SQL statement wrapped by a comment $setComment = preg_match(/** @lang RegExp */ '#^(?P/\*!\d+.*\*/)#', $buffer, $matches); if ($setComment) { - $queries[] = $matches['statement']; - } else { - $end = strrpos($buffer, $delimiter) === $length - $delimiterLength; + if (!$end) { + $query .= $matches['statement'] . PHP_EOL; + } else { + $queries[] = $query . $matches['statement']; + $query = ''; + } + } else { if (!$end) { $query .= $buffer . PHP_EOL; - } elseif ($end - && empty($query) - && strpos($buffer, 'DELIMITER') === false - ) { - $queries[] = trim(substr_replace($buffer, '', $length - $delimiterLength), $delimiterLength); - } elseif (!empty($query)) { // End of query - $queries[] = trim($query); + } elseif ($end && strpos($buffer, 'DELIMITER') === false) { + $queries[] = $query . trim(substr_replace($buffer, '', $length - $delimiterLength), $delimiterLength); $query = ''; } diff --git a/schemas/110.sql b/schemas/110.sql deleted file mode 100644 index d260c732..00000000 --- a/schemas/110.sql +++ /dev/null @@ -1,23 +0,0 @@ --- To 1.1.0; -ALTER TABLE `accFiles` - CHANGE COLUMN name `accfile_name` VARCHAR(100) NOT NULL; -ALTER TABLE `accounts` - ADD COLUMN `account_otherGroupEdit` BIT(1) NULL DEFAULT 0 - AFTER `account_dateEdit`, - ADD COLUMN `account_otherUserEdit` BIT(1) NULL DEFAULT 0 - AFTER `account_otherGroupEdit`; -CREATE TABLE `accUsers` ( - `accuser_id` INT NOT NULL AUTO_INCREMENT, - `accuser_accountId` INT(10) UNSIGNED NOT NULL, - `accuser_userId` INT(10) UNSIGNED NOT NULL, - PRIMARY KEY (`accuser_id`), - INDEX `idx_account` (`accuser_accountId` ASC) -) - DEFAULT CHARSET = utf8; -ALTER TABLE `accHistory` - ADD COLUMN `accHistory_otherUserEdit` BIT NULL - AFTER `acchistory_mPassHash`, - ADD COLUMN `accHistory_otherGroupEdit` VARCHAR(45) NULL - AFTER `accHistory_otherUserEdit`; -ALTER TABLE `accFiles` - CHANGE COLUMN type `accfile_type` VARCHAR(100) NOT NULL; \ No newline at end of file diff --git a/schemas/1121.sql b/schemas/1121.sql deleted file mode 100644 index 379ff3e8..00000000 --- a/schemas/1121.sql +++ /dev/null @@ -1,11 +0,0 @@ --- To 1.1.21; -ALTER TABLE `categories` - ADD COLUMN `category_description` VARCHAR(255) NULL - AFTER `category_name`; -ALTER TABLE `usrProfiles` - ADD COLUMN `userProfile_pAppMgmtMenu` BIT(1) NULL DEFAULT b'0' - AFTER `userProfile_pUsersMenu`, - CHANGE COLUMN `userProfile_pConfigCategories` `userProfile_pAppMgmtCategories` BIT(1) NULL DEFAULT b'0' - AFTER `userProfile_pAppMgmtMenu`, - ADD COLUMN `userProfile_pAppMgmtCustomers` BIT(1) NULL DEFAULT b'0' - AFTER `userProfile_pAppMgmtCategories`; \ No newline at end of file diff --git a/schemas/11213.sql b/schemas/11213.sql deleted file mode 100644 index 6dcb79d2..00000000 --- a/schemas/11213.sql +++ /dev/null @@ -1,8 +0,0 @@ --- To 1.1.2.13; -ALTER TABLE `usrData` - CHANGE COLUMN `user_mPass` `user_mPass` VARBINARY(32) NULL DEFAULT NULL, - CHANGE COLUMN `user_lastLogin` `user_lastLogin` DATETIME NULL DEFAULT NULL, - CHANGE COLUMN `user_lastUpdate` `user_lastUpdate` DATETIME NULL DEFAULT NULL, - CHANGE COLUMN `user_mIV` `user_mIV` VARBINARY(32) NULL; -ALTER TABLE `accounts` - CHANGE COLUMN `account_login` `account_login` VARCHAR(50) NULL DEFAULT NULL; \ No newline at end of file diff --git a/schemas/11219.sql b/schemas/11219.sql deleted file mode 100644 index 34fa8a37..00000000 --- a/schemas/11219.sql +++ /dev/null @@ -1,5 +0,0 @@ --- To 1.1.2.19; -ALTER TABLE `accounts` - CHANGE COLUMN `account_pass` `account_pass` VARBINARY(255) NOT NULL; -ALTER TABLE `accHistory` - CHANGE COLUMN `acchistory_pass` `acchistory_pass` VARBINARY(255) NOT NULL; \ No newline at end of file diff --git a/schemas/1122.sql b/schemas/1122.sql deleted file mode 100644 index 04f40187..00000000 --- a/schemas/1122.sql +++ /dev/null @@ -1,4 +0,0 @@ --- To 1.1.22; -ALTER TABLE `usrData` - CHANGE COLUMN `user_login` `user_login` VARCHAR(50) NOT NULL, - CHANGE COLUMN `user_email` `user_email` VARCHAR(80) NULL DEFAULT NULL; \ No newline at end of file diff --git a/schemas/11220.sql b/schemas/11220.sql deleted file mode 100644 index c9810ac1..00000000 --- a/schemas/11220.sql +++ /dev/null @@ -1,4 +0,0 @@ --- To 1.1.2.20; -ALTER TABLE `usrData` - CHANGE COLUMN `user_pass` `user_pass` VARBINARY(255) NOT NULL, - CHANGE COLUMN `user_mPass` `user_mPass` VARBINARY(255) DEFAULT NULL; \ No newline at end of file diff --git a/schemas/1123.sql b/schemas/1123.sql deleted file mode 100644 index 24d56b03..00000000 --- a/schemas/1123.sql +++ /dev/null @@ -1,17 +0,0 @@ --- To 1.1.23; -CREATE TABLE `usrPassRecover` ( - `userpassr_id` INT UNSIGNED NOT NULL AUTO_INCREMENT, - `userpassr_userId` SMALLINT UNSIGNED NOT NULL, - `userpassr_hash` VARBINARY(40) NOT NULL, - `userpassr_date` INT UNSIGNED NOT NULL, - `userpassr_used` BIT(1) NOT NULL DEFAULT b'0', - PRIMARY KEY (`userpassr_id`), - INDEX `IDX_userId` (`userpassr_userId` ASC, `userpassr_date` ASC) -) - DEFAULT CHARSET = utf8; -ALTER TABLE `log` - ADD COLUMN `log_ipAddress` VARCHAR(45) NOT NULL - AFTER `log_userId`; -ALTER TABLE `usrData` - ADD COLUMN `user_isChangePass` BIT(1) NULL DEFAULT b'0' - AFTER `user_isMigrate`; \ No newline at end of file diff --git a/schemas/12001.sql b/schemas/12001.sql deleted file mode 100644 index b9633d60..00000000 --- a/schemas/12001.sql +++ /dev/null @@ -1,60 +0,0 @@ --- To 1.2.0.0.1; -ALTER TABLE `accounts` - CHANGE COLUMN `account_userEditId` `account_userEditId` TINYINT(3) UNSIGNED NULL DEFAULT NULL, - CHANGE COLUMN `account_dateEdit` `account_dateEdit` DATETIME NULL DEFAULT NULL; -ALTER TABLE `accHistory` - CHANGE COLUMN `acchistory_userEditId` `acchistory_userEditId` TINYINT(3) UNSIGNED NULL DEFAULT NULL, - CHANGE COLUMN `acchistory_dateEdit` `acchistory_dateEdit` DATETIME NULL DEFAULT NULL; -ALTER TABLE `accHistory` - CHANGE COLUMN `accHistory_otherGroupEdit` `accHistory_otherGroupEdit` BIT NULL DEFAULT b'0'; -ALTER TABLE `usrProfiles` - ADD COLUMN `userProfile_profile` BLOB NOT NULL; -ALTER TABLE `usrData` - ADD `user_preferences` BLOB NULL; -CREATE TABLE usrToGroups ( - usertogroup_id INT UNSIGNED PRIMARY KEY NOT NULL AUTO_INCREMENT, - usertogroup_userId INT UNSIGNED NOT NULL, - usertogroup_groupId INT UNSIGNED NOT NULL -) - DEFAULT CHARSET = utf8; -CREATE INDEX IDX_accountId - ON usrToGroups (usertogroup_userId); -ALTER TABLE `accFiles` - ADD `accFile_thumb` BLOB NULL; -CREATE TABLE `authTokens` ( - `authtoken_id` INT(11) NOT NULL AUTO_INCREMENT, - `authtoken_userId` INT(11) NOT NULL, - `authtoken_token` VARBINARY(100) NOT NULL, - `authtoken_actionId` SMALLINT(5) UNSIGNED NOT NULL, - `authtoken_createdBy` SMALLINT(5) UNSIGNED NOT NULL, - `authtoken_startDate` INT(10) UNSIGNED NOT NULL, - PRIMARY KEY (`authtoken_id`), - UNIQUE KEY `unique_authtoken_id` (`authtoken_id`), - KEY `IDX_checkToken` (`authtoken_userId`, `authtoken_actionId`, `authtoken_token`) -) - ENGINE = InnoDB - DEFAULT CHARSET = utf8; -CREATE TABLE `customFieldsDef` ( - `customfielddef_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, - `customfielddef_module` SMALLINT(5) UNSIGNED NOT NULL, - `customfielddef_field` BLOB NOT NULL, - PRIMARY KEY (`customfielddef_id`) -) - ENGINE = InnoDB - DEFAULT CHARSET = utf8; -CREATE TABLE `customFieldsData` ( - `customfielddata_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, - `customfielddata_moduleId` SMALLINT(5) UNSIGNED NOT NULL, - `customfielddata_itemId` INT(10) UNSIGNED NOT NULL, - `customfielddata_defId` INT(10) UNSIGNED NOT NULL, - `customfielddata_data` LONGBLOB, - `customfielddata_iv` VARBINARY(128) DEFAULT NULL, - PRIMARY KEY (`customfielddata_id`), - KEY `IDX_DEFID` (`customfielddata_defId`), - KEY `IDX_DELETE` (`customfielddata_itemId`, `customfielddata_moduleId`), - KEY `IDX_UPDATE` (`customfielddata_moduleId`, `customfielddata_itemId`, `customfielddata_defId`), - KEY `IDX_ITEM` (`customfielddata_itemId`), - KEY `IDX_MODULE` (`customfielddata_moduleId`) -) - ENGINE = InnoDB - DEFAULT CHARSET = utf8; \ No newline at end of file diff --git a/schemas/12002.sql b/schemas/12002.sql deleted file mode 100644 index 1310ad32..00000000 --- a/schemas/12002.sql +++ /dev/null @@ -1,9 +0,0 @@ --- To 1.2.0.0.2; -ALTER TABLE config - CHANGE config_value config_value VARCHAR(255); -ALTER TABLE usrData - CHANGE user_pass user_pass VARBINARY(255); -ALTER TABLE usrData - CHANGE user_hashSalt user_hashSalt VARBINARY(128); -ALTER TABLE accHistory - CHANGE acchistory_mPassHash acchistory_mPassHash VARBINARY(255); \ No newline at end of file diff --git a/schemas/13000000000.sql b/schemas/13000000000.sql deleted file mode 100644 index e03a6135..00000000 --- a/schemas/13000000000.sql +++ /dev/null @@ -1,75 +0,0 @@ -ALTER TABLE `usrData` ENGINE = InnoDB; -ALTER TABLE `accFiles` ENGINE = InnoDB; -ALTER TABLE `accGroups` ENGINE = InnoDB; -ALTER TABLE `accHistory` ENGINE = InnoDB; -ALTER TABLE `accUsers` ENGINE = InnoDB; -ALTER TABLE `categories` ENGINE = InnoDB; -ALTER TABLE `config` ENGINE = InnoDB; -ALTER TABLE `customers` ENGINE = InnoDB; -ALTER TABLE `log` ENGINE = InnoDB; -ALTER TABLE `usrGroups` ENGINE = InnoDB; -ALTER TABLE `usrPassRecover` ENGINE = InnoDB; -ALTER TABLE `usrProfiles` ENGINE = InnoDB; -ALTER TABLE `accounts` ENGINE = InnoDB; - -ALTER TABLE `log` ADD log_level VARCHAR(20) NOT NULL; -ALTER TABLE `config` CHANGE config_value config_value VARCHAR(2000); - -CREATE TABLE IF NOT EXISTS `publicLinks` ( - `publicLink_id` int UNSIGNED NOT NULL AUTO_INCREMENT, - `publicLink_itemId` int UNSIGNED DEFAULT NULL, - `publicLink_hash` varbinary(100) NOT NULL, - `publicLink_linkData` longblob, - PRIMARY KEY (`publicLink_id`), - UNIQUE KEY `IDX_hash` (`publicLink_hash`), - UNIQUE KEY `unique_publicLink_hash` (`publicLink_hash`), - UNIQUE KEY `unique_publicLink_accountId` (`publicLink_itemId`), - KEY `IDX_itemId` (`publicLink_itemId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -CREATE TABLE IF NOT EXISTS `accFavorites` ( - `accfavorite_accountId` smallint(5) unsigned NOT NULL, - `accfavorite_userId` smallint(5) unsigned NOT NULL, - KEY `fk_accFavorites_accounts_idx` (`accfavorite_accountId`), - KEY `fk_accFavorites_users_idx` (`accfavorite_userId`), - KEY `search_idx` (`accfavorite_accountId`,`accfavorite_userId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -CREATE TABLE IF NOT EXISTS `tags` ( - `tag_id` INT UNSIGNED NOT NULL AUTO_INCREMENT, - `tag_name` VARCHAR(45) NOT NULL, - `tag_hash` BINARY(40) NOT NULL, - PRIMARY KEY (`tag_id`), - INDEX `IDX_name` (`tag_name` ASC), - UNIQUE INDEX `tag_hash_UNIQUE` (`tag_hash` ASC) -) ENGINE = InnoDB DEFAULT CHARSET = utf8; - -CREATE TABLE IF NOT EXISTS `accTags` ( - `acctag_accountId` SMALLINT(10) UNSIGNED NOT NULL, - `acctag_tagId` INT UNSIGNED NOT NULL, - INDEX `IDX_id` (`acctag_accountId` ASC, `acctag_tagId` ASC) -) ENGINE = InnoDB DEFAULT CHARSET = utf8; - -CREATE TABLE IF NOT EXISTS `plugins` ( - `plugin_id` INT UNSIGNED NOT NULL AUTO_INCREMENT, - `plugin_name` VARCHAR(100) NOT NULL, - `plugin_data` VARBINARY(5000) NULL, - `plugin_enabled` BIT(1) NOT NULL DEFAULT b'0', - PRIMARY KEY (`plugin_id`), - UNIQUE INDEX `plugin_name_UNIQUE` (`plugin_name` ASC) -) ENGINE = InnoDB DEFAULT CHARSET = utf8; - -CREATE TABLE IF NOT EXISTS `notices` ( - `notice_id` INT UNSIGNED NOT NULL AUTO_INCREMENT, - `notice_type` VARCHAR(100) NULL, - `notice_component` VARCHAR(100) NOT NULL, - `notice_description` VARCHAR(500) NOT NULL, - `notice_date` INT UNSIGNED NOT NULL, - `notice_checked` BIT(1) NULL DEFAULT b'0', - `notice_userId` SMALLINT(5) UNSIGNED NULL, - `notice_sticky` BIT(1) NULL DEFAULT b'0', - `notice_onlyAdmin` BIT(1) NULL DEFAULT b'0', - PRIMARY KEY (`notice_id`), - INDEX `IDX_userId` (`notice_userId` ASC, `notice_checked` ASC, `notice_date` ASC), - INDEX `IDX_component` (`notice_component` ASC, `notice_date` ASC, `notice_checked` ASC, `notice_userId` ASC) -) ENGINE = InnoDB DEFAULT CHARSET = utf8; \ No newline at end of file diff --git a/schemas/13016100601.sql b/schemas/13016100601.sql deleted file mode 100644 index a38ff4f1..00000000 --- a/schemas/13016100601.sql +++ /dev/null @@ -1,354 +0,0 @@ --- To 1.3.16100601; -ALTER TABLE `accHistory` - CHANGE COLUMN `acchistory_userId` `acchistory_userId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `acchistory_userEditId` `acchistory_userEditId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `acchistory_customerId` `acchistory_customerId` INT(10) UNSIGNED NOT NULL, - CHANGE COLUMN `acchistory_categoryId` `acchistory_categoryId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `acchistory_dateEdit` `acchistory_dateEdit` DATETIME NULL DEFAULT NULL, - CHANGE COLUMN `acchistory_userGroupId` `acchistory_userGroupId` SMALLINT(5) UNSIGNED NOT NULL, - ADD INDEX `fk_accHistory_users_id_idx` (`acchistory_userId` ASC), - ADD INDEX `fk_accHistory_users_edit_id_idx` (`acchistory_userEditId` ASC), - ADD INDEX `fk_accHistory_categories_id_idx` (`acchistory_categoryId` ASC), - ADD INDEX `fk_accHistory_customers_id_idx` (`acchistory_customerId` ASC); - -ALTER TABLE `accUsers` - DROP COLUMN `accuser_id`, - CHANGE COLUMN `accuser_accountId` `accuser_accountId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `accuser_userId` `accuser_userId` SMALLINT(5) UNSIGNED NOT NULL, - ADD INDEX `fk_accUsers_users_id_idx` (`accuser_userId` ASC), - DROP PRIMARY KEY; - -ALTER TABLE `accounts` - CHANGE COLUMN `account_id` `account_id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, - CHANGE COLUMN `account_userId` `account_userId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `account_userEditId` `account_userEditId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `account_categoryId` `account_categoryId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `account_dateEdit` `account_dateEdit` DATETIME NULL DEFAULT NULL, - CHANGE COLUMN `account_userGroupId` `account_userGroupId` SMALLINT(5) UNSIGNED NOT NULL, - ADD INDEX `fk_accounts_user_id_idx` (`account_userId` ASC), - ADD INDEX `fk_accounts_user__edit_id_idx` (`account_userEditId` ASC); - -ALTER TABLE `authTokens` - CHANGE COLUMN `authtoken_userId` `authtoken_userId` SMALLINT(5) UNSIGNED NOT NULL, - ADD INDEX `fk_authTokens_users_id_idx` (`authtoken_userId` ASC, `authtoken_createdBy` ASC); - -ALTER TABLE `log` - CHANGE COLUMN `log_userId` `log_userId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `log_description` `log_description` TEXT NULL DEFAULT NULL, - ADD INDEX `fk_log_users_id_idx` (`log_userId` ASC); - -ALTER TABLE `usrData` - CHANGE COLUMN `user_groupId` `user_groupId` SMALLINT(3) UNSIGNED NOT NULL, - CHANGE COLUMN `user_secGroupId` `user_secGroupId` SMALLINT(3) UNSIGNED NULL DEFAULT NULL, - CHANGE COLUMN `user_profileId` `user_profileId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `user_isAdminApp` `user_isAdminApp` BIT(1) NULL DEFAULT b'0', - CHANGE COLUMN `user_isAdminAcc` `user_isAdminAcc` BIT(1) NULL DEFAULT b'0', - CHANGE COLUMN `user_isLdap` `user_isLdap` BIT(1) NULL DEFAULT b'0', - CHANGE COLUMN `user_isDisabled` `user_isDisabled` BIT(1) NULL DEFAULT b'0', - ADD INDEX `fk_usrData_groups_id_idx` (`user_groupId` ASC), - ADD INDEX `fk_usrData_profiles_id_idx` (`user_profileId` ASC); - -ALTER TABLE `usrPassRecover` - CHANGE COLUMN `userpassr_used` `userpassr_used` BIT(1) NULL DEFAULT b'0'; - -ALTER TABLE `usrToGroups` - DROP COLUMN `usertogroup_id`, - CHANGE COLUMN `usertogroup_userId` `usertogroup_userId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `usertogroup_groupId` `usertogroup_groupId` SMALLINT(5) UNSIGNED NOT NULL, - ADD INDEX `fk_usrToGroups_groups_id_idx` (`usertogroup_groupId` ASC), - DROP PRIMARY KEY; - -ALTER TABLE `accGroups` - CHANGE COLUMN `accgroup_accountId` `accgroup_accountId` SMALLINT(5) UNSIGNED NOT NULL, - CHANGE COLUMN `accgroup_groupId` `accgroup_groupId` SMALLINT(5) UNSIGNED NOT NULL; - -ALTER TABLE `accFavorites` - ADD CONSTRAINT `fk_accFavorites_accounts_id` -FOREIGN KEY (`accfavorite_accountId`) -REFERENCES `accounts` (`account_id`) - ON DELETE CASCADE - ON UPDATE NO ACTION; - -ALTER TABLE `accFavorites` - ADD CONSTRAINT `fk_accFavorites_users_id` -FOREIGN KEY (`accfavorite_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE CASCADE - ON UPDATE NO ACTION; - -ALTER TABLE `accFiles` - ADD CONSTRAINT `fk_accFiles_accounts_id` -FOREIGN KEY (accountId) -REFERENCES `accounts` (`account_id`) - ON DELETE NO ACTION - ON UPDATE NO ACTION; - -ALTER TABLE `accGroups` - ADD CONSTRAINT `fk_accGroups_accounts_id` -FOREIGN KEY (`accgroup_accountId`) -REFERENCES `accounts` (`account_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accGroups` - ADD CONSTRAINT `fk_accGroups_groups_id` -FOREIGN KEY (`accgroup_groupId`) -REFERENCES `usrGroups` (`usergroup_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accHistory` - ADD CONSTRAINT `fk_accHistory_user_id` -FOREIGN KEY (`acchistory_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accHistory` - ADD CONSTRAINT `fk_accHistory_users_edit_id` -FOREIGN KEY (`acchistory_userEditId`) -REFERENCES `usrData` (`user_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accHistory` - ADD CONSTRAINT `fk_accHistory_category_id` -FOREIGN KEY (`acchistory_categoryId`) -REFERENCES `categories` (`category_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accHistory` - ADD CONSTRAINT `fk_accHistory_customer_id` -FOREIGN KEY (`acchistory_customerId`) -REFERENCES `customers` (`customer_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accHistory` - ADD CONSTRAINT `fk_accHistory_userGroup_id` -FOREIGN KEY (`acchistory_userGroupId`) -REFERENCES `usrGroups` (`usergroup_id`) - ON DELETE NO ACTION - ON UPDATE NO ACTION; - -ALTER TABLE `accTags` - ADD CONSTRAINT `fk_accTags_accounts_id` -FOREIGN KEY (`acctag_accountId`) -REFERENCES `accounts` (`account_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accTags` - ADD CONSTRAINT `fk_accTags_tags_id` -FOREIGN KEY (`acctag_tagId`) -REFERENCES `tags` (`tag_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accUsers` - ADD CONSTRAINT `fk_accUsers_accounts_id` -FOREIGN KEY (`accuser_accountId`) -REFERENCES `accounts` (`account_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accUsers` - ADD CONSTRAINT `fk_accUsers_users_id` -FOREIGN KEY (`accuser_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accounts` - ADD CONSTRAINT `fk_accounts_category_id` -FOREIGN KEY (`account_categoryId`) -REFERENCES `categories` (`category_id`) - ON DELETE RESTRICT - ON UPDATE CASCADE; - -ALTER TABLE `accounts` - ADD CONSTRAINT `fk_accounts_user_id` -FOREIGN KEY (`account_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accounts` - ADD CONSTRAINT `fk_accounts_user_edit_id` -FOREIGN KEY (`account_userEditId`) -REFERENCES `usrData` (`user_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accounts` - ADD CONSTRAINT `fk_accounts_customer_id` -FOREIGN KEY (`account_customerId`) -REFERENCES `customers` (`customer_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `accounts` - ADD CONSTRAINT `fk_accounts_userGroup_id` -FOREIGN KEY (`account_userGroupId`) -REFERENCES `usrGroups` (`usergroup_id`) - ON DELETE NO ACTION - ON UPDATE NO ACTION; - -ALTER TABLE `authTokens` - ADD CONSTRAINT `fk_authTokens_user_id` -FOREIGN KEY (`authtoken_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `authTokens` - ADD CONSTRAINT `fk_authTokens_createdBy_id` -FOREIGN KEY (`authtoken_createdBy`) -REFERENCES `usrData` (`user_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `customFieldsData` - ADD CONSTRAINT `fk_customFieldsData_def_id` -FOREIGN KEY (`customfielddata_defId`) -REFERENCES `customFieldsDef` (`customfielddef_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `usrData` - ADD CONSTRAINT `fk_usrData_groups_id` -FOREIGN KEY (`user_groupId`) -REFERENCES `usrGroups` (`usergroup_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `usrData` - ADD CONSTRAINT `fk_usrData_profiles_id` -FOREIGN KEY (`user_profileId`) -REFERENCES `usrProfiles` (`userprofile_id`) - ON DELETE RESTRICT - ON UPDATE RESTRICT; - -ALTER TABLE `usrPassRecover` - ADD CONSTRAINT `fk_usrPassRecover_users` -FOREIGN KEY (`userpassr_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `usrToGroups` - ADD CONSTRAINT `fk_usrToGroups_users_id` -FOREIGN KEY (`usertogroup_userId`) -REFERENCES `usrData` (`user_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `usrToGroups` - ADD CONSTRAINT `fk_usrToGroups_groups_id` -FOREIGN KEY (`usertogroup_groupId`) -REFERENCES `usrGroups` (`usergroup_id`) - ON DELETE CASCADE - ON UPDATE CASCADE; - -ALTER TABLE `accounts` - ADD COLUMN `account_isPrivate` BIT(1) NULL DEFAULT b'0' - AFTER `account_otherUserEdit`; - -ALTER TABLE `accounts` - ADD COLUMN `account_passDate` INT UNSIGNED NULL - AFTER `account_isPrivate`, - ADD COLUMN `account_passDateChange` INT UNSIGNED NULL - AFTER `account_passDate`; - -ALTER TABLE `accHistory` - ADD COLUMN `accHistory_passDate` INT UNSIGNED NULL - AFTER `accHistory_otherGroupEdit`, - ADD COLUMN `accHistory_passDateChange` INT UNSIGNED NULL - AFTER `accHistory_passDate`; - -ALTER TABLE `accounts` - ADD COLUMN `account_parentId` SMALLINT(5) UNSIGNED NULL - AFTER `account_passDateChange`; - -ALTER TABLE `accHistory` - ADD COLUMN `accHistory_parentId` SMALLINT(5) UNSIGNED NULL - AFTER `accHistory_passDateChange`, - ADD INDEX `fk_accHistory_userGroup_id_idx` (`acchistory_userGroupId` ASC); - -CREATE OR REPLACE ALGORITHM = UNDEFINED DEFINER = CURRENT_USER SQL SECURITY DEFINER VIEW `account_data_v` AS - SELECT - `accounts`.`account_id` AS `account_id`, - `accounts`.`account_name` AS `account_name`, - `accounts`.`account_categoryId` AS `account_categoryId`, - `accounts`.`account_userId` AS `account_userId`, - `accounts`.`account_customerId` AS `account_customerId`, - `accounts`.`account_userGroupId` AS `account_userGroupId`, - `accounts`.`account_userEditId` AS `account_userEditId`, - `accounts`.`account_login` AS `account_login`, - `accounts`.`account_url` AS `account_url`, - `accounts`.`account_notes` AS `account_notes`, - `accounts`.`account_countView` AS `account_countView`, - `accounts`.`account_countDecrypt` AS `account_countDecrypt`, - `accounts`.`account_dateAdd` AS `account_dateAdd`, - `accounts`.`account_dateEdit` AS `account_dateEdit`, - conv(`accounts`.`account_otherUserEdit`, 10, 2) AS `account_otherUserEdit`, - conv(`accounts`.`account_otherGroupEdit`, 10, 2) AS `account_otherGroupEdit`, - conv(`accounts`.`account_isPrivate`, 10, 2) AS `account_isPrivate`, - `accounts`.`account_passDate` AS `account_passDate`, - `accounts`.`account_passDateChange` AS `account_passDateChange`, - `accounts`.`account_parentId` AS `account_parentId`, - `categories`.`category_name` AS `category_name`, - `customers`.`customer_name` AS `customer_name`, - `ug`.`usergroup_name` AS `usergroup_name`, - `u1`.`user_name` AS `user_name`, - `u1`.`user_login` AS `user_login`, - `u2`.`user_name` AS `user_editName`, - `u2`.`user_login` AS `user_editLogin`, - `publicLinks`.`publicLink_hash` AS `publicLink_hash` - FROM ((((((`accounts` - LEFT JOIN `categories` ON ((`accounts`.`account_categoryId` = `categories`.`category_id`))) LEFT JOIN - `usrGroups` `ug` ON ((`accounts`.`account_userGroupId` = `ug`.`usergroup_id`))) LEFT JOIN `usrData` `u1` - ON ((`accounts`.`account_userId` = `u1`.`user_id`))) LEFT JOIN `usrData` `u2` - ON ((`accounts`.`account_userEditId` = `u2`.`user_id`))) LEFT JOIN `customers` - ON ((`accounts`.`account_customerId` = `customers`.`customer_id`))) LEFT JOIN `publicLinks` - ON ((`accounts`.`account_id` = `publicLinks`.`publicLink_itemId`))); - -CREATE OR REPLACE ALGORITHM = UNDEFINED DEFINER = CURRENT_USER SQL SECURITY DEFINER VIEW `account_search_v` AS - SELECT DISTINCT - `accounts`.`account_id` AS `account_id`, - `accounts`.`account_customerId` AS `account_customerId`, - `accounts`.`account_categoryId` AS `account_categoryId`, - `accounts`.`account_name` AS `account_name`, - `accounts`.`account_login` AS `account_login`, - `accounts`.`account_url` AS `account_url`, - `accounts`.`account_notes` AS `account_notes`, - `accounts`.`account_userId` AS `account_userId`, - `accounts`.`account_userGroupId` AS `account_userGroupId`, - `accounts`.`account_otherUserEdit` AS `account_otherUserEdit`, - `accounts`.`account_otherGroupEdit` AS `account_otherGroupEdit`, - `accounts`.`account_isPrivate` AS `account_isPrivate`, - `accounts`.`account_passDate` AS `account_passDate`, - `accounts`.`account_passDateChange` AS `account_passDateChange`, - `accounts`.`account_parentId` AS `account_parentId`, - `accounts`.`account_countView` AS `account_countView`, - `ug`.`usergroup_name` AS `usergroup_name`, - `categories`.`category_name` AS `category_name`, - `customers`.`customer_name` AS `customer_name`, - (SELECT COUNT(0) - FROM - `accFiles` - WHERE - (`accFiles`.accountId = `accounts`.`account_id`)) AS `num_files` - FROM - (((`accounts` - LEFT JOIN `categories` ON ((`accounts`.`account_categoryId` = `categories`.`category_id`))) - LEFT JOIN `usrGroups` `ug` ON ((`accounts`.`account_userGroupId` = `ug`.`usergroup_id`))) - LEFT JOIN `customers` ON ((`customers`.`customer_id` = `accounts`.`account_customerId`))); - -ALTER TABLE `accounts` - ADD INDEX `IDX_parentId` USING BTREE (`account_parentId` ASC); - -ALTER TABLE `categories` - ADD COLUMN `category_hash` VARBINARY(40) NOT NULL DEFAULT 0 - AFTER `category_description`; \ No newline at end of file diff --git a/schemas/20017011302.sql b/schemas/20017011302.sql deleted file mode 100644 index 3c5c2480..00000000 --- a/schemas/20017011302.sql +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `accounts` - CHANGE COLUMN `account_id` `account_id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT; \ No newline at end of file diff --git a/schemas/20017011701.sql b/schemas/20017011701.sql deleted file mode 100644 index f282b6a6..00000000 --- a/schemas/20017011701.sql +++ /dev/null @@ -1,81 +0,0 @@ -ALTER TABLE `accounts` - ADD COLUMN `account_isPrivateGroup` BIT(1) NULL DEFAULT b'0' AFTER `account_isPrivate`; - -ALTER TABLE `accHistory` - ADD COLUMN `accHistory_isPrivate` BIT(1) NULL DEFAULT b'0' AFTER `accHistory_parentId`, - ADD COLUMN `accHistory_isPrivateGroup` BIT(1) NULL DEFAULT b'0' AFTER `accHistory_isPrivate`; - -CREATE OR REPLACE ALGORITHM = UNDEFINED DEFINER = CURRENT_USER SQL SECURITY DEFINER VIEW `account_data_v` AS - SELECT - `accounts`.`account_id` AS `account_id`, - `accounts`.`account_name` AS `account_name`, - `accounts`.`account_categoryId` AS `account_categoryId`, - `accounts`.`account_userId` AS `account_userId`, - `accounts`.`account_customerId` AS `account_customerId`, - `accounts`.`account_userGroupId` AS `account_userGroupId`, - `accounts`.`account_userEditId` AS `account_userEditId`, - `accounts`.`account_login` AS `account_login`, - `accounts`.`account_url` AS `account_url`, - `accounts`.`account_notes` AS `account_notes`, - `accounts`.`account_countView` AS `account_countView`, - `accounts`.`account_countDecrypt` AS `account_countDecrypt`, - `accounts`.`account_dateAdd` AS `account_dateAdd`, - `accounts`.`account_dateEdit` AS `account_dateEdit`, - CONV(`accounts`.`account_otherUserEdit`,10,2) AS `account_otherUserEdit`, - CONV(`accounts`.`account_otherGroupEdit`,10,2) AS `account_otherGroupEdit`, - CONV(`accounts`.`account_isPrivate`, 10, 2) AS `account_isPrivate`, - CONV(`accounts`.`account_isPrivateGroup`, 10, 2) AS `account_isPrivateGroup`, - `accounts`.`account_passDate` AS `account_passDate`, - `accounts`.`account_passDateChange` AS `account_passDateChange`, - `accounts`.`account_parentId` AS `account_parentId`, - `categories`.`category_name` AS `category_name`, - `customers`.`customer_name` AS `customer_name`, - `ug`.`usergroup_name` AS `usergroup_name`, - `u1`.`user_name` AS `user_name`, - `u1`.`user_login` AS `user_login`, - `u2`.`user_name` AS `user_editName`, - `u2`.`user_login` AS `user_editLogin`, - `publicLinks`.`publicLink_hash` AS `publicLink_hash` - FROM - ((((((`accounts` - LEFT JOIN `categories` ON ((`accounts`.`account_categoryId` = `categories`.`category_id`))) - LEFT JOIN `usrGroups` `ug` ON ((`accounts`.`account_userGroupId` = `ug`.`usergroup_id`))) - LEFT JOIN `usrData` `u1` ON ((`accounts`.`account_userId` = `u1`.`user_id`))) - LEFT JOIN `usrData` `u2` ON ((`accounts`.`account_userEditId` = `u2`.`user_id`))) - LEFT JOIN `customers` ON ((`accounts`.`account_customerId` = `customers`.`customer_id`))) - LEFT JOIN `publicLinks` ON ((`accounts`.`account_id` = `publicLinks`.`publicLink_itemId`))); - -CREATE OR REPLACE ALGORITHM = UNDEFINED DEFINER = CURRENT_USER SQL SECURITY DEFINER VIEW `account_search_v` AS - SELECT DISTINCT - `accounts`.`account_id` AS `account_id`, - `accounts`.`account_customerId` AS `account_customerId`, - `accounts`.`account_categoryId` AS `account_categoryId`, - `accounts`.`account_name` AS `account_name`, - `accounts`.`account_login` AS `account_login`, - `accounts`.`account_url` AS `account_url`, - `accounts`.`account_notes` AS `account_notes`, - `accounts`.`account_userId` AS `account_userId`, - `accounts`.`account_userGroupId` AS `account_userGroupId`, - `accounts`.`account_otherUserEdit` AS `account_otherUserEdit`, - `accounts`.`account_otherGroupEdit` AS `account_otherGroupEdit`, - `accounts`.`account_isPrivate` AS `account_isPrivate`, - `accounts`.`account_isPrivateGroup` AS `account_isPrivateGroup`, - `accounts`.`account_passDate` AS `account_passDate`, - `accounts`.`account_passDateChange` AS `account_passDateChange`, - `accounts`.`account_parentId` AS `account_parentId`, - `accounts`.`account_countView` AS `account_countView`, - `ug`.`usergroup_name` AS `usergroup_name`, - `categories`.`category_name` AS `category_name`, - `customers`.`customer_name` AS `customer_name`, - (SELECT - COUNT(0) - FROM - `accFiles` - WHERE - (`accFiles`.accountId = `accounts`.`account_id`)) AS `num_files` - FROM - (((`accounts` - LEFT JOIN `categories` ON ((`accounts`.`account_categoryId` = `categories`.`category_id`))) - LEFT JOIN `usrGroups` `ug` ON ((`accounts`.`account_userGroupId` = `ug`.`usergroup_id`))) - LEFT JOIN `customers` ON ((`customers`.`customer_id` = `accounts`.`account_customerId`))); - diff --git a/schemas/20017012901.sql b/schemas/20017012901.sql deleted file mode 100644 index a60f2bc1..00000000 --- a/schemas/20017012901.sql +++ /dev/null @@ -1,40 +0,0 @@ -CREATE OR REPLACE ALGORITHM = UNDEFINED DEFINER = CURRENT_USER SQL SECURITY DEFINER VIEW `account_search_v` AS - SELECT DISTINCT - `accounts`.`account_id` AS `account_id`, - `accounts`.`account_customerId` AS `account_customerId`, - `accounts`.`account_categoryId` AS `account_categoryId`, - `accounts`.`account_name` AS `account_name`, - `accounts`.`account_login` AS `account_login`, - `accounts`.`account_url` AS `account_url`, - `accounts`.`account_notes` AS `account_notes`, - `accounts`.`account_userId` AS `account_userId`, - `accounts`.`account_userGroupId` AS `account_userGroupId`, - CONV(`accounts`.`account_otherUserEdit`, - 10, - 2) AS `account_otherUserEdit`, - CONV(`accounts`.`account_otherGroupEdit`, - 10, - 2) AS `account_otherGroupEdit`, - CONV(`accounts`.`account_isPrivate`, 10, 2) AS `account_isPrivate`, - CONV(`accounts`.`account_isPrivateGroup`, - 10, - 2) AS `account_isPrivateGroup`, - `accounts`.`account_passDate` AS `account_passDate`, - `accounts`.`account_passDateChange` AS `account_passDateChange`, - `accounts`.`account_parentId` AS `account_parentId`, - `accounts`.`account_countView` AS `account_countView`, - `accounts`.`account_dateEdit` AS `account_dateEdit`, - `ug`.`usergroup_name` AS `usergroup_name`, - `categories`.`category_name` AS `category_name`, - `customers`.`customer_name` AS `customer_name`, - (SELECT - COUNT(0) - FROM - `accFiles` - WHERE - (`accFiles`.accountId = `accounts`.`account_id`)) AS `num_files` - FROM - (((`accounts` - LEFT JOIN `categories` ON ((`accounts`.`account_categoryId` = `categories`.`category_id`))) - LEFT JOIN `usrGroups` `ug` ON ((`accounts`.`account_userGroupId` = `ug`.`usergroup_id`))) - LEFT JOIN `customers` ON ((`customers`.`customer_id` = `accounts`.`account_customerId`))); diff --git a/schemas/21017022601.sql b/schemas/21017022601.sql deleted file mode 100644 index a2e29c5f..00000000 --- a/schemas/21017022601.sql +++ /dev/null @@ -1,31 +0,0 @@ -ALTER TABLE `accounts` - CHANGE COLUMN `account_pass` `account_pass` VARBINARY(1000) NOT NULL, - CHANGE COLUMN `account_IV` `account_key` VARBINARY(1000) NOT NULL; -ALTER TABLE `accHistory` - CHANGE COLUMN `acchistory_pass` `acchistory_pass` VARBINARY(1000) NOT NULL, - CHANGE COLUMN `acchistory_IV` `acchistory_key` VARBINARY(1000) NOT NULL; -ALTER TABLE `customFieldsData` - CHANGE COLUMN `customfielddata_iv` `customfielddata_key` VARBINARY(1000) NOT NULL; -ALTER TABLE `usrData` - CHANGE COLUMN `user_mPass` `user_mPass` VARBINARY(1000) NULL DEFAULT NULL, - CHANGE COLUMN `user_mIV` `user_mKey` VARBINARY(1000) NULL DEFAULT NULL; -ALTER TABLE `authTokens` - ADD COLUMN `authtoken_vault` VARBINARY(2000) NULL, - ADD COLUMN `authtoken_hash` VARBINARY(100) NULL; -CREATE TABLE `track` ( - `track_id` INT UNSIGNED NOT NULL AUTO_INCREMENT, - `track_userId` SMALLINT(5) UNSIGNED NULL, - `track_source` VARCHAR(100) NOT NULL, - `track_time` INT UNSIGNED NOT NULL, - `track_ipv4` BINARY(4) NOT NULL, - `track_ipv6` BINARY(16) NULL, - PRIMARY KEY (`track_id`), - INDEX `IDX_userId` (`track_userId` ASC), - INDEX `IDX_time-ip-source` (`track_time` ASC, `track_ipv4` ASC, `track_ipv6` ASC, `track_source` ASC) -) - ENGINE = InnoDB - DEFAULT CHARACTER SET = utf8; -ALTER TABLE `usrData` - ADD COLUMN `user_isChangedPass` BIT(1) NULL DEFAULT b'0' - AFTER `user_isChangePass`; - diff --git a/schemas/21317031402.sql b/schemas/21317031402.sql deleted file mode 100644 index d1b18d71..00000000 --- a/schemas/21317031402.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `accHistory` CHANGE COLUMN `acchistory_pass` `acchistory_pass` VARBINARY(1000) NOT NULL; \ No newline at end of file diff --git a/schemas/30018010101.sql b/schemas/30018010101.sql index b33c7cdd..3855d1d9 100644 --- a/schemas/30018010101.sql +++ b/schemas/30018010101.sql @@ -15,9 +15,6 @@ CREATE PROCEDURE removeConstraints() AND REFERENCED_TABLE_NAME IS NOT NULL; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; - SET AUTOCOMMIT = 0; - SET FOREIGN_KEY_CHECKS = 0; - OPEN cur; read_loop: LOOP @@ -27,22 +24,17 @@ CREATE PROCEDURE removeConstraints() THEN LEAVE read_loop; END IF; - SET @sql = CONCAT('ALTER TABLE ', tName, ' DROP FOREIGN KEY ', cName, ';'); - PREPARE stmt FROM @sql; + PREPARE stmt FROM CONCAT('ALTER TABLE ', tName, ' DROP FOREIGN KEY ', cName, ';'); EXECUTE stmt; DEALLOCATE PREPARE stmt; END LOOP; CLOSE cur; - - SET FOREIGN_KEY_CHECKS = 1; - COMMIT; - SET AUTOCOMMIT = 1; END $$ CALL removeConstraints() $$ -DROP PROCEDURE removeConstraints $$ +-- DROP PROCEDURE removeConstraints CREATE TABLE `CustomFieldType` ( `id` TINYINT(3) UNSIGNED NOT NULL AUTO_INCREMENT, @@ -59,7 +51,7 @@ VALUES (1, 'text', 'Texto'), (2, 'password', 'Clave'), (3, 'date', 'Fecha'), (4, (5, 'email', 'Email'), (6, 'telephone', 'Teléfono'), (7, 'url', 'URL'), (8, 'color', 'Color'), (9, 'wiki', 'Wiki'), (10, 'textarea', 'Área de Texto') $$ --- CustomFieldData $$ +-- CustomFieldData ALTER TABLE customFieldsData CHANGE customfielddata_defId definitionId INT(10) UNSIGNED NOT NULL, CHANGE customfielddata_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, @@ -78,7 +70,7 @@ ALTER TABLE customFieldsData DROP INDEX IDX_ITEM, RENAME TO CustomFieldData $$ --- CustomFieldDefinition $$ +-- CustomFieldDefinition ALTER TABLE customFieldsDef ADD required TINYINT(1) UNSIGNED NULL, ADD help VARCHAR(255) NULL, @@ -91,7 +83,7 @@ ALTER TABLE customFieldsDef CHANGE customfielddef_field field BLOB NULL, RENAME TO CustomFieldDefinition $$ --- EventLog $$ +-- EventLog ALTER TABLE log CHANGE log_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE log_date date INT(10) UNSIGNED NOT NULL, @@ -104,7 +96,7 @@ ALTER TABLE log DROP INDEX `fk_log_users_id_idx`, RENAME TO EventLog $$ --- Track $$ +-- Track ALTER TABLE track CHANGE track_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE track_userId userId SMALLINT(5) UNSIGNED, @@ -118,7 +110,7 @@ ALTER TABLE track ADD INDEX `idx_Track_02` (time ASC, ipv4 ASC, ipv6 ASC, source ASC), RENAME TO Track $$ --- AccountFile $$ +-- AccountFile ALTER TABLE accFiles CHANGE accfile_accountId accountId MEDIUMINT(5) UNSIGNED NOT NULL, CHANGE accfile_id id INT(11) NOT NULL AUTO_INCREMENT, @@ -132,7 +124,7 @@ ALTER TABLE accFiles ADD INDEX idx_AccountFile_01 (accountId ASC), RENAME TO AccountFile $$ --- User $$ +-- User ALTER TABLE usrData DROP user_secGroupId, CHANGE user_id id SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, @@ -166,14 +158,14 @@ ALTER TABLE usrData ADD UNIQUE INDEX `uk_User_01` (`login`, `ssoLogin`), RENAME TO User $$ --- UserProfile $$ +-- UserProfile ALTER TABLE usrProfiles CHANGE userprofile_id id SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE userprofile_name name VARCHAR(45) NOT NULL, CHANGE userProfile_profile profile BLOB NOT NULL, RENAME TO UserProfile $$ --- Notice $$ +-- Notice ALTER TABLE notices CHANGE notice_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE notice_type type VARCHAR(100), @@ -190,7 +182,7 @@ ALTER TABLE notices ADD INDEX idx_Notification_02 (component ASC, date ASC, checked ASC, userId ASC), RENAME TO Notification $$ --- Plugin $$ +-- Plugin ALTER TABLE `plugins` CHANGE plugin_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE plugin_name name VARCHAR(100) NOT NULL, @@ -201,7 +193,7 @@ ALTER TABLE `plugins` ADD UNIQUE INDEX uk_Plugin_01 (name ASC), RENAME TO Plugin $$ --- PublicLink $$ +-- PublicLink ALTER TABLE publicLinks ADD COLUMN `userId` SMALLINT(5) UNSIGNED NOT NULL, ADD COLUMN `typeId` INT(10) UNSIGNED NOT NULL @@ -234,7 +226,7 @@ ALTER TABLE publicLinks DROP INDEX unique_publicLink_hash, RENAME TO PublicLink $$ --- Category $$ +-- Category ALTER TABLE categories CHANGE category_id id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE category_name name VARCHAR(50) NOT NULL, @@ -243,7 +235,7 @@ ALTER TABLE categories ADD UNIQUE INDEX uk_Category_01 (`hash` ASC), RENAME TO Category $$ --- Config $$ +-- Config ALTER TABLE config CHANGE config_parameter parameter VARCHAR(50) NOT NULL, CHANGE config_value VALUE VARCHAR(4000), @@ -251,7 +243,7 @@ ALTER TABLE config ADD PRIMARY KEY (parameter), RENAME TO Config $$ --- Customer $$ +-- Customer ALTER TABLE customers CHANGE customer_id id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE customer_name name VARCHAR(100) NOT NULL, @@ -262,7 +254,7 @@ ALTER TABLE customers DROP INDEX IDX_name, RENAME TO Client $$ --- Account $$ +-- Account ALTER TABLE accounts CHANGE account_id id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE account_userGroupId userGroupId SMALLINT(5) UNSIGNED NOT NULL, @@ -298,7 +290,7 @@ ALTER TABLE accounts DROP INDEX IDX_parentId, RENAME TO Account $$ --- AccountToFavorite $$ +-- AccountToFavorite ALTER TABLE accFavorites DROP INDEX fk_accFavorites_users_idx, DROP INDEX fk_accFavorites_accounts_idx, @@ -308,7 +300,7 @@ ALTER TABLE accFavorites ADD INDEX idx_AccountToFavorite_01 (accountId ASC, userId ASC), RENAME TO AccountToFavorite $$ --- AccountHistory $$ +-- AccountHistory ALTER TABLE accHistory CHANGE acchistory_id id INT(11) NOT NULL AUTO_INCREMENT, CHANGE acchistory_accountId accountId MEDIUMINT UNSIGNED NOT NULL, @@ -343,7 +335,7 @@ ALTER TABLE accHistory ADD INDEX idx_AccountHistory_02 (parentId ASC), RENAME TO AccountHistory $$ --- Tag $$ +-- Tag ALTER TABLE tags CHANGE tag_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE tag_name name VARCHAR(45) NOT NULL, @@ -354,13 +346,13 @@ ALTER TABLE tags ADD INDEX idx_Tag_01 (`name` ASC), RENAME TO Tag $$ --- AccountToTag $$ +-- AccountToTag ALTER TABLE accTags CHANGE acctag_accountId accountId MEDIUMINT UNSIGNED NOT NULL, CHANGE acctag_tagId tagId INT(10) UNSIGNED NOT NULL, RENAME TO AccountToTag $$ --- AccountToUserGroup $$ +-- AccountToUserGroup ALTER TABLE accGroups CHANGE accgroup_accountId accountId MEDIUMINT UNSIGNED NOT NULL, CHANGE accgroup_groupId userGroupId SMALLINT(5) UNSIGNED NOT NULL, @@ -368,7 +360,7 @@ ALTER TABLE accGroups ADD INDEX idx_AccountToUserGroup_01 (`accountId` ASC), RENAME TO AccountToUserGroup $$ --- AccountToUser $$ +-- AccountToUser ALTER TABLE accUsers CHANGE accuser_accountId accountId MEDIUMINT UNSIGNED NOT NULL, CHANGE accuser_userId userId SMALLINT(5) UNSIGNED NOT NULL, @@ -376,7 +368,7 @@ ALTER TABLE accUsers ADD INDEX idx_AccountToUser_01 (accountId ASC), RENAME TO AccountToUser $$ --- UserToUserGroup $$ +-- UserToUserGroup ALTER TABLE usrToGroups CHANGE usertogroup_userId userId SMALLINT(5) UNSIGNED NOT NULL, CHANGE usertogroup_groupId userGroupId SMALLINT(5) UNSIGNED NOT NULL, @@ -384,14 +376,14 @@ ALTER TABLE usrToGroups ADD INDEX idx_UserToUserGroup_01 (userId ASC), RENAME TO UserToUserGroup $$ --- UserGroup $$ +-- UserGroup ALTER TABLE usrGroups CHANGE usergroup_id id SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE usergroup_name name VARCHAR(50) NOT NULL, CHANGE usergroup_description description VARCHAR(255), RENAME TO UserGroup $$ --- AuthToken $$ +-- AuthToken ALTER TABLE authTokens CHANGE authtoken_id id INT(11) NOT NULL AUTO_INCREMENT, CHANGE authtoken_userId userId SMALLINT(5) UNSIGNED NOT NULL, @@ -407,7 +399,7 @@ ALTER TABLE authTokens ADD INDEX idx_AuthToken_01 (userId ASC, actionId ASC, token ASC), RENAME TO AuthToken $$ --- UserPassRecover $$ +-- UserPassRecover ALTER TABLE usrPassRecover CHANGE userpassr_id id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, CHANGE userpassr_userId userId SMALLINT(5) UNSIGNED NOT NULL, @@ -418,7 +410,7 @@ ALTER TABLE usrPassRecover ADD INDEX idx_UserPassRecover_01 (userId ASC, date ASC), RENAME TO UserPassRecover $$ --- Views $$ +-- Views CREATE OR REPLACE VIEW account_search_v AS SELECT DISTINCT `Account`.`id` AS `id`, @@ -494,7 +486,7 @@ CREATE OR REPLACE VIEW account_data_v AS ON ((`Account`.`clientId` = `Client`.`id`))) LEFT JOIN `PublicLink` ON ((`Account`.`id` = `PublicLink`.`itemId`))) $$ --- Foreign Keys $$ +-- Foreign Keys CREATE INDEX fk_Account_userId ON Account (userId) $$ @@ -604,7 +596,7 @@ CREATE INDEX fk_AccountToTag_accountId CREATE INDEX fk_AccountToTag_tagId ON AccountToTag (tagId) $$ --- Fix duplicated tags $$ +-- Fix duplicated tags CREATE TEMPORARY TABLE IF NOT EXISTS tmp_tags AS (SELECT accountId, tagId @@ -656,7 +648,7 @@ ALTER TABLE AccountToUser CREATE INDEX fk_AuthToken_actionId ON AuthToken (actionId) $$ --- Fix missing user's id $$ +-- Fix missing user's id DELETE FROM AuthToken WHERE userId NOT IN (SELECT id FROM User) $$ diff --git a/schemas/dbstructure.sql b/schemas/dbstructure.sql index b2257ec3..d2508c44 100644 --- a/schemas/dbstructure.sql +++ b/schemas/dbstructure.sql @@ -298,7 +298,7 @@ CREATE TABLE `Notification` ( PRIMARY KEY (`id`), KEY `idx_Notification_01` (`userId`,`checked`,`date`), KEY `idx_Notification_02` (`component`,`date`,`checked`,`userId`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `Plugin`; /*!40101 SET @saved_cs_client = @@character_set_client */; @@ -311,7 +311,7 @@ CREATE TABLE `Plugin` ( `available` tinyint(1) DEFAULT 0, PRIMARY KEY (`id`), UNIQUE KEY `uk_Plugin_01` (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `PublicLink`; /*!40101 SET @saved_cs_client = @@character_set_client */;