From 229ba3a02a92f170c000b40e43a2659b42fe3839 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 24 Sep 2024 15:22:34 +0200 Subject: [PATCH] Bug 40943: Store session_id in userenv --- C4/Auth.pm | 36 ++++++------------------------------ 1 file changed, 6 insertions(+), 30 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index 20242735e1a..8206c9f98c5 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -1351,17 +1351,8 @@ sub checkauth { $session->param( 'register_name', $register_name ); $session->param( 'sco_user', $is_sco_user ); } - $session->param( 'cas_ticket', $cas_ticket ) if $cas_ticket; - C4::Context->set_userenv( - $session->param('number'), $session->param('id'), - $session->param('cardnumber'), $session->param('firstname'), - $session->param('surname'), $session->param('branch'), - $session->param('branchname'), $session->param('flags'), - $session->param('emailaddress'), $session->param('shibboleth'), - $session->param('desk_id'), $session->param('desk_name'), - $session->param('register_id'), $session->param('register_name') - ); - + $session->param('cas_ticket', $cas_ticket) if $cas_ticket; + C4::Context->set_userenv_from_session($session); } # $return: 0 = invalid user @@ -1829,16 +1820,8 @@ sub check_api_auth { $session->param( 'lasttime', time() ); $session->param( 'interface', 'api' ); } - $session->param( 'cas_ticket', $cas_ticket ); - C4::Context->set_userenv( - $session->param('number'), $session->param('id'), - $session->param('cardnumber'), $session->param('firstname'), - $session->param('surname'), $session->param('branch'), - $session->param('branchname'), $session->param('flags'), - $session->param('emailaddress'), $session->param('shibboleth'), - $session->param('desk_id'), $session->param('desk_name'), - $session->param('register_id'), $session->param('register_name') - ); + $session->param( 'cas_ticket', $cas_ticket); + C4::Context->set_userenv_from_session($session); return ( "ok", $cookie, $sessionID ); } else { return ( "failed", undef, undef ); @@ -1958,15 +1941,8 @@ sub check_cookie_auth { # No need to override the interface, most often set by get_template_and_user C4::Context->interface( $session->param('interface') ); } - C4::Context->set_userenv( - $session->param('number'), $session->param('id') // '', - $session->param('cardnumber'), $session->param('firstname'), - $session->param('surname'), $session->param('branch'), - $session->param('branchname'), $session->param('flags'), - $session->param('emailaddress'), $session->param('shibboleth'), - $session->param('desk_id'), $session->param('desk_name'), - $session->param('register_id'), $session->param('register_name') - ); + + C4::Context->set_userenv_from_session($session); if ( C4::Context->preference('TwoFactorAuthentication') ne 'disabled' ) { return ( "additional-auth-needed", $session ) if $session->param('waiting-for-2FA'); -- 2.34.1