View | Details | Raw Unified | Return to bug 10900
Collapse All | Expand All

(-)a/C4/Auth.pm (-12 / +12 lines)
Lines 665-671 sub checkauth { Link Here
665
        C4::Context->_new_userenv($sessionID);
665
        C4::Context->_new_userenv($sessionID);
666
        my ($ip, $lasttime, $sessiontype);
666
        my ($ip, $lasttime, $sessiontype);
667
        if ($session){
667
        if ($session){
668
            C4::Context::set_userenv(
668
            C4::Context->set_userenv(
669
                $session->param('number'),       $session->param('id'),
669
                $session->param('number'),       $session->param('id'),
670
                $session->param('cardnumber'),   $session->param('firstname'),
670
                $session->param('cardnumber'),   $session->param('firstname'),
671
                $session->param('surname'),      $session->param('branch'),
671
                $session->param('surname'),      $session->param('branch'),
Lines 938-944 sub checkauth { Link Here
938
                if ($persona){
938
                if ($persona){
939
                    $session->param('persona',1);
939
                    $session->param('persona',1);
940
                }
940
                }
941
                C4::Context::set_userenv(
941
                C4::Context->set_userenv(
942
                    $session->param('number'),       $session->param('id'),
942
                    $session->param('number'),       $session->param('id'),
943
                    $session->param('cardnumber'),   $session->param('firstname'),
943
                    $session->param('cardnumber'),   $session->param('firstname'),
944
                    $session->param('surname'),      $session->param('branch'),
944
                    $session->param('surname'),      $session->param('branch'),
Lines 1169-1175 sub check_api_auth { Link Here
1169
        my $session = get_session($sessionID);
1169
        my $session = get_session($sessionID);
1170
        C4::Context->_new_userenv($sessionID);
1170
        C4::Context->_new_userenv($sessionID);
1171
        if ($session) {
1171
        if ($session) {
1172
            C4::Context::set_userenv(
1172
            C4::Context->set_userenv(
1173
                $session->param('number'),       $session->param('id'),
1173
                $session->param('number'),       $session->param('id'),
1174
                $session->param('cardnumber'),   $session->param('firstname'),
1174
                $session->param('cardnumber'),   $session->param('firstname'),
1175
                $session->param('surname'),      $session->param('branch'),
1175
                $session->param('surname'),      $session->param('branch'),
Lines 1329-1335 sub check_api_auth { Link Here
1329
                $session->param('ip',$session->remote_addr());
1329
                $session->param('ip',$session->remote_addr());
1330
                $session->param('lasttime',time());
1330
                $session->param('lasttime',time());
1331
            }
1331
            }
1332
            C4::Context::set_userenv(
1332
            C4::Context->set_userenv(
1333
                $session->param('number'),       $session->param('id'),
1333
                $session->param('number'),       $session->param('id'),
1334
                $session->param('cardnumber'),   $session->param('firstname'),
1334
                $session->param('cardnumber'),   $session->param('firstname'),
1335
                $session->param('surname'),      $session->param('branch'),
1335
                $session->param('surname'),      $session->param('branch'),
Lines 1408-1414 sub check_cookie_auth { Link Here
1408
    my $session = get_session($sessionID);
1408
    my $session = get_session($sessionID);
1409
    C4::Context->_new_userenv($sessionID);
1409
    C4::Context->_new_userenv($sessionID);
1410
    if ($session) {
1410
    if ($session) {
1411
        C4::Context::set_userenv(
1411
        C4::Context->set_userenv(
1412
            $session->param('number'),       $session->param('id'),
1412
            $session->param('number'),       $session->param('id'),
1413
            $session->param('cardnumber'),   $session->param('firstname'),
1413
            $session->param('cardnumber'),   $session->param('firstname'),
1414
            $session->param('surname'),      $session->param('branch'),
1414
            $session->param('surname'),      $session->param('branch'),
Lines 1513-1547 sub checkpw_internal { Link Here
1513
1513
1514
    my $sth =
1514
    my $sth =
1515
      $dbh->prepare(
1515
      $dbh->prepare(
1516
"select password,cardnumber,borrowernumber,userid,firstname,surname,branchcode,flags from borrowers where userid=?"
1516
"select password,cardnumber,borrowernumber,userid,firstname,surname,borrowers.branchcode,branches.branchname,flags from borrowers join branches on borrowers.branchcode=branches.branchcode where userid=?"
1517
      );
1517
      );
1518
    $sth->execute($userid);
1518
    $sth->execute($userid);
1519
    if ( $sth->rows ) {
1519
    if ( $sth->rows ) {
1520
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1520
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1521
            $surname, $branchcode, $flags )
1521
            $surname, $branchcode, $branchname, $flags )
1522
          = $sth->fetchrow;
1522
          = $sth->fetchrow;
1523
1523
1524
        if ( checkpw_hash($password, $stored_hash) ) {
1524
        if ( checkpw_hash($password, $stored_hash) ) {
1525
1525
1526
            C4::Context->set_userenv( "$borrowernumber", $userid, $cardnumber,
1526
            C4::Context->set_userenv( "$borrowernumber", $userid, $cardnumber,
1527
                $firstname, $surname, $branchcode, $flags );
1527
                $firstname, $surname, $branchcode, $branchname, $flags );
1528
            return 1, $cardnumber, $userid;
1528
            return 1, $cardnumber, $userid;
1529
        }
1529
        }
1530
    }
1530
    }
1531
    $sth =
1531
    $sth =
1532
      $dbh->prepare(
1532
      $dbh->prepare(
1533
"select password,cardnumber,borrowernumber,userid, firstname,surname,branchcode,flags from borrowers where cardnumber=?"
1533
"select password,cardnumber,borrowernumber,userid,firstname,surname,borrowers.branchcode,branches.branchname,flags from borrowers join branches on borrowers.branchcode=branches.branchcode where cardnumber=?"
1534
      );
1534
      );
1535
    $sth->execute($userid);
1535
    $sth->execute($userid);
1536
    if ( $sth->rows ) {
1536
    if ( $sth->rows ) {
1537
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1537
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1538
            $surname, $branchcode, $flags )
1538
            $surname, $branchcode, $branchname, $flags )
1539
          = $sth->fetchrow;
1539
          = $sth->fetchrow;
1540
1540
1541
        if ( checkpw_hash($password, $stored_hash) ) {
1541
        if ( checkpw_hash($password, $stored_hash) ) {
1542
1542
1543
            C4::Context->set_userenv( $borrowernumber, $userid, $cardnumber,
1543
            C4::Context->set_userenv( $borrowernumber, $userid, $cardnumber,
1544
                $firstname, $surname, $branchcode, $flags );
1544
                $firstname, $surname, $branchcode, $branchname, $flags );
1545
            return 1, $cardnumber, $userid;
1545
            return 1, $cardnumber, $userid;
1546
        }
1546
        }
1547
    }
1547
    }
Lines 1550-1556 sub checkpw_internal { Link Here
1550
    {
1550
    {
1551
1551
1552
# Koha superuser account
1552
# Koha superuser account
1553
#     C4::Context->set_userenv(0,0,C4::Context->config('user'),C4::Context->config('user'),C4::Context->config('user'),"",1);
1553
#     C4::Context->set_userenv(0,0,C4::Context->config('user'),C4::Context->config('user'),C4::Context->config('user'),"","",1);
1554
        return 2;
1554
        return 2;
1555
    }
1555
    }
1556
    if (   $userid && $userid eq 'demo'
1556
    if (   $userid && $userid eq 'demo'
(-)a/C4/Context.pm (-3 / +5 lines)
Lines 1098-1106 sub userenv { Link Here
1098
1098
1099
=head2 set_userenv
1099
=head2 set_userenv
1100
1100
1101
  C4::Context->set_userenv($usernum, $userid, $usercnum, $userfirstname, 
1101
  C4::Context->set_userenv($usernum, $userid, $usercnum,
1102
                  $usersurname, $userbranch, $userflags, $emailaddress, $branchprinter,
1102
                           $userfirstname, $usersurname,
1103
                  $persona);
1103
                           $userbranch, $branchname, $userflags,
1104
                           $emailaddress, $branchprinter, $persona);
1104
1105
1105
Establish a hash of user environment variables.
1106
Establish a hash of user environment variables.
1106
1107
Lines 1110-1115 set_userenv is called in Auth.pm Link Here
1110
1111
1111
#'
1112
#'
1112
sub set_userenv {
1113
sub set_userenv {
1114
    shift @_;
1113
    my ($usernum, $userid, $usercnum, $userfirstname, $usersurname, $userbranch, $branchname, $userflags, $emailaddress, $branchprinter, $persona)= @_;
1115
    my ($usernum, $userid, $usercnum, $userfirstname, $usersurname, $userbranch, $branchname, $userflags, $emailaddress, $branchprinter, $persona)= @_;
1114
    my $var=$context->{"activeuser"} || '';
1116
    my $var=$context->{"activeuser"} || '';
1115
    my $cell = {
1117
    my $cell = {
(-)a/installer/InstallAuth.pm (-3 / +3 lines)
Lines 250-256 sub checkauth { Link Here
250
          new CGI::Session( "driver:File;serializer:yaml", $sessionID,
250
          new CGI::Session( "driver:File;serializer:yaml", $sessionID,
251
            { Directory => '/tmp' } );
251
            { Directory => '/tmp' } );
252
        if ( $session->param('cardnumber') ) {
252
        if ( $session->param('cardnumber') ) {
253
            C4::Context::set_userenv(
253
            C4::Context->set_userenv(
254
                $session->param('number'),
254
                $session->param('number'),
255
                $session->param('id'),
255
                $session->param('id'),
256
                $session->param('cardnumber'),
256
                $session->param('cardnumber'),
Lines 312-318 sub checkauth { Link Here
312
           #Only superlibrarian should have access to this page.
312
           #Only superlibrarian should have access to this page.
313
           #Since if it is a user, it is supposed that there is a borrower table
313
           #Since if it is a user, it is supposed that there is a borrower table
314
           #And thus that data structure is loaded.
314
           #And thus that data structure is loaded.
315
                my $hash = C4::Context::set_userenv(
315
                my $hash = C4::Context->set_userenv(
316
                    0,                           0,
316
                    0,                           0,
317
                    C4::Context->config('user'), C4::Context->config('user'),
317
                    C4::Context->config('user'), C4::Context->config('user'),
318
                    C4::Context->config('user'), "",
318
                    C4::Context->config('user'), "",
Lines 417-423 sub checkpw { Link Here
417
            C4::Context->config('user'),
417
            C4::Context->config('user'),
418
            C4::Context->config('user'),
418
            C4::Context->config('user'),
419
            C4::Context->config('user'),
419
            C4::Context->config('user'),
420
            "", 1
420
            "", "NO_LIBRARY_SET", 1
421
        );
421
        );
422
        return 2;
422
        return 2;
423
    }
423
    }
(-)a/t/Circulation_barcodedecode.t (-1 / +1 lines)
Lines 6-12 use warnings; Link Here
6
6
7
use Test::More tests => 26;
7
use Test::More tests => 26;
8
C4::Context->_new_userenv(123456);
8
C4::Context->_new_userenv(123456);
9
C4::Context->set_userenv(1,'kmkale' , 1, 'kk1' , 'IMS', 0, 'kmkale@anantcorp.com');
9
C4::Context->set_userenv(1,'kmkale' , 1, 'km', 'kale' , 'IMS', 'IMS Branch DEscription', 0, 'kmkale@anantcorp.com');
10
10
11
BEGIN {
11
BEGIN {
12
    use_ok('C4::Circulation');
12
    use_ok('C4::Circulation');
(-)a/t/db_dependent/Circulation.t (-2 / +1 lines)
Lines 77-83 is( Link Here
77
77
78
diag('Now, set a userenv');
78
diag('Now, set a userenv');
79
C4::Context->_new_userenv('xxx');
79
C4::Context->_new_userenv('xxx');
80
C4::Context::set_userenv(0,0,0,'firstname','surname', 'MPL', 'Midway Public Library', '', '', '');
80
C4::Context->set_userenv(0,0,0,'firstname','surname', 'MPL', 'Midway Public Library', '', '', '');
81
is(C4::Context->userenv->{branch}, 'MPL', 'userenv set');
81
is(C4::Context->userenv->{branch}, 'MPL', 'userenv set');
82
82
83
# Userenv set, PickupLibrary
83
# Userenv set, PickupLibrary
84
- 

Return to bug 10900