linked with bug 8197, all the lines like that will return a koha error if session cookies have been deleted. It would be nice to correct all the relevant lines.
Also linked with Bug 8434.
Maybe the following change would do the trick: diff --git a/C4/Context.pm b/C4/Context.pm index cc93af4..14ce1c7 100644 --- a/C4/Context.pm +++ b/C4/Context.pm @@ -1085,7 +1085,7 @@ sub userenv { if (defined $var and defined $context->{"userenv"}->{$var}) { return $context->{"userenv"}->{$var}; } else { - return; + return {}; } } Need to be confirmed.
Is this still valid?
(In reply to Katrin Fischer from comment #3) > Is this still valid? Yes, it could be a code cleaning. So far we have to test if userenv is defined before accessing a key, for instance: C4/Accounts.pm: my $branchcode = C4::Context->userenv ? C4::Context->userenv->{'branch'} : undef; My fix would still be valid, but we still need a test: C4/Accounts.pm: my $branchcode = exist C4::Context->userenv->{branch} ? C4::Context->userenv->{'branch'} : undef; which actually makes less sense. A better approach could be to have a ->logged_in_user method, to retrieve a Koha::Patron object, representing the logged in user. But it is a quite huge work, and nobody will sign it off, and rebases will be tricky ;) Lowering severity for now.