Test plan:
0: Do not apply the patches
1: Create an item with itype, ccode, location, and holding branch set
2: Create a course
3: Add item to course, changing the values for itype, ccode, and location
4: Click Edit for that item on course-details.pl
5: Assign new values for itype, ccode, and location but leave the holding library dropdown set to LEAVE UNCHANGED
6: Hit Save
7: Back on course-details.pl, observe that the item is still showing the values set in step 3
8: Apply this patch
9: Repeat 4 to 6
10: Back on course-details.pl, observe that the item is now showing the correct values
11: Edit the course reserve again, setting new values for itype, ccode, and location and setting the holding library dropdown to whatever the holding library for the item is currently
12: hit save
13: On course-details.pl, see that the change actually happened, the item is now showing the values set in step 9
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
unless ($course_item);
$ci_id = $course_item->{'ci_id'} unless ($ci_id);
-
- my %mod_params;
- foreach (@FIELDS) {
- $mod_params{$_} = $params{$_};
- }
+ my %mod_params =
+ map {
+ defined $params{$_} && $params{$_} ne ''
+ ? ( $_ => $params{$_} )
+ : ()
+ } @FIELDS;
ModItem( \%mod_params, undef, $course_item->{'itemnumber'} );
}