Bug 42667: Add new edit_all_reports permission

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Brendan Lawlor <blawlor@clamsnet.org>
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>
Signed-off-by: Pedro Amorim <pedro.amorim@openfifth.co.uk>
This commit is contained in:
Kyle M Hall 2026-05-21 11:34:32 -04:00 committed by Pedro Amorim
parent 08a4e352af
commit d2fa6156fd
No known key found for this signature in database
GPG Key ID: 06B75BA7F3894D55
4 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,28 @@
use Modern::Perl;
use Koha::Installer::Output qw(say_warning say_success say_info);
return {
bug_number => "42667",
description => "Split the ability to edit other librarian's reports into a separate permission",
up => sub {
my ($args) = @_;
my ( $dbh, $out ) = @$args{qw(dbh out)};
$dbh->do(
q{
INSERT IGNORE INTO permissions (module_bit, code, description)
VALUES (16, 'edit_all_reports', 'Edit SQL reports created by other librarians')
}
);
say $out "Added new permission 'edit_all_reports'";
$dbh->do(
q{
INSERT IGNORE INTO user_permissions (borrowernumber, module_bit, code)
SELECT borrowernumber, 16, 'edit_all_reports'
FROM user_permissions WHERE code = 'create_reports'
}
);
say $out "Granted 'edit_all_reports' to all patrons who already have 'create_reports'";
},
};

View File

@ -148,6 +148,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES
(15, 'superserials', 'Manage subscriptions from any branch (only applies when IndependentBranches is used)'),
(16, 'execute_reports', 'Execute SQL reports'),
(16, 'create_reports', 'Create SQL reports'),
(16, 'edit_all_reports', 'Edit SQL reports created by other librarians'),
(16, 'delete_own_reports', 'Delete SQL reports you have created'),
(16, 'delete_all_reports', 'Delete SQL reports created by anyone'),
(16, 'manage_report_limits', 'Manage report limits'),

View File

@ -517,6 +517,9 @@
[%- CASE 'create_reports' -%]
<span class="sub_permission create_reports_subpermission"> Create SQL reports </span>
<span class="permissioncode">([% name | html %])</span>
[%- CASE 'edit_all_reports' -%]
<span class="sub_permission edit_all_reports_subpermission"> Edit SQL reports created by other librarians </span>
<span class="permissioncode">([% name | html %])</span>
[%- CASE 'execute_reports' -%]
<span class="sub_permission execute_reports_subpermission"> Execute SQL reports </span>
<span class="permissioncode">([% name | html %])</span>

View File

@ -69,6 +69,7 @@ subtest 'normal staff user test' => sub {
'CAN_user_reports_create_reports' => 1,
'CAN_user_reports_delete_own_reports' => 1,
'CAN_user_reports_delete_all_reports' => 1,
'CAN_user_reports_edit_all_reports' => 1,
'CAN_user_reports_execute_reports' => 1,
'CAN_user_reports_manage_report_limits' => 1,
};
@ -244,6 +245,7 @@ subtest 'superlibrarian tests' => sub {
'CAN_user_reports_create_reports' => 1,
'CAN_user_reports_delete_own_reports' => 1,
'CAN_user_reports_delete_all_reports' => 1,
'CAN_user_reports_edit_all_reports' => 1,
'CAN_user_reports_execute_reports' => 1,
'CAN_user_reports_manage_report_limits' => 1,
'CAN_user_reports' => 1,