Bugzilla – Attachment 190856 Details for
Bug 35870
Adding an edit_authorities subpermission for editauthorities
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 35870: Add new subpermission edit_authorities
Bug-35870-Add-new-subpermission-editauthorities.patch (text/plain), 8.95 KB, created by
David Nind
on 2026-01-03 03:15:38 UTC
(
hide
)
Description:
Bug 35870: Add new subpermission edit_authorities
Filename:
MIME Type:
Creator:
David Nind
Created:
2026-01-03 03:15:38 UTC
Size:
8.95 KB
patch
obsolete
>From 0c1a015845dc79d0f9b50fa1337b52096e24ad77 Mon Sep 17 00:00:00 2001 >From: Wainui Witika-Park <wainuiwitikapark@catalyst.net.nz> >Date: Tue, 23 Jan 2024 16:07:08 +1300 >Subject: [PATCH] Bug 35870: Add new subpermission edit_authorities > >Add a new sub permission for authority records - this will >enbale the adding other granular permssions in future bugs, >such as deleting and editing authority records. > >Test plan: >1. Apply the patch. >2. Update the database. >3. Login to the staff interface as a superlibrarian. >4. Add or edit an existing staff patron. >5. Set the patron's permissions to catalogue so they can access > the staff interface. >6. Logout and log back in to the staff interface as the patron. >7. Go to Authorities. >8. Notice how you cannot add a new authority record. >9. Logout and log back in to the staff interface as a superlibrarian. >10. Edit the staff patron - add permission editauthorities and > sub permission edit_authorities. >11. Logout and log back in to the staff interface as the staff > patron. >12. Go to Authorities. >13. Notice how you can now add a new authority record. >14. Try adding a new authority record and make sure you can edit it. > >Sponsored-by: Education Services Australia SCIS >Signed-off-by: David Nind <david@davidnind.com> >--- > authorities/authorities.pl | 2 +- > ..._35870_add_edit_authorities_subpermission.pl | 17 +++++++++++++++++ > .../data/mysql/mandatory/userpermissions.sql | 1 + > .../prog/en/includes/authorities-toolbar.inc | 6 +++--- > .../prog/en/includes/permissions.inc | 5 +++++ > .../authorities/searchresultlist-auth.tt | 8 +++++--- > .../en/modules/authorities/searchresultlist.tt | 4 ++-- > 7 files changed, 34 insertions(+), 9 deletions(-) > create mode 100755 installer/data/mysql/atomicupdate/bug_35870_add_edit_authorities_subpermission.pl > >diff --git a/authorities/authorities.pl b/authorities/authorities.pl >index 592fc68274..dc9ac760e4 100755 >--- a/authorities/authorities.pl >+++ b/authorities/authorities.pl >@@ -568,7 +568,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( > template_name => "authorities/authorities.tt", > query => $input, > type => "intranet", >- flagsrequired => { editauthorities => 1 }, >+ flagsrequired => { editauthorities => 'edit_authorities' }, > } > ); > $template->param( index => $myindex, authtypecode => $authtypecode, breedingid => $breedingid, count => $count ); >diff --git a/installer/data/mysql/atomicupdate/bug_35870_add_edit_authorities_subpermission.pl b/installer/data/mysql/atomicupdate/bug_35870_add_edit_authorities_subpermission.pl >new file mode 100755 >index 0000000000..f22fd49b84 >--- /dev/null >+++ b/installer/data/mysql/atomicupdate/bug_35870_add_edit_authorities_subpermission.pl >@@ -0,0 +1,17 @@ >+use Modern::Perl; >+use Koha::Installer::Output qw(say_warning say_success say_info); >+ >+return { >+ bug_number => "35870", >+ description => "Adding an edit_authorities subpermission for editauthorities", >+ up => sub { >+ my ($args) = @_; >+ my ( $dbh, $out ) = @$args{qw(dbh out)}; >+ >+ $dbh->do( >+ q{INSERT IGNORE INTO permissions (module_bit, code, description) VALUES ('14','edit_authorities','Edit authority records')} >+ ); >+ >+ say_success( $out, "Added new permission 'edit_authorities'" ); >+ }, >+}; >diff --git a/installer/data/mysql/mandatory/userpermissions.sql b/installer/data/mysql/mandatory/userpermissions.sql >index 34b868d2d5..1343523827 100644 >--- a/installer/data/mysql/mandatory/userpermissions.sql >+++ b/installer/data/mysql/mandatory/userpermissions.sql >@@ -133,6 +133,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES > (13, 'access_files', 'Access to the files stored on the server'), > (13, 'upload_general_files', 'Upload any file'), > (13, 'upload_manage', 'Manage uploaded files'), >+ (14, 'edit_authorities', 'Edit authority records'), > (15, 'check_expiration', 'Check the expiration of a serial'), > (15, 'claim_serials', 'Claim missing serials'), > (15, 'create_subscription', 'Create a new subscription'), >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-toolbar.inc >index 6a5849cddd..8727903a5f 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-toolbar.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-toolbar.inc >@@ -1,6 +1,6 @@ >-[% IF ( authid || CAN_user_editauthorities) %] >+[% IF ( authid || CAN_user_editauthorities_edit_authorities ) %] > <div id="toolbar" class="btn-toolbar sticky"> >- [% IF ( CAN_user_editauthorities ) %] >+ [% IF ( CAN_user_editauthorities_edit_authorities ) %] > <div class="btn-group"> > <button class="btn btn-default dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <i class="fa fa-plus"></i> New authority </button> > <ul class="dropdown-menu"> >@@ -17,7 +17,7 @@ > [% END %] > > [% IF ( authid ) %] >- [% IF ( CAN_user_editauthorities ) %] >+ [% IF ( CAN_user_editauthorities_edit_authorities ) %] > <div class="btn-group"> > <button class="btn btn-default dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> <i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit </button> > <ul class="dropdown-menu"> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >index 9aae9efba0..a8a6487335 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >@@ -454,6 +454,11 @@ > [%- CASE 'rotating_collections' -%] > <span class="sub_permission rotating_collections_subpermission"> Manage rotating collections </span> > <span class="permissioncode">([% name | html %])</span> >+ [%- CASE 'edit_authorities' -%] >+ <span class="sub_permission edit_authorities"> >+ Edit authority records >+ </span> >+ <span class="permissioncode">([% name | html %])</span> > [%- CASE 'schedule_tasks' -%] > <span class="sub_permission schedule_tasks_subpermission"> Schedule tasks to run </span> > <span class="permissioncode">([% name | html %])</span> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tt >index 363ae676a3..a2e39e4a55 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tt >@@ -128,9 +128,11 @@ > <a class="btn btn-xs btn-default" href="javascript:doauth('[% line.authid | html %]', '[% index | html %]', '')"><i class="fa fa-plus"></i> Choose</a> > [% END %] > </td> >- <td >- ><a class="btn btn-xs btn-default" href="authorities.pl?authid=[% line.authid | html %]"><i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit authority</a></td >- > >+ <td> >+ [% IF CAN_user_editauthorities_edit_authorities %] >+ <a class="btn btn-xs btn-default" href="authorities.pl?authid=[% line.authid | html %]"><i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit authority</a> >+ [% END %] >+ </td> > </tr> > [% END %] > </table> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tt >index 861eca86c3..67d8b24f50 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tt >@@ -69,7 +69,7 @@ > [% IF Koha.Preference('ShowHeadingUse') %] > <th class="heading_use">Heading use</th> > [% END %] >- [% IF ( CAN_user_editauthorities ) %] >+ [% IF ( CAN_user_editauthorities_edit_authorities ) %] > <th> </th> > [% END %] > </tr> >@@ -101,7 +101,7 @@ > </ul></td > > > [% END %] >- [% IF ( CAN_user_editauthorities ) %] >+ [% IF ( CAN_user_editauthorities_edit_authorities ) %] > <td> > <div class="btn-group dropup"> > <a class="btn btn-default btn-xs dropdown-toggle" id="authactions[% line.authid | html %]" role="button" data-bs-toggle="dropdown" href="#"> Actions</a> >-- >2.39.5
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 35870
:
161264
|
161317
|
177208
|
177488
|
177493
|
178895
|
190566
| 190856