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

(-)a/C4/SIP/ILS/Transaction/Checkout.pm (-18 / +8 lines)
Lines 71-84 sub do_checkout { Link Here
71
        foreach my $confirmation (keys %{$needsconfirmation}) {
71
        foreach my $confirmation (keys %{$needsconfirmation}) {
72
            if ($confirmation eq 'RENEW_ISSUE'){
72
            if ($confirmation eq 'RENEW_ISSUE'){
73
                $self->screen_msg("Item already checked out to you: renewing item.");
73
                $self->screen_msg("Item already checked out to you: renewing item.");
74
            } elsif ($confirmation eq 'RESERVED' or $confirmation eq 'RESERVE_WAITING') {
74
            } elsif ($confirmation eq 'RESERVED') {
75
                my $x = $self->{item}->available($patron_barcode);
75
                $self->screen_msg("Item is reserved for another patron upon return.");
76
                if ($x) {
76
                $noerror = 0;
77
                    $self->screen_msg("Item was reserved for you.");
77
                last;
78
                } else {
78
            } elsif ($confirmation eq 'RESERVE_WAITING') {
79
                    $self->screen_msg("Item is reserved for another patron upon return.");
79
                $self->screen_msg("Item is on hold shelf for another patron.");
80
                    $noerror = 0;
80
                $noerror = 0;
81
                }
81
                last;
82
            } elsif ($confirmation eq 'ISSUED_TO_ANOTHER') {
82
            } elsif ($confirmation eq 'ISSUED_TO_ANOTHER') {
83
                $self->screen_msg("Item already checked out to another patron.  Please return item for check-in.");
83
                $self->screen_msg("Item already checked out to another patron.  Please return item for check-in.");
84
                $noerror = 0;
84
                $noerror = 0;
Lines 105-119 sub do_checkout { Link Here
105
        }
105
        }
106
    }
106
    }
107
    my $itemnumber = $self->{item}->{itemnumber};
107
    my $itemnumber = $self->{item}->{itemnumber};
108
    foreach (@$shelf) {
109
        $debug and warn "shelf has ($_->{itemnumber} for $_->{borrowernumber}). this is ($itemnumber, $self->{patron}->{borrowernumber})";
110
        ($_->{itemnumber} eq $itemnumber) or next;    # skip it if not this item
111
        ($_->{borrowernumber} == $self->{patron}->{borrowernumber}) and last;
112
            # if item was waiting for this patron, we're done.  AddIssue takes care of the "W" hold.
113
        $debug and warn "Item is on hold shelf for another patron.";
114
        $self->screen_msg("Item is on hold shelf for another patron.");
115
        $noerror = 0;
116
    }
117
    my ($fee, undef) = GetIssuingCharges($itemnumber, $self->{patron}->{borrowernumber});
108
    my ($fee, undef) = GetIssuingCharges($itemnumber, $self->{patron}->{borrowernumber});
118
    if ( $fee > 0 ) {
109
    if ( $fee > 0 ) {
119
        $self->{sip_fee_type} = '06';
110
        $self->{sip_fee_type} = '06';
120
- 

Return to bug 21572