Bugzilla – Attachment 164395 Details for
Bug 36507
Cannot set desk or register as non superlibrarian
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 36507: Allow non-superlibrarians to set desk and register
Bug-36507-Allow-non-superlibrarians-to-set-desk-an.patch (text/plain), 4.02 KB, created by
Lucas Gass (lukeg)
on 2024-04-03 21:49:32 UTC
(
hide
)
Description:
Bug 36507: Allow non-superlibrarians to set desk and register
Filename:
MIME Type:
Creator:
Lucas Gass (lukeg)
Created:
2024-04-03 21:49:32 UTC
Size:
4.02 KB
patch
obsolete
>From f9bdb1a3157d03c2b1f5ea3fddf458eb27832104 Mon Sep 17 00:00:00 2001 >From: Lucas Gass <lucas@bywatersolutions.com> >Date: Wed, 3 Apr 2024 21:46:08 +0000 >Subject: [PATCH] Bug 36507: Allow non-superlibrarians to set desk and register > >To test: > >1. Turn on UseCirculationDesks >2. Create some desks >3. Login as a non-superlibrarian >4. Try to switch desks, get an error > >5. Turn on UseCashRegisters >6. Create some registers >7. As a non-superlibrarian try to change your register, get an error. > >8. APPLY PATCH and restart_all >9. Try changing your desk and register again, it should now work. >--- > circ/set-library.pl | 38 ++++++++++++++++++++------------------ > 1 file changed, 20 insertions(+), 18 deletions(-) > >diff --git a/circ/set-library.pl b/circ/set-library.pl >index 7929a2701b..b370245bd3 100755 >--- a/circ/set-library.pl >+++ b/circ/set-library.pl >@@ -51,55 +51,57 @@ my @updated; > > my $library = Koha::Libraries->find($branch); > # $session lines here are doing the updating >+## Please see file perltidy.ERR > if ( > $op eq 'cud-set-library' > && $library > && ( C4::Auth::haspermission( C4::Context->userenv->{'id'}, { 'loggedinlibrary' => 1 } ) >- or C4::Context::IsSuperLibraian() ) >+ or C4::Context::IsSuperLibrarian() ) > ) > { >- if ( !$userenv_branch or $userenv_branch ne $branch ) { >+ if ( !$userenv_branch or $userenv_branch ne $branch ) { > my $branchname = $library->branchname; >- $session->param('branchname', $branchname); # update sesssion in DB >- $session->param('branch', $branch); # update sesssion in DB >+ $session->param( 'branchname', $branchname ); # update sesssion in DB >+ $session->param( 'branch', $branch ); # update sesssion in DB > push @updated, { > updated_branch => 1, >- old_branch => $userenv_branch, >- new_branch => $branch, >+ old_branch => $userenv_branch, >+ new_branch => $branch, > }; >- } # else branch the same, no update >- if ( $desk_id && (!$userenv_desk or $userenv_desk ne $desk_id) ) { >- my $desk = Koha::Desks->find( { desk_id => $desk_id } ); >+ } # else branch the same, no update >+} elsif ( $op eq 'cud-set-library' && $library ) { >+ if ( $desk_id && ( !$userenv_desk or $userenv_desk ne $desk_id ) ) { >+ my $desk = Koha::Desks->find( { desk_id => $desk_id } ); > my $old_desk_name = ''; > if ($userenv_desk) { >- $old_desk_name = Koha::Desks->find( { desk_id => $userenv_desk })->desk_name; >+ $old_desk_name = Koha::Desks->find( { desk_id => $userenv_desk } )->desk_name; > } > $template->param( LoginDeskname => $desk->desk_name ); >- $template->param( LoginDeskid => $desk->desk_id ); >+ $template->param( LoginDeskid => $desk->desk_id ); > $session->param( desk_name => $desk->desk_name ); >- $session->param( desk_id => $desk->desk_id ); >+ $session->param( desk_id => $desk->desk_id ); > $session->flush(); > push @updated, { > updated_desk => 1, >- old_desk => $old_desk_name, >+ old_desk => $old_desk_name, > }; > } > if ( defined($register_id) > && ( $userenv_register_id ne $register_id ) ) > { > my $old_register_name = C4::Context->userenv->{'register_name'} || ''; >- my $register = Koha::Cash::Registers->find($register_id); >- $session->param( 'register_id', $register_id ); >+ my $register = Koha::Cash::Registers->find($register_id); >+ $session->param( 'register_id', $register_id ); > $session->param( 'register_name', $register ? $register->name : '' ); > push @updated, >- { >+ { > updated_register => 1, > old_register => $old_register_name >- }; >+ }; > } > $session->flush(); > } else { >- $branch = $userenv_branch; # fallback value >+ $branch = $userenv_branch; # fallback value > $desk_id = $userenv_desk; > } > >-- >2.30.2
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 36507
:
164395
|
164396