Bugzilla – Attachment 177493 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.55 KB, created by
David Nind
on 2025-02-03 23:37:42 UTC
(
hide
)
Description:
Bug 35870: Add new subpermission edit_authorities
Filename:
MIME Type:
Creator:
David Nind
Created:
2025-02-03 23:37:42 UTC
Size:
8.55 KB
patch
obsolete
>From f9f90e902b729580d783daf505a85ccde6fb71e0 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 | 4 +++- > .../en/modules/authorities/searchresultlist.tt | 4 ++-- > 7 files changed, 32 insertions(+), 7 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 2133008f4f..a5f980566f 100755 >--- a/authorities/authorities.pl >+++ b/authorities/authorities.pl >@@ -567,7 +567,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 1d8b7d034f..bcb2fa6033 100644 >--- a/installer/data/mysql/mandatory/userpermissions.sql >+++ b/installer/data/mysql/mandatory/userpermissions.sql >@@ -127,6 +127,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 0858140aa2..fa69af6634 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-toolbar.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/authorities-toolbar.inc >@@ -1,7 +1,7 @@ >-[% 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 >@@ -22,7 +22,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 >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >index 9d8cb5b910..c54ab4216e 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >@@ -647,6 +647,11 @@ > 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 >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 6650738d31..f8a604b18e 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 >@@ -116,7 +116,9 @@ > <a class="btn btn-xs btn-default" href="javascript:doauth('[% resul.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=[% resul.authid | html %]"><i class="fa-solid fa-pencil" aria-hidden="true"></i> Edit authority</a></td> >+ [% IF CAN_user_editauthorities_edit_authorities %] >+ <td><a class="btn btn-xs btn-default edit-authority" id="[% resul.authid | html %]" href="authorities.pl?authid=[% resul.authid | html %]"><i class="fa fa-pencil"></i> Edit authority</a></td> >+ [% END %] > </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 fb04d818c5..d0b9cc772c 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tt >@@ -71,7 +71,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 @@ > <li>[% IF resul.series %]<i class="fa fa-check"></i>[% ELSE %]<i class="fa fa-times"></i>[% END %] Series Title</li> > </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[% resul.authid | html %]" role="button" data-bs-toggle="dropdown" href="#"> >-- >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