Bugfix 1978 - if invalid duedate specified, return error, do not issue.
[koha_fer] / circ / branchtransfers.pl
index 37d9e0e..36f4da3 100755 (executable)
@@ -27,15 +27,28 @@ use C4::Circulation;
 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 );
@@ -197,6 +210,12 @@ foreach my $code ( keys %$messages ) {
 
     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 );
 }