diff --git a/include/upgrader/streams/core.sig b/include/upgrader/streams/core.sig index 4d847feb47a8f3ef48ed15a006600ab660f6190d..30a5aca33dc5932c1e09ede64d418368d54367cb 100644 --- a/include/upgrader/streams/core.sig +++ b/include/upgrader/streams/core.sig @@ -1 +1 @@ -b38066879371ed792958b4ba9bc8de4a +03ff59bf35a58a102e9b32ad33c2839f diff --git a/include/upgrader/streams/core/8f99b8bf-03ff59bf.cleanup.sql b/include/upgrader/streams/core/8f99b8bf-03ff59bf.cleanup.sql new file mode 100644 index 0000000000000000000000000000000000000000..bccb432fbf33b17fc27d54fc90490fcfb01e7315 --- /dev/null +++ b/include/upgrader/streams/core/8f99b8bf-03ff59bf.cleanup.sql @@ -0,0 +1,7 @@ +DELETE FROM `%TABLE_PREFIX%config` + WHERE `namespace`='core' AND `key` = 'random_ticket_ids'; + +ALTER TABLE `%TABLE_PREFIX%ticket` + DROP COLUMN `status`; + +OPTIMIZE TABLE `%TABLE_PREFIX%ticket`; diff --git a/include/upgrader/streams/core/8f99b8bf-b3806687.patch.sql b/include/upgrader/streams/core/8f99b8bf-03ff59bf.patch.sql similarity index 75% rename from include/upgrader/streams/core/8f99b8bf-b3806687.patch.sql rename to include/upgrader/streams/core/8f99b8bf-03ff59bf.patch.sql index a4cc062be8e8ecd9b19fb3e28ab634b49e03411d..65a50036f8155af515f07dbbe3ba560d96065006 100644 --- a/include/upgrader/streams/core/8f99b8bf-b3806687.patch.sql +++ b/include/upgrader/streams/core/8f99b8bf-03ff59bf.patch.sql @@ -1,6 +1,6 @@ /** * @version v1.9.4 - * @signature b38066879371ed792958b4ba9bc8de4a + * @signature 03ff59bf35a58a102e9b32ad33c2839f * @title Custom Ticket Numbers and Statuses * * This patch adds support for ticket number sequences to the database @@ -26,21 +26,18 @@ CREATE TABLE `%TABLE_PREFIX%sequence` ( ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SET @random = (SELECT `value` FROM `%TABLE_PREFIX%config` - WHERE `namespace` = 'core' AND `key` = 'use_random_ids'); + WHERE `namespace` = 'core' AND `key` = 'random_ticket_ids'); -- Sequence (id=1) will be loaded in the task file INSERT INTO `%TABLE_PREFIX%config` (`namespace`, `key`, `value`) VALUES - ('core', 'number_format', CASE WHEN @random THEN '######' ELSE '#' END), - ('core', 'sequence_id', CASE WHEN @random THEN 0 ELSE 1 END); - -DELETE FROM `%TABLE_PREFIX%config` -WHERE `namespace`='core' AND `key` = 'use_random_ids'; + ('core', 'number_format', IF(@random, '######', '#')), + ('core', 'sequence_id', IF(@random, 0, 1)); ALTER TABLE `%TABLE_PREFIX%help_topic` - ADD `flags` int(10) unsigned DEFAULT '0' AFTER `noautoresp`, - ADD `sequence_id` int(10) unsigned NOT NULL DEFAULT '0' AFTER `form_id`, - ADD `number_format` varchar(32) DEFAULT NULL AFTER `topic`; + ADD `flags` int(10) unsigned DEFAULT '0' AFTER `noautoresp`, + ADD `sequence_id` int(10) unsigned NOT NULL DEFAULT '0' AFTER `form_id`, + ADD `number_format` varchar(32) DEFAULT NULL AFTER `topic`; ALTER TABLE `%TABLE_PREFIX%list` ADD `masks` INT UNSIGNED NOT NULL DEFAULT '0' AFTER `sort_mode`, @@ -50,9 +47,9 @@ ALTER TABLE `%TABLE_PREFIX%list` CREATE TABLE IF NOT EXISTS `%TABLE_PREFIX%ticket_status` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(60) NOT NULL DEFAULT '', - `state` varchar(16) NOT NULL DEFAULT 'open', + `state` varchar(16) DEFAULT NULL, `mode` int(11) unsigned NOT NULL DEFAULT '0', - `flags` int(10) unsigned NOT NULL DEFAULT '0', + `flags` int(11) unsigned NOT NULL DEFAULT '0', `sort` int(11) unsigned NOT NULL DEFAULT '0', `notes` text NOT NULL, `created` datetime NOT NULL, @@ -72,7 +69,13 @@ ALTER TABLE `%TABLE_PREFIX%ticket` ADD `status_id` INT UNSIGNED NOT NULL DEFAULT '0' AFTER `user_email_id`, ADD INDEX (`status_id`); +UPDATE `%TABLE_PREFIX%ticket` SET `status_id` = 3 + WHERE `status` = 'closed'; + +UPDATE `%TABLE_PREFIX%ticket` SET `status_id` = 1 + WHERE `status` = 'open'; + -- Finished with patch UPDATE `%TABLE_PREFIX%config` - SET `value` = 'b38066879371ed792958b4ba9bc8de4a' + SET `value` = '03ff59bf35a58a102e9b32ad33c2839f' WHERE `key` = 'schema_signature' AND `namespace` = 'core'; diff --git a/include/upgrader/streams/core/8f99b8bf-b3806687.task.php b/include/upgrader/streams/core/8f99b8bf-03ff59bf.task.php similarity index 100% rename from include/upgrader/streams/core/8f99b8bf-b3806687.task.php rename to include/upgrader/streams/core/8f99b8bf-03ff59bf.task.php diff --git a/setup/inc/streams/core/install-mysql.sql b/setup/inc/streams/core/install-mysql.sql index ac5c3783f3ecd1fcb0b646f2e1e8a7d9a8c17056..4879e53ce514f2aa1f4ba813b1fd967b3ae3f2cb 100644 --- a/setup/inc/streams/core/install-mysql.sql +++ b/setup/inc/streams/core/install-mysql.sql @@ -599,7 +599,6 @@ CREATE TABLE `%TABLE_PREFIX%ticket` ( `email_id` int(11) unsigned NOT NULL default '0', `flags` int(10) unsigned NOT NULL default '0', `ip_address` varchar(64) NOT NULL default '', - `status` enum('open','closed') NOT NULL default 'open', `source` enum('Web','Email','Phone','API','Other') NOT NULL default 'Other', `isoverdue` tinyint(1) unsigned NOT NULL default '0', `isanswered` tinyint(1) unsigned NOT NULL default '0', @@ -614,7 +613,6 @@ CREATE TABLE `%TABLE_PREFIX%ticket` ( KEY `user_id` (`user_id`), KEY `dept_id` (`dept_id`), KEY `staff_id` (`staff_id`), - KEY `status` (`status`), KEY `team_id` (`team_id`), KEY `status_id` (`status_id`), KEY `created` (`created`), @@ -679,9 +677,9 @@ DROP TABLE IF EXISTS `%TABLE_PREFIX%ticket_status`; CREATE TABLE IF NOT EXISTS `%TABLE_PREFIX%ticket_status` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(60) NOT NULL DEFAULT '', - `state` varchar(16) NOT NULL DEFAULT 'open', + `state` varchar(16) DEFAULT NULL, `mode` int(11) unsigned NOT NULL DEFAULT '0', - `flags` int(10) unsigned NOT NULL DEFAULT '0', + `flags` int(11) unsigned NOT NULL DEFAULT '0', `sort` int(11) unsigned NOT NULL DEFAULT '0', `notes` text NOT NULL, `created` datetime NOT NULL,