@@ -, +, @@ column in article_requests table --- .../data/mysql/atomicupdate/bug_27944.perl | 30 +++++++++++++++++++ installer/data/mysql/kohastructure.sql | 2 +- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 installer/data/mysql/atomicupdate/bug_27944.perl --- a/installer/data/mysql/atomicupdate/bug_27944.perl +++ a/installer/data/mysql/atomicupdate/bug_27944.perl @@ -0,0 +1,30 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if ( CheckVersion($DBversion) ) { + + # you can use $dbh here like: + $dbh->do( +"ALTER TABLE `article_requests` MODIFY `status` enum('REQUESTED', 'PENDING','PROCESSING','COMPLETED','CANCELED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'REQUESTED'" + ); + + $dbh->do( + q{ + UPDATE `letter` + SET `code` = 'AR_REQUESTED', + `name` = 'Article requested' + WHERE `module` = 'circulation' + AND `code` = 'AR_PENDING' + } + ); + + $dbh->do( + q{ + INSERT IGNORE INTO `letter` (`module`, `code`, `branchcode`, `name`, `is_html`, `title`, `content`, `message_transport_type`) VALUES + ('circulation', 'AR_PENDING', '', 'Article request - open', 0, 'Pending article request', 'Dear <> <> (<>)\r\n\r\nYour request for an article from <> (<>) is now in pending state.\r\n\r\nArticle requested:\r\nTitle: <>\r\nAuthor: <>\r\nVolume: <>\r\nIssue: <>\r\nDate: <>\r\nPages: <>\r\nChapters: <>\r\nNotes: <>\r\n\r\n\r\nThank you!', 'email') + } + ); + + # Always end with this (adjust the bug info) + NewVersion( $DBversion, 27944, +"Add REQUESTED as enum element for status column, move AR_PENDING letter to AR_REQUESTED, and add new AR_PENDING letter" + ); +} --- a/installer/data/mysql/kohastructure.sql +++ a/installer/data/mysql/kohastructure.sql @@ -749,7 +749,7 @@ CREATE TABLE `article_requests` ( `pages` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL, `chapters` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL, `patron_notes` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL, - `status` enum('PENDING','PROCESSING','COMPLETED','CANCELED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING', + `status` enum('REQUESTED', 'PENDING','PROCESSING','COMPLETED','CANCELED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'REQUESTED', `notes` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL, `format` enum('PHOTOCOPY', 'SCAN') NOT NULL DEFAULT 'PHOTOCOPY', `urls` MEDIUMTEXT, --