diff --git a/admin/marc_order_accounts.pl b/admin/marc_order_accounts.pl index acd969e997..ce5899900b 100755 --- a/admin/marc_order_accounts.pl +++ b/admin/marc_order_accounts.pl @@ -44,6 +44,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( template_name => "admin/marc_order_accounts.tt", query => $input, type => "intranet", + flagsrequired => { acquisition => 'marc_order_manage' }, } ); diff --git a/installer/data/mysql/atomicupdate/bug_34355-add_marc_order_accounts.pl b/installer/data/mysql/atomicupdate/bug_34355-add_marc_order_accounts.pl index 149afbeee9..c50eae6c66 100755 --- a/installer/data/mysql/atomicupdate/bug_34355-add_marc_order_accounts.pl +++ b/installer/data/mysql/atomicupdate/bug_34355-add_marc_order_accounts.pl @@ -43,5 +43,13 @@ return { } ); + $dbh->do( + q{ + INSERT IGNORE INTO permissions (module_bit, code, description) values (11, 'marc_order_manage', 'Manage MARC ordering'); + } + ); + + + }, }; diff --git a/installer/data/mysql/mandatory/userpermissions.sql b/installer/data/mysql/mandatory/userpermissions.sql index 80bf9dc2d3..1d8b7d034f 100644 --- a/installer/data/mysql/mandatory/userpermissions.sql +++ b/installer/data/mysql/mandatory/userpermissions.sql @@ -86,6 +86,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES (11, 'budget_add_del', 'Add and delete funds (but can''t modify funds)'), (11, 'budget_manage_all', 'Manage all funds'), (11, 'edi_manage', 'Manage EDIFACT transmissions'), + (11, 'marc_order_manage', 'Manage MARC ordering'), (11, 'reopen_closed_invoices', 'Reopen closed invoices'), (11, 'edit_invoices', 'Edit invoices'), (11, 'delete_invoices', 'Delete invoices'), diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc index a633ff21a2..819be190c7 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc @@ -24,7 +24,7 @@ [% END %] [% END %] - [% IF ( CAN_user_acquisition_period_manage || CAN_user_acquisition_budget_manage || CAN_user_acquisition_currencies_manage || ( Koha.Preference('EDIFACT') && CAN_user_acquisition_edi_manage ) || CAN_user_parameters_manage_additional_fields ) %] + [% IF ( CAN_user_acquisition_period_manage || CAN_user_acquisition_budget_manage || CAN_user_acquisition_currencies_manage || ( Koha.Preference('EDIFACT') && CAN_user_acquisition_edi_manage ) || CAN_user_parameters_manage_additional_fields ) || ( Koha.Preference('MarcOrderingAutomation') && CAN_user_acquisition_marc_order_manage ) %]
Administration
[% END %] - [% IF ( CAN_user_acquisition_currencies_manage || CAN_user_acquisition_period_manage || CAN_user_acquisition_budget_manage || ( Koha.Preference('EDIFACT') && CAN_user_acquisition_edi_manage ) ) %] + [% IF ( CAN_user_acquisition_currencies_manage || CAN_user_acquisition_period_manage || CAN_user_acquisition_budget_manage || ( Koha.Preference('EDIFACT') && CAN_user_acquisition_edi_manage ) ) || ( Koha.Preference('MarcOrderingAutomation') && CAN_user_acquisition_marc_order_manage ) %]
Acquisition parameters
[% END %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc index b976924041..9d8cb5b910 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc @@ -827,6 +827,11 @@ Manage EDIFACT transmissions ([% name | html %]) + [%- CASE 'marc_order_manage' -%] + + Manage MARC ordering + + ([% name | html %]) [%- CASE 'reopen_closed_invoices' -%] Reopen closed invoices diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt index 8c4b90064e..49fa3df4c8 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt @@ -246,7 +246,7 @@
Library EANs
Manage library EDI EANs
[% END %] - [% IF Koha.Preference('MarcOrderingAutomation') %] + [% IF ( Koha.Preference('MarcOrderingAutomation') && CAN_user_acquisition_marc_order_manage ) %]
MARC order accounts
Manage vendor accounts for automated order line creation from marc records
[% END %] diff --git a/t/Koha/Auth/Permissions.t b/t/Koha/Auth/Permissions.t index 426b105855..4b398646f3 100755 --- a/t/Koha/Auth/Permissions.t +++ b/t/Koha/Auth/Permissions.t @@ -115,6 +115,7 @@ subtest 'superlibrarian tests' => sub { 'CAN_user_acquisition_group_manage' => 1, 'CAN_user_acquisition_issue_manage' => 1, 'CAN_user_acquisition_merge_invoices' => 1, + 'CAN_user_acquisition_marc_order_manage' => 1, 'CAN_user_acquisition_order_manage_all' => 1, 'CAN_user_acquisition_order_manage' => 1, 'CAN_user_acquisition_order_receive' => 1,