Bug 10277: (follow-up) if no userenv is set, act like a superlibrarian

This patch fixes an error caught by t/db_dependent/Acquisition.t, and
adjusts C4::Context::IsSuperLibrarian() to return true if no
userenv is set. This is done on the basis that if no userenv is set,
calls to C4::Context routines are being made from a command-line script,
and if you have access to the command line of a running Koha instance,
you implicitly already have better than superlibrarian access.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
This commit is contained in:
Galen Charlton 2013-12-30 18:50:04 +00:00
parent 87564a834b
commit 71b7d56298

View file

@ -1245,8 +1245,11 @@ sub IsSuperLibrarian {
my $userenv = C4::Context->userenv;
unless ( $userenv and exists $userenv->{flags} ) {
carp("C4::Context->userenv not defined!");
return 0;
# If we reach this without a user environment,
# assume that we're running from a command-line script,
# and act as a superlibrarian.
carp("C4::Context->userenv not defined!");
return 1;
}
return $userenv->{flags} % 2;