From edfba48290812674fca96932f116435346bbcc8f Mon Sep 17 00:00:00 2001 From: Alex Buckley Date: Wed, 17 Aug 2022 20:41:52 +1200 Subject: [PATCH] Bug 30418: Database changes Sponsored-by: Catalyst IT, New Zealand Signed-off-by: Kyle M Hall Signed-off-by: Lucas Gass Signed-off-by: Tomas Cohen Arazi --- installer/data/mysql/atomicupdate/bug_30418.pl | 16 ++++++++++++++++ installer/data/mysql/kohastructure.sql | 1 + .../data/mysql/mandatory/userpermissions.sql | 1 + 3 files changed, 18 insertions(+) create mode 100755 installer/data/mysql/atomicupdate/bug_30418.pl diff --git a/installer/data/mysql/atomicupdate/bug_30418.pl b/installer/data/mysql/atomicupdate/bug_30418.pl new file mode 100755 index 0000000000..f4c425a08c --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_30418.pl @@ -0,0 +1,16 @@ +use Modern::Perl; + +return { + bug_number => "30418", + description => "Add new list permission and new column to virtualshelves", + up => sub { + my ($args) = @_; + my ($dbh, $out) = @$args{qw(dbh out)}; + + if( !column_exists( 'virtualshelves', 'allow_change_from_permitted_staff' ) ) { + $dbh->do(q{ALTER TABLE virtualshelves ADD COLUMN `allow_change_from_permitted_staff` tinyint(1) DEFAULT '0' COMMENT 'can staff with edit_public_list_contents permission change contents?'}); + } + + $dbh->do(q{ INSERT IGNORE INTO permissions (module_bit, code, description) VALUES (20, 'edit_public_list_contents', 'Edit public list contents') }); + }, +}; diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index f75d9865d8..c27fda954c 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -6035,6 +6035,7 @@ CREATE TABLE `virtualshelves` ( `allow_change_from_owner` tinyint(1) DEFAULT 1 COMMENT 'can owner change contents?', `allow_change_from_others` tinyint(1) DEFAULT 0 COMMENT 'can others change contents?', `allow_change_from_staff` tinyint(1) DEFAULT 0 COMMENT 'can staff change contents?', + `allow_change_from_permitted_staff` tinyint(1) DEFAULT 0 COMMENT 'can staff with edit_public_list_contents permission change contents?', PRIMARY KEY (`shelfnumber`), KEY `virtualshelves_ibfk_1` (`owner`), CONSTRAINT `virtualshelves_ibfk_1` FOREIGN KEY (`owner`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE SET NULL ON UPDATE SET NULL diff --git a/installer/data/mysql/mandatory/userpermissions.sql b/installer/data/mysql/mandatory/userpermissions.sql index 0c394f9500..c3dcf91dee 100644 --- a/installer/data/mysql/mandatory/userpermissions.sql +++ b/installer/data/mysql/mandatory/userpermissions.sql @@ -137,6 +137,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES (19, 'configure', 'Configure plugins'), (20, 'delete_public_lists', 'Delete public lists'), (20, 'edit_public_lists', 'Edit public lists'), + (20, 'edit_public_list_contents', 'Edit public list contents'), (21, 'edit_templates', 'Create and update club templates'), (21, 'edit_clubs', 'Create and update clubs'), (21, 'enroll', 'Enroll patrons in clubs'), -- 2.39.5