From 1e19eaf32f1826777c089b468cf51e6fa4534e66 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Tue, 19 Jul 2016 16:57:25 +0000 Subject: [PATCH] Bug 16942 - Confirm hold results in ugly error Confirming a hold to set it to waiting will result in an DBIC error in master. Test Plan: 1) Attempt to check in an item on hold and confirm the hold 2) Note the error 3) Apply this patch 4) Repeat step 1 5) Note there is no error! Signed-off-by: Mirko Tietgen https://bugs.koha-community.org/show_bug.cgi?id=14942 Signed-off-by: Katrin Fischer Signed-off-by: Jesse Maseto --- C4/Letters.pm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/C4/Letters.pm b/C4/Letters.pm index 737c8cd..cdf0860 100644 --- a/C4/Letters.pm +++ b/C4/Letters.pm @@ -1485,7 +1485,15 @@ sub _get_tt_params { my $id = ref $ref eq 'HASH' ? $tables->{$table}->{$pk} : $tables->{$table}; my $object; if ( $fk ) { # Using a foreign key for lookup - $object = $module->search( { $fk => $id } )->next(); + if ( ref( $fk ) eq 'ARRAY' ) { # Foreign key is multi-column + my $search; + foreach my $key ( @$fk ) { + $search->{$key} = $id->{$key}; + } + $object = $module->search( $search )->next(); + } else { # Foreign key is single column + $object = $module->search( { $fk => $id } )->next(); + } } else { # using the table's primary key for lookup $object = $module->find($id); } -- 2.1.4