@@ -, +, @@ --- C4/Auth.pm | 2 +- Koha/ArticleRequests.pm | 2 +- Koha/Libraries.pm | 3 ++- Koha/Patron/Discharge.pm | 2 +- Koha/Patron/Modifications.pm | 2 +- Koha/Patrons.pm | 2 +- Koha/Reviews.pm | 2 +- members/member-flags.pl | 7 +++++-- members/memberentry.pl | 9 +++++---- members/moremember.pl | 8 +++++--- 10 files changed, 23 insertions(+), 16 deletions(-) --- a/C4/Auth.pm +++ a/C4/Auth.pm @@ -256,7 +256,7 @@ sub get_template_and_user { ); } - $template->param( "USER_INFO" => $patron->unblessed ); + $template->param( "USER_INFO" => $patron->unblessed ) if $borrowernumber != 0; my $all_perms = get_all_subpermissions(); --- a/Koha/ArticleRequests.pm +++ a/Koha/ArticleRequests.pm @@ -51,7 +51,7 @@ sub search_limited { my $userenv = C4::Context->userenv; my @restricted_branchcodes; - if ( $userenv ) { + if ( $userenv and $userenv->{number} ) { my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); @restricted_branchcodes = $logged_in_user->libraries_where_can_see_patrons; } --- a/Koha/Libraries.pm +++ a/Koha/Libraries.pm @@ -46,7 +46,8 @@ sub search_filtered { my ( $self, $params, $attributes ) = @_; my @branchcodes; - if ( my $userenv = C4::Context->userenv ) { + my $userenv = C4::Context->userenv; + if ( $userenv and $userenv->{number} ) { my $only_from_group = $params->{only_from_group}; if ( $only_from_group ) { my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); --- a/Koha/Patron/Discharge.pm +++ a/Koha/Patron/Discharge.pm @@ -183,7 +183,7 @@ sub search_limited { my ( $params, $attributes ) = @_; my $userenv = C4::Context->userenv; my @restricted_branchcodes; - if ( $userenv ) { + if ( $userenv and $userenv->{number} ) { my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); @restricted_branchcodes = $logged_in_user->libraries_where_can_see_patrons; } --- a/Koha/Patron/Modifications.pm +++ a/Koha/Patron/Modifications.pm @@ -54,7 +54,7 @@ sub pending_count { my $userenv = C4::Context->userenv; my @branchcodes; - if ( $userenv ) { + if ( $userenv and $userenv->{number} ) { my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); if ($branchcode) { return 0 unless $logged_in_user->can_see_patrons_from($branchcode); --- a/Koha/Patrons.pm +++ a/Koha/Patrons.pm @@ -54,7 +54,7 @@ sub search_limited { my $userenv = C4::Context->userenv; my @restricted_branchcodes; - if ( $userenv ) { + if ( $userenv and $userenv->{number} ) { my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); @restricted_branchcodes = $logged_in_user->libraries_where_can_see_patrons; } --- a/Koha/Reviews.pm +++ a/Koha/Reviews.pm @@ -48,7 +48,7 @@ sub search_limited { my $userenv = C4::Context->userenv; my @restricted_branchcodes; - if ( $userenv ) { + if ( $userenv and $userenv->{number} ) { my $logged_in_user = Koha::Patrons->find( $userenv->{number} ); @restricted_branchcodes = $logged_in_user->libraries_where_can_see_patrons; } --- a/members/member-flags.pl +++ a/members/member-flags.pl @@ -41,8 +41,11 @@ my ($template, $loggedinuser, $cookie) = get_template_and_user({ debug => 1, }); -my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; -output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +my $userenv = C4::Context->userenv; +if ( $userenv and $userenv->{number} ) { # Allow DB user to create a superlibrarian patron + my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; + output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +} my %member2; $member2{'borrowernumber'}=$member; --- a/members/memberentry.pl +++ a/members/memberentry.pl @@ -76,9 +76,12 @@ my ($template, $loggedinuser, $cookie) }); my $borrowernumber = $input->param('borrowernumber'); -my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; my $patron = Koha::Patrons->find($borrowernumber); -output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +my $userenv = C4::Context->userenv; +if ( $userenv and $userenv->{number} ) { # Allow DB user to create a superlibrarian patron + my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; + output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +} if ( C4::Context->preference('SMSSendDriver') eq 'Email' ) { my @providers = Koha::SMS::Providers->search(); @@ -106,8 +109,6 @@ my $step = $input->param('step') || 0; my @errors; my $borrower_data; my $NoUpdateLogin; -my $userenv = C4::Context->userenv; - ## Deal with debarments $template->param( --- a/members/moremember.pl +++ a/members/moremember.pl @@ -119,9 +119,12 @@ my $borrowernumber = $input->param('borrowernumber'); my $error = $input->param('error'); $template->param( error => $error ) if ( $error ); -my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; my $patron = Koha::Patrons->find( $borrowernumber ); -output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +my $userenv = C4::Context->userenv; +if ( $userenv and $userenv->{number} ) { # Allow DB user to create a superlibrarian patron + my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; + output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +} my $issues = $patron->checkouts; my $balance = $patron->account->balance; @@ -196,7 +199,6 @@ $bor{'borrowernumber'} = $borrowernumber; # Converts the branchcode to the branch name my $samebranch; if ( C4::Context->preference("IndependentBranches") ) { - my $userenv = C4::Context->userenv; if ( C4::Context->IsSuperLibrarian() ) { $samebranch = 1; } --