Bug 10513: display a warning/message when returning a chosen item type
[koha.git] / C4 / CourseReserves.pm
index 35fe269..c3e25e6 100644 (file)
@@ -17,8 +17,6 @@ package C4::CourseReserves;
 
 use Modern::Perl;
 
-require Exporter;
-
 use C4::Context;
 use C4::Items qw(GetItem ModItem);
 use C4::Biblio qw(GetBiblioFromItemNumber);
@@ -27,8 +25,9 @@ use C4::Circulation qw(GetOpenIssue);
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG @FIELDS);
 
 BEGIN {
-    @ISA    = qw(Exporter);
-    @EXPORT = qw(
+    require Exporter;
+    @ISA       = qw(Exporter);
+    @EXPORT_OK = qw(
       &GetCourse
       &ModCourse
       &GetCourses
@@ -47,8 +46,9 @@ BEGIN {
 
       &SearchCourses
 
-      &GetItemReservesInfo
+      &GetItemCourseReservesInfo
     );
+    %EXPORT_TAGS = ( 'all' => \@EXPORT_OK );
 
     $DEBUG = 0;
     @FIELDS = ( 'itype', 'ccode', 'holdingbranch', 'location' );
@@ -568,7 +568,7 @@ sub _UpdateCourseItem {
             $mod_params{$_} = $params{$_};
         }
     }
-    ModItem( \%mod_params, undef, $course_item->{'itemnumber'} );
+    ModItem( \%mod_params, undef, $course_item->{'itemnumber'} ) if %mod_params;
 
     ## Update fields that didn't have an original value, but now do
     ## We must save the original value in course_items, and also
@@ -583,7 +583,7 @@ sub _UpdateCourseItem {
         }
     }
     _ModStoredFields( 'ci_id' => $params{'ci_id'}, %mod_params_old );
-    ModItem( \%mod_params_new, undef, $course_item->{'itemnumber'} );
+    ModItem( \%mod_params_new, undef, $course_item->{'itemnumber'} ) if %mod_params_new;
 
 }
 
@@ -648,7 +648,7 @@ sub _RevertFields {
             }
         }
     }
-    ModItem( $mod_item_params, undef, $course_item->{'itemnumber'} );
+    ModItem( $mod_item_params, undef, $course_item->{'itemnumber'} ) if $mod_item_params && %$mod_item_params;
 
     my $query = "UPDATE course_items SET " . join( ',', map { "$_=NULL" } @fields_to_null ) . " WHERE ci_id = ?";
 
@@ -677,7 +677,7 @@ sub _SwapAllFields {
         }
     }
 
-    ModItem( \%course_item_fields, undef, $course_item->{'itemnumber'} );
+    ModItem( \%course_item_fields, undef, $course_item->{'itemnumber'} ) if %course_item_fields;
     _ModStoredFields( %item_fields, ci_id => $ci_id );
 }
 
@@ -934,14 +934,14 @@ sub DelCourseReserve {
 
 =head2 GetReservesInfo
 
-    my $arrayref = GetItemReservesInfo( itemnumber => $itemnumber );
+    my $arrayref = GetItemCourseReservesInfo( itemnumber => $itemnumber );
 
     For a given item, returns an arrayref of reserves hashrefs,
     with a course hashref under the key 'course'
 
 =cut
 
-sub GetItemReservesInfo {
+sub GetItemCourseReservesInfo {
     my (%params) = @_;
     warn identify_myself(%params) if $DEBUG;