diff --git a/installer/data/mysql/atomicupdate/bug_16978.sql b/installer/data/mysql/atomicupdate/bug_16978.sql new file mode 100644 index 0000000000..6d15c214e0 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_16978.sql @@ -0,0 +1,3 @@ +INSERT IGNORE INTO `permissions` + (module_bit, code, description) VALUES + (16, 'delete_reports', 'Delete SQL reports'); diff --git a/installer/data/mysql/userpermissions.sql b/installer/data/mysql/userpermissions.sql index abeeb3a05c..26b4e5c1a5 100644 --- a/installer/data/mysql/userpermissions.sql +++ b/installer/data/mysql/userpermissions.sql @@ -68,6 +68,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, 'delete_reports', 'Delete SQL reports'), (18, 'manage_courses', 'Add, edit and delete courses'), (18, 'add_reserves', 'Add course reserves'), (18, 'delete_reserves', 'Remove course reserves'), diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc index 6a80ba18d0..bcff76b663 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc @@ -90,6 +90,7 @@ [%- CASE 'renew_subscription' -%]Renew a subscription [%- CASE 'routing' -%]Routing [%- CASE 'superserials' -%]Manage subscriptions from any branch (only applies when IndependentBranches is used) + [%- CASE 'delete_reports' -%]Delete SQL reports [%- CASE 'create_reports' -%]Create SQL reports [%- CASE 'execute_reports' -%]Execute SQL reports [%- CASE 'add_reserves' -%]Add course reserves diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc index 25f848aa8a..232ddd3fb4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc @@ -25,7 +25,7 @@ [% END %] - [% IF ( CAN_user_reports_create_reports ) %] + [% IF ( CAN_user_reports_delete_reports ) %]
Delete diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/help/members/member-flags.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/help/members/member-flags.tt index 974a2157a1..b116e9e8d3 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/help/members/member-flags.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/help/members/member-flags.tt @@ -499,6 +499,12 @@

If the staff member has 'reports' permissions they have the ability to perform all of these actions. If you would like to control reports permissions on a more granular level choose from these options:

diff --git a/reports/guided_reports.pl b/reports/guided_reports.pl index 3a122d21f9..a9963dbed6 100755 --- a/reports/guided_reports.pl +++ b/reports/guided_reports.pl @@ -53,12 +53,16 @@ my $usecache = Koha::Caches->get_instance->memcached_cache; my $phase = $input->param('phase') // ''; my $flagsrequired; -if ( $phase eq 'Build new' or $phase eq 'Delete Saved' ) { +if ( $phase eq 'Build new' ) { $flagsrequired = 'create_reports'; } elsif ( $phase eq 'Use saved' ) { $flagsrequired = 'execute_reports'; -} else { +} +elsif ( $phase eq 'Delete Saved' ) { + $flagsrequired = 'delete_reports'; +} +else { $flagsrequired = '*'; }