@@ -, +, @@ exchange rates - Create some staff users with different permission sets 1) superlibrarian 2) parameters 3) parameters_remaining_permissions 4) manage_circ_rules, but not parmeters_remaining_permissions 5) all acquisition permissions - Apply patch and run database update - Verify new permission has been added and staff users updated 1) remains the same 2) + 3) will have currencies_manage 4) remains unchanged, doesn't have new permission 5) remains the same, will have access now because of having the top level acquisition permission - Verify the changed pages work correctly: - navigation on admin home page NOTE: the acquisition parameters section will now honor all different related permissions (edi_manage, budget_manage,...) - navigation on acquisition home page - try to access currencies page directly --- admin/currency.pl | 2 +- .../bug763_currencies_manage_permission.sql | 7 +++++++ installer/data/mysql/userpermissions.sql | 1 + .../prog/en/includes/acquisitions-menu.inc | 2 +- .../intranet-tmpl/prog/en/includes/permissions.inc | 1 + .../prog/en/modules/admin/admin-home.tt | 14 +++++++++++--- 6 files changed, 22 insertions(+), 5 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug763_currencies_manage_permission.sql --- a/admin/currency.pl +++ a/admin/currency.pl @@ -40,7 +40,7 @@ our ( $template, $loggedinuser, $cookie ) = get_template_and_user( query => $input, type => 'intranet', authnotrequired => 0, - flagsrequired => { parameters => 'parameters_remaining_permissions' }, + flagsrequired => { acquisition => 'currencies_manage' }, } ); --- a/installer/data/mysql/atomicupdate/bug763_currencies_manage_permission.sql +++ a/installer/data/mysql/atomicupdate/bug763_currencies_manage_permission.sql @@ -0,0 +1,7 @@ +INSERT INTO permissions (module_bit, code, description) VALUES (11, 'currencies_manage', 'Manage currencies and exchange rates'); + +INSERT INTO user_permissions (borrowernumber, module_bit, code) + SELECT borrowernumber, 11, 'currencies_manage' FROM borrowers WHERE flags & (1 << 3) OR borrowernumber IN + (SELECT borrowernumber FROM user_permissions WHERE code = 'parameters_remaining_permissions'); + +-- Bug 7651: Add new permission currencies_manage and update staff users --- a/installer/data/mysql/userpermissions.sql +++ a/installer/data/mysql/userpermissions.sql @@ -17,6 +17,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES ( 9, 'delete_all_items', 'Delete all items at once'), (10, 'writeoff', 'Write off fines and fees'), (10, 'remaining_permissions', 'Remaining permissions for managing fines and fees'), + (11, 'currencies_manage', 'Manage currencies and exchange rates'), (11, 'vendors_manage', 'Manage vendors'), (11, 'contracts_manage', 'Manage contracts'), (11, 'period_manage', 'Manage budgets'), --- a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc +++ a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc @@ -18,7 +18,7 @@