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

(-)a/C4/Members.pm (+5 lines)
Lines 381-386 sub GetMemberDetails { Link Here
381
        $borrower->{'showname'} = $borrower->{'firstname'};
381
        $borrower->{'showname'} = $borrower->{'firstname'};
382
    }
382
    }
383
383
384
    # Handle setting the true behavior for BlockExpiredPatronOpacActions
385
    $borrower->{'BlockExpiredPatronOpacActions'} =
386
      C4::Context->preference('BlockExpiredPatronOpacActions')
387
      if ( $borrower->{'BlockExpiredPatronOpacActions'} == -1 );
388
384
    return ($borrower);    #, $flags, $accessflagshash);
389
    return ($borrower);    #, $flags, $accessflagshash);
385
}
390
}
386
391
(-)a/opac/opac-renew.pl (-16 / +21 lines)
Lines 27-32 use warnings; Link Here
27
use CGI;
27
use CGI;
28
use C4::Circulation;
28
use C4::Circulation;
29
use C4::Auth;
29
use C4::Auth;
30
use C4::Context;
30
use C4::Items;
31
use C4::Items;
31
use C4::Members;
32
use C4::Members;
32
use Date::Calc qw( Today Date_to_Days );
33
use Date::Calc qw( Today Date_to_Days );
Lines 48-85 my $opacrenew = C4::Context->preference("OpacRenewalAllowed"); Link Here
48
49
49
my $errorstring='';
50
my $errorstring='';
50
my $member_details = GetMemberDetails($borrowernumber);
51
my $member_details = GetMemberDetails($borrowernumber);
51
# BlockExpiredPatronOpacActions syspref 0 is false, 1 is true. BlockExpiredPatronOpacActions for categories (from GetMemberDetails) -1 means use syspref, 0 is false, 1 is true (where false means dont block, true means block)
52
52
if( ($member_details->{'BlockExpiredPatronOpacActions'} == -1 ? C4::Conext->preference('BlockExpiredPatronOpacActions') : $member_details->{'BlockExpiredPatronOpacActions'})
53
if ( $member_details->{'BlockExpiredPatronOpacActions'} 
53
    && Date_to_Days( Today() ) > Date_to_Days( split /-/, $member_details->{'dateexpiry'} ) ){
54
    && Date_to_Days( Today() ) >
54
   $errorstring = 'card_expired';
55
    Date_to_Days( split( /-/, $member_details->{'dateexpiry'} ) ) )
55
} else {
56
{
56
    for my $itemnumber ( @items ) {
57
    $errorstring = 'card_expired';
57
        my ($status,$error) = CanBookBeRenewed( $borrowernumber, $itemnumber );
58
}
59
else {
60
    for my $itemnumber (@items) {
61
        my ( $status, $error ) =
62
          CanBookBeRenewed( $borrowernumber, $itemnumber );
58
        if ( $status == 1 && $opacrenew == 1 ) {
63
        if ( $status == 1 && $opacrenew == 1 ) {
59
            my $renewalbranch = C4::Context->preference('OpacRenewalBranch');
64
            my $renewalbranch = C4::Context->preference('OpacRenewalBranch');
60
            my $branchcode;
65
            my $branchcode;
61
            if ($renewalbranch eq 'itemhomebranch'){
66
            if ( $renewalbranch eq 'itemhomebranch' ) {
62
                my $item = GetItem($itemnumber);
67
                my $item = GetItem($itemnumber);
63
                $branchcode=$item->{'homebranch'};
68
                $branchcode = $item->{'homebranch'};
64
            }
69
            }
65
            elsif ($renewalbranch eq 'patronhomebranch'){
70
            elsif ( $renewalbranch eq 'patronhomebranch' ) {
66
                my $borrower = GetMemberDetails($borrowernumber);
71
                my $borrower = GetMemberDetails($borrowernumber);
67
                $branchcode = $borrower->{'branchcode'};
72
                $branchcode = $borrower->{'branchcode'};
68
            }
73
            }
69
            elsif ($renewalbranch eq 'checkoutbranch'){
74
            elsif ( $renewalbranch eq 'checkoutbranch' ) {
70
                my $issue = GetOpenIssue($itemnumber);
75
                my $issue = GetOpenIssue($itemnumber);
71
                $branchcode = $issue->{'branchcode'};
76
                $branchcode = $issue->{'branchcode'};
72
            }
77
            }
73
            elsif ($renewalbranch eq 'NULL'){
78
            elsif ( $renewalbranch eq 'NULL' ) {
74
                $branchcode='';
79
                $branchcode = '';
75
            }
80
            }
76
            else {
81
            else {
77
                $branchcode='OPACRenew'
82
                $branchcode = 'OPACRenew';
78
            }
83
            }
79
            AddRenewal( $borrowernumber, $itemnumber, $branchcode);
84
            AddRenewal( $borrowernumber, $itemnumber, $branchcode );
80
        }
85
        }
81
        else {
86
        else {
82
            $errorstring .= $error ."|";
87
            $errorstring .= $error . "|";
83
        }
88
        }
84
    }
89
    }
85
}
90
}
(-)a/opac/opac-reserve.pl (-2 / +1 lines)
Lines 67-73 sub get_out { Link Here
67
my ( $borr ) = GetMemberDetails( $borrowernumber );
67
my ( $borr ) = GetMemberDetails( $borrowernumber );
68
68
69
# check if this user can place a reserve, -1 means use sys pref, 0 means dont block, 1 means block
69
# check if this user can place a reserve, -1 means use sys pref, 0 means dont block, 1 means block
70
if( $borr->{'BlockExpiredPatronOpacActions'} == -1 ? C4::Context->preference("BlockExpiredPatronOpacActions") : $borr->{'BlockExpiredPatronOpacActions'} ) {
70
if( $borr->{'BlockExpiredPatronOpacActions'} ) {
71
71
72
    if( Date_to_Days( Today() ) > Date_to_Days( split /-/, $borr->{'dateexpiry'} ) ){
72
    if( Date_to_Days( Today() ) > Date_to_Days( split /-/, $borr->{'dateexpiry'} ) ){
73
        # cannot reserve, their card has expired and the rules set mean this is not allowed
73
        # cannot reserve, their card has expired and the rules set mean this is not allowed
74
- 

Return to bug 6739