use C4::Output;
use C4::Reserves;
use C4::Biblio;
-use C4::Auth;
+use C4::Items;
+use C4::Auth qw/:DEFAULT get_session/;
use C4::Branch; # GetBranches
use C4::Koha;
+use C4::Members;
###############################################
# Getting state
my $query = new CGI;
+if (!C4::Context->userenv){
+ my $sessionID = $query->cookie("CGISESSID");
+ my $session = get_session($sessionID);
+ if ($session->param('branch') eq 'NO_LIBRARY_SET'){
+ # no branch set we can't transfer
+ print $query->redirect("/cgi-bin/koha/circ/selectbranchprinter.pl");
+ exit;
+ }
+}
+
+
#######################################################################################
# Make the page .....
my ( $template, $cookie );
query => $query,
type => "intranet",
authnotrequired => 0,
- flagsrequired => { circulate => 1 },
+ flagsrequired => { circulate => "circulate_remaining_permissions" },
}
);
my $ignoreRs = 0;
if ( $request eq "SetWaiting" ) {
my $item = $query->param('itemnumber');
- $tobranchcd = ReserveWaiting( $item, $borrowernumber );
+ ModReserveAffect( $item, $borrowernumber );
$ignoreRs = 1;
$setwaiting = 1;
$reqmessage = 1;
my %transfereditems;
my $transfered;
my $barcode = $query->param('barcode');
+# strip whitespace
+$barcode =~ s/\s*//g;
# warn "barcode : $barcode";
if ($barcode) {
#####################
+# Used for branch transfer limits error messages.
+my $codeTypeDescription = 'Collection Code';
+my $codeType = C4::Context->preference("BranchTransferLimitsType");
+if ( $codeType eq 'itemtype' ) {
+ $codeTypeDescription = 'Item Type';
+}
+
+
my @errmsgloop;
foreach my $code ( keys %$messages ) {
my %err;
$err{errbadcode} = 1;
}
+ if ( $code eq "NotAllowed" ) {
+ warn $messages->{'NotAllowed'};
+ warn $branches->{ $messages->{'NotAllowed'} }->{'branchname'};
+ $err{errnotallowed} = 1;
+ my ( $tbr, $typecode ) = split( /::/, $messages->{'NotAllowed'} );
+ $err{tbr} = $branches->{ $tbr }->{'branchname'};
+ $err{code} = $typecode;
+ $err{codeType} = $codeTypeDescription;
+ }
+
if ( $code eq 'IsPermanent' ) {
$err{errispermanent} = 1;
$err{msg} = $branches->{ $messages->{'IsPermanent'} }->{'branchname'};
if ( $code eq 'WasReturned' ) {
$err{errwasreturned} = 1;
+ $err{borrowernumber}=$messages->{'WasReturned'};
+ my $borrower = GetMember($messages->{'WasReturned'},'borrowernumber');
+ $err{title}=$borrower->{'title'};
+ $err{firstname}=$borrower->{'firstname'};
+ $err{surname}=$borrower->{'surname'};
+ $err{cardnumber} =$borrower->{'cardnumber'};
}
push( @errmsgloop, \%err );
}
trsfitemloop => \@trsfitemloop,
branchoptionloop => \@branchoptionloop,
errmsgloop => \@errmsgloop,
+ CircAutocompl => C4::Context->preference("CircAutocompl")
);
output_html_with_http_headers $query, $cookie, $template->output;