Bug 18264 - Course reserves - use itemnumber for editing existing reserve items
[koha.git] / course_reserves / add_items.pl
index bcfadc7..ef8605f 100755 (executable)
@@ -31,12 +31,13 @@ use C4::CourseReserves qw(GetCourse GetCourseItem GetCourseReserve ModCourseItem
 
 my $cgi = new CGI;
 
-my $action    = $cgi->param('action')    || '';
-my $course_id = $cgi->param('course_id') || '';
-my $barcode   = $cgi->param('barcode')   || '';
-my $return    = $cgi->param('return')    || '';
+my $action       = $cgi->param('action')       || '';
+my $course_id    = $cgi->param('course_id')    || '';
+my $barcode      = $cgi->param('barcode')      || '';
+my $return       = $cgi->param('return')       || '';
+my $itemnumber   = ($cgi->param('itemnumber') && $action eq 'lookup') ? $cgi->param('itemnumber') : '';
 
-my $item = GetBiblioFromItemNumber( undef, $barcode );
+my $item = GetBiblioFromItemNumber( $itemnumber, $barcode );
 
 my $step = ( $action eq 'lookup' && $item ) ? '2' : '1';
 
@@ -49,8 +50,9 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
         flagsrequired   => { coursereserves => 'add_reserves' },
     }
 );
-$template->param( ERROR_BARCODE_NOT_FOUND => $barcode )
-  unless ( $barcode && $item && $action eq 'lookup' );
+my $inumber = $itemnumber ? "<blank> (itemnumber:$itemnumber)" : "";
+$template->param( ERROR_BARCODE_NOT_FOUND => $barcode . $inumber )
+  unless ( $barcode && !$itemnumber && $item && $action eq 'lookup' );
 
 $template->param( course => GetCourse($course_id) );