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

(-)a/C4/Auth.pm (-12 / +12 lines)
Lines 670-676 sub checkauth { Link Here
670
        my $s_userid = '';
670
        my $s_userid = '';
671
        if ($session){
671
        if ($session){
672
            $s_userid = $session->param('id') // '';
672
            $s_userid = $session->param('id') // '';
673
            C4::Context::set_userenv(
673
            C4::Context->set_userenv(
674
                $session->param('number'),       $s_userid,
674
                $session->param('number'),       $s_userid,
675
                $session->param('cardnumber'),   $session->param('firstname'),
675
                $session->param('cardnumber'),   $session->param('firstname'),
676
                $session->param('surname'),      $session->param('branch'),
676
                $session->param('surname'),      $session->param('branch'),
Lines 961-967 sub checkauth { Link Here
961
                if ($persona){
961
                if ($persona){
962
                    $session->param('persona',1);
962
                    $session->param('persona',1);
963
                }
963
                }
964
                C4::Context::set_userenv(
964
                C4::Context->set_userenv(
965
                    $session->param('number'),       $session->param('id'),
965
                    $session->param('number'),       $session->param('id'),
966
                    $session->param('cardnumber'),   $session->param('firstname'),
966
                    $session->param('cardnumber'),   $session->param('firstname'),
967
                    $session->param('surname'),      $session->param('branch'),
967
                    $session->param('surname'),      $session->param('branch'),
Lines 1194-1200 sub check_api_auth { Link Here
1194
        my $session = get_session($sessionID);
1194
        my $session = get_session($sessionID);
1195
        C4::Context->_new_userenv($sessionID);
1195
        C4::Context->_new_userenv($sessionID);
1196
        if ($session) {
1196
        if ($session) {
1197
            C4::Context::set_userenv(
1197
            C4::Context->set_userenv(
1198
                $session->param('number'),       $session->param('id'),
1198
                $session->param('number'),       $session->param('id'),
1199
                $session->param('cardnumber'),   $session->param('firstname'),
1199
                $session->param('cardnumber'),   $session->param('firstname'),
1200
                $session->param('surname'),      $session->param('branch'),
1200
                $session->param('surname'),      $session->param('branch'),
Lines 1357-1363 sub check_api_auth { Link Here
1357
                $session->param('ip',$session->remote_addr());
1357
                $session->param('ip',$session->remote_addr());
1358
                $session->param('lasttime',time());
1358
                $session->param('lasttime',time());
1359
            }
1359
            }
1360
            C4::Context::set_userenv(
1360
            C4::Context->set_userenv(
1361
                $session->param('number'),       $session->param('id'),
1361
                $session->param('number'),       $session->param('id'),
1362
                $session->param('cardnumber'),   $session->param('firstname'),
1362
                $session->param('cardnumber'),   $session->param('firstname'),
1363
                $session->param('surname'),      $session->param('branch'),
1363
                $session->param('surname'),      $session->param('branch'),
Lines 1436-1442 sub check_cookie_auth { Link Here
1436
    my $session = get_session($sessionID);
1436
    my $session = get_session($sessionID);
1437
    C4::Context->_new_userenv($sessionID);
1437
    C4::Context->_new_userenv($sessionID);
1438
    if ($session) {
1438
    if ($session) {
1439
        C4::Context::set_userenv(
1439
        C4::Context->set_userenv(
1440
            $session->param('number'),       $session->param('id'),
1440
            $session->param('number'),       $session->param('id'),
1441
            $session->param('cardnumber'),   $session->param('firstname'),
1441
            $session->param('cardnumber'),   $session->param('firstname'),
1442
            $session->param('surname'),      $session->param('branch'),
1442
            $session->param('surname'),      $session->param('branch'),
Lines 1544-1578 sub checkpw_internal { Link Here
1544
1544
1545
    my $sth =
1545
    my $sth =
1546
      $dbh->prepare(
1546
      $dbh->prepare(
1547
"select password,cardnumber,borrowernumber,userid,firstname,surname,branchcode,flags from borrowers where userid=?"
1547
"select password,cardnumber,borrowernumber,userid,firstname,surname,borrowers.branchcode,branches.branchname,flags from borrowers join branches on borrowers.branchcode=branches.branchcode where userid=?"
1548
      );
1548
      );
1549
    $sth->execute($userid);
1549
    $sth->execute($userid);
1550
    if ( $sth->rows ) {
1550
    if ( $sth->rows ) {
1551
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1551
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1552
            $surname, $branchcode, $flags )
1552
            $surname, $branchcode, $branchname, $flags )
1553
          = $sth->fetchrow;
1553
          = $sth->fetchrow;
1554
1554
1555
        if ( checkpw_hash($password, $stored_hash) ) {
1555
        if ( checkpw_hash($password, $stored_hash) ) {
1556
1556
1557
            C4::Context->set_userenv( "$borrowernumber", $userid, $cardnumber,
1557
            C4::Context->set_userenv( "$borrowernumber", $userid, $cardnumber,
1558
                $firstname, $surname, $branchcode, $flags );
1558
                $firstname, $surname, $branchcode, $branchname, $flags );
1559
            return 1, $cardnumber, $userid;
1559
            return 1, $cardnumber, $userid;
1560
        }
1560
        }
1561
    }
1561
    }
1562
    $sth =
1562
    $sth =
1563
      $dbh->prepare(
1563
      $dbh->prepare(
1564
"select password,cardnumber,borrowernumber,userid, firstname,surname,branchcode,flags from borrowers where cardnumber=?"
1564
"select password,cardnumber,borrowernumber,userid,firstname,surname,borrowers.branchcode,branches.branchname,flags from borrowers join branches on borrowers.branchcode=branches.branchcode where cardnumber=?"
1565
      );
1565
      );
1566
    $sth->execute($userid);
1566
    $sth->execute($userid);
1567
    if ( $sth->rows ) {
1567
    if ( $sth->rows ) {
1568
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1568
        my ( $stored_hash, $cardnumber, $borrowernumber, $userid, $firstname,
1569
            $surname, $branchcode, $flags )
1569
            $surname, $branchcode, $branchname, $flags )
1570
          = $sth->fetchrow;
1570
          = $sth->fetchrow;
1571
1571
1572
        if ( checkpw_hash($password, $stored_hash) ) {
1572
        if ( checkpw_hash($password, $stored_hash) ) {
1573
1573
1574
            C4::Context->set_userenv( $borrowernumber, $userid, $cardnumber,
1574
            C4::Context->set_userenv( $borrowernumber, $userid, $cardnumber,
1575
                $firstname, $surname, $branchcode, $flags );
1575
                $firstname, $surname, $branchcode, $branchname, $flags );
1576
            return 1, $cardnumber, $userid;
1576
            return 1, $cardnumber, $userid;
1577
        }
1577
        }
1578
    }
1578
    }
Lines 1581-1587 sub checkpw_internal { Link Here
1581
    {
1581
    {
1582
1582
1583
# Koha superuser account
1583
# Koha superuser account
1584
#     C4::Context->set_userenv(0,0,C4::Context->config('user'),C4::Context->config('user'),C4::Context->config('user'),"",1);
1584
#     C4::Context->set_userenv(0,0,C4::Context->config('user'),C4::Context->config('user'),C4::Context->config('user'),"","",1);
1585
        return 2;
1585
        return 2;
1586
    }
1586
    }
1587
    if (   $userid && $userid eq 'demo'
1587
    if (   $userid && $userid eq 'demo'
(-)a/C4/Context.pm (-3 / +5 lines)
Lines 1105-1113 sub userenv { Link Here
1105
1105
1106
=head2 set_userenv
1106
=head2 set_userenv
1107
1107
1108
  C4::Context->set_userenv($usernum, $userid, $usercnum, $userfirstname, 
1108
  C4::Context->set_userenv($usernum, $userid, $usercnum,
1109
                  $usersurname, $userbranch, $userflags, $emailaddress, $branchprinter,
1109
                           $userfirstname, $usersurname,
1110
                  $persona);
1110
                           $userbranch, $branchname, $userflags,
1111
                           $emailaddress, $branchprinter, $persona);
1111
1112
1112
Establish a hash of user environment variables.
1113
Establish a hash of user environment variables.
1113
1114
Lines 1117-1122 set_userenv is called in Auth.pm Link Here
1117
1118
1118
#'
1119
#'
1119
sub set_userenv {
1120
sub set_userenv {
1121
    shift @_;
1120
    my ($usernum, $userid, $usercnum, $userfirstname, $usersurname, $userbranch, $branchname, $userflags, $emailaddress, $branchprinter, $persona)= @_;
1122
    my ($usernum, $userid, $usercnum, $userfirstname, $usersurname, $userbranch, $branchname, $userflags, $emailaddress, $branchprinter, $persona)= @_;
1121
    my $var=$context->{"activeuser"} || '';
1123
    my $var=$context->{"activeuser"} || '';
1122
    my $cell = {
1124
    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