From fce25fbc4100435b954d84c0d833c21383d44a37 Mon Sep 17 00:00:00 2001 From: aydreeihn <adriane@enhancesoft.com> Date: Fri, 14 Sep 2018 10:55:10 -0500 Subject: [PATCH] Update Fresh Install Process - add event.yaml file - create the event table using yaml file - modify installation files to remove state and add event_id --- include/class.i18n.php | 1 + include/class.thread.php | 15 +++++ include/i18n/en_US/event.yaml | 61 +++++++++++++++++++ include/upgrader/streams/core.sig | 2 +- ...anup.sql => 26fd79dc-00c949a6.cleanup.sql} | 0 ....patch.sql => 26fd79dc-00c949a6.patch.sql} | 4 +- ...e7.task.php => 26fd79dc-00c949a6.task.php} | 0 setup/inc/streams/core/install-mysql.sql | 8 +-- 8 files changed, 84 insertions(+), 7 deletions(-) create mode 100644 include/i18n/en_US/event.yaml rename include/upgrader/streams/core/{26fd79dc-226da4e7.cleanup.sql => 26fd79dc-00c949a6.cleanup.sql} (100%) rename include/upgrader/streams/core/{26fd79dc-226da4e7.patch.sql => 26fd79dc-00c949a6.patch.sql} (91%) rename include/upgrader/streams/core/{26fd79dc-226da4e7.task.php => 26fd79dc-00c949a6.task.php} (100%) diff --git a/include/class.i18n.php b/include/class.i18n.php index 17709bee8..ab692eb62 100644 --- a/include/class.i18n.php +++ b/include/class.i18n.php @@ -64,6 +64,7 @@ class Internationalization { 'ticket_status.yaml' => 'TicketStatus::__create', // Role 'role.yaml' => 'Role::__create', + 'event.yaml' => 'Event::__create', 'file.yaml' => 'AttachmentFile::__create', 'sequence.yaml' => 'Sequence::__create', 'queue_column.yaml' => 'QueueColumn::__create', diff --git a/include/class.thread.php b/include/class.thread.php index 0807834b3..a2dbb5065 100644 --- a/include/class.thread.php +++ b/include/class.thread.php @@ -2095,6 +2095,21 @@ class Event extends VerySimpleModel { function getDescription() { return $this->description; } + + static function create($vars=false, &$errors=array()) { + $event = new static($vars); + return $event; + } + + static function __create($vars, &$errors=array()) { + $event = self::create($vars); + $event->save(); + return $event; + } + + function save($refetch=false) { + return parent::save($refetch); + } } class ThreadEvents extends InstrumentedList { diff --git a/include/i18n/en_US/event.yaml b/include/i18n/en_US/event.yaml new file mode 100644 index 000000000..7c9c8ed5b --- /dev/null +++ b/include/i18n/en_US/event.yaml @@ -0,0 +1,61 @@ +# +# event.yaml +# +# Events initially inserted into the system. +# +--- +- id: 1 + name: created + description: + +- id: 2 + name: closed + description: + +- id: 3 + name: reopened + description: + +- id: 4 + name: assigned + description: + +- id: 5 + name: released + description: + +- id: 6 + name: transferred + description: + +- id: 7 + name: referred + description: + +- id: 8 + name: overdue + description: + +- id: 9 + name: edited + description: + +- id: 10 + name: viewed + description: + +- id: 11 + name: error + description: + +- id: 12 + name: collab + description: + +- id: 13 + name: resent + description: + +- id: 14 + name: deleted + description: diff --git a/include/upgrader/streams/core.sig b/include/upgrader/streams/core.sig index cd7008c3c..00b209165 100644 --- a/include/upgrader/streams/core.sig +++ b/include/upgrader/streams/core.sig @@ -1 +1 @@ -226da4e7298917160c7499cb63370f83 +00c949a623b82848baaf3480b51307e3 diff --git a/include/upgrader/streams/core/26fd79dc-226da4e7.cleanup.sql b/include/upgrader/streams/core/26fd79dc-00c949a6.cleanup.sql similarity index 100% rename from include/upgrader/streams/core/26fd79dc-226da4e7.cleanup.sql rename to include/upgrader/streams/core/26fd79dc-00c949a6.cleanup.sql diff --git a/include/upgrader/streams/core/26fd79dc-226da4e7.patch.sql b/include/upgrader/streams/core/26fd79dc-00c949a6.patch.sql similarity index 91% rename from include/upgrader/streams/core/26fd79dc-226da4e7.patch.sql rename to include/upgrader/streams/core/26fd79dc-00c949a6.patch.sql index b5d19699c..774e248b9 100644 --- a/include/upgrader/streams/core/26fd79dc-226da4e7.patch.sql +++ b/include/upgrader/streams/core/26fd79dc-00c949a6.patch.sql @@ -1,5 +1,5 @@ /** -* @signature 226da4e7298917160c7499cb63370f83 +* @signature 00c949a623b82848baaf3480b51307e3 * @version v1.11.0 * @title Database Optimization * @@ -41,5 +41,5 @@ ALTER TABLE `%TABLE_PREFIX%thread_event` -- Finished with patch UPDATE `%TABLE_PREFIX%config` - SET `value` = '226da4e7298917160c7499cb63370f83', `updated` = NOW() + SET `value` = '00c949a623b82848baaf3480b51307e3', `updated` = NOW() WHERE `key` = 'schema_signature' AND `namespace` = 'core'; diff --git a/include/upgrader/streams/core/26fd79dc-226da4e7.task.php b/include/upgrader/streams/core/26fd79dc-00c949a6.task.php similarity index 100% rename from include/upgrader/streams/core/26fd79dc-226da4e7.task.php rename to include/upgrader/streams/core/26fd79dc-00c949a6.task.php diff --git a/setup/inc/streams/core/install-mysql.sql b/setup/inc/streams/core/install-mysql.sql index bb13f3944..d023e83ca 100644 --- a/setup/inc/streams/core/install-mysql.sql +++ b/setup/inc/streams/core/install-mysql.sql @@ -717,18 +717,18 @@ CREATE TABLE `%TABLE_PREFIX%event` ( `name` varchar(60) NOT NULL, `description` varchar(60) DEFAULT NULL, PRIMARY KEY (`id`), - UNIQUE KEY `name` (`name`), + UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `%TABLE_PREFIX%thread_event`; CREATE TABLE `%TABLE_PREFIX%thread_event` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `thread_id` int(11) unsigned NOT NULL default '0', + `event_id` int(11) unsigned DEFAULT NULL, `staff_id` int(11) unsigned NOT NULL, `team_id` int(11) unsigned NOT NULL, `dept_id` int(11) unsigned NOT NULL, `topic_id` int(11) unsigned NOT NULL, - `state` enum('created','closed','reopened','assigned','released','transferred', 'referred', 'overdue','edited','viewed','error','collab','resent', 'deleted') NOT NULL, `data` varchar(1024) DEFAULT NULL COMMENT 'Encoded differences', `username` varchar(128) NOT NULL default 'SYSTEM', `uid` int(11) unsigned DEFAULT NULL, @@ -736,8 +736,8 @@ CREATE TABLE `%TABLE_PREFIX%thread_event` ( `annulled` tinyint(1) unsigned NOT NULL default '0', `timestamp` datetime NOT NULL, PRIMARY KEY (`id`), - KEY `ticket_state` (`thread_id`, `state`, `timestamp`), - KEY `ticket_stats` (`timestamp`, `state`) + KEY `ticket_state` (`thread_id`, `event_id`, `timestamp`), + KEY `ticket_stats` (`timestamp`, `event_id`) ) DEFAULT CHARSET=utf8; DROP TABLE IF EXISTS `%TABLE_PREFIX%thread_referral`; -- GitLab