Lines 18-23
use C4::Context;
Link Here
|
18 |
use C4::Circulation qw( AddIssue GetIssuingCharges CanBookBeIssued ProcessOfflineIssue ); |
18 |
use C4::Circulation qw( AddIssue GetIssuingCharges CanBookBeIssued ProcessOfflineIssue ); |
19 |
use C4::Members; |
19 |
use C4::Members; |
20 |
use Koha::DateUtils qw( dt_from_string ); |
20 |
use Koha::DateUtils qw( dt_from_string ); |
|
|
21 |
use Koha::Items; |
21 |
|
22 |
|
22 |
use parent qw(C4::SIP::ILS::Transaction); |
23 |
use parent qw(C4::SIP::ILS::Transaction); |
23 |
|
24 |
|
Lines 48-53
sub do_checkout {
Link Here
|
48 |
my $patron = Koha::Patrons->find($self->{patron}->{borrowernumber}); |
49 |
my $patron = Koha::Patrons->find($self->{patron}->{borrowernumber}); |
49 |
my $overridden_duedate; # usually passed as undef to AddIssue |
50 |
my $overridden_duedate; # usually passed as undef to AddIssue |
50 |
my $prevcheckout_block_checkout = $account->{prevcheckout_block_checkout}; |
51 |
my $prevcheckout_block_checkout = $account->{prevcheckout_block_checkout}; |
|
|
52 |
my $allow_additional_materials_checkout = $account->{allow_additional_materials_checkout}; |
51 |
my ($issuingimpossible, $needsconfirmation, $messages) = _can_we_issue($patron, $barcode, 0); |
53 |
my ($issuingimpossible, $needsconfirmation, $messages) = _can_we_issue($patron, $barcode, 0); |
52 |
|
54 |
|
53 |
if ( $no_block_due_date ) { |
55 |
if ( $no_block_due_date ) { |
Lines 105-113
sub do_checkout {
Link Here
|
105 |
$noerror = 0 if ($prevcheckout_block_checkout); |
107 |
$noerror = 0 if ($prevcheckout_block_checkout); |
106 |
last; |
108 |
last; |
107 |
} elsif ( $confirmation eq 'ADDITIONAL_MATERIALS' ) { |
109 |
} elsif ( $confirmation eq 'ADDITIONAL_MATERIALS' ) { |
108 |
$self->screen_msg('Item must be checked out at a circulation desk'); |
110 |
if ( $allow_additional_materials_checkout ) { |
109 |
$noerror = 0; |
111 |
my $item = Koha::Items->find({ barcode => $barcode }); |
110 |
last; |
112 |
$self->screen_msg( 'Item has additional materials: ' . $item->materials ); |
|
|
113 |
} else { |
114 |
$self->screen_msg('Item must be checked out at a circulation desk'); |
115 |
$noerror = 0; |
116 |
last; |
117 |
} |
111 |
} elsif ( $confirmation eq 'RECALLED' ) { |
118 |
} elsif ( $confirmation eq 'RECALLED' ) { |
112 |
$self->screen_msg('Item has been recalled for another patron'); |
119 |
$self->screen_msg('Item has been recalled for another patron'); |
113 |
$noerror = 0; |
120 |
$noerror = 0; |