X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=acqui%2Fhistsearch.pl;h=1f097d828faeaeb29a74a79273be636977a948e1;hb=7531f66a921089b8b4bae60cf607820b4c483af0;hp=a1c7fe670817934da8c9e6ef3a828d90059533fb;hpb=84f83012295c90995db48775ff32f06b8d082581;p=koha-ffzg.git diff --git a/acqui/histsearch.pl b/acqui/histsearch.pl index a1c7fe6708..1f097d828f 100755 --- a/acqui/histsearch.pl +++ b/acqui/histsearch.pl @@ -56,7 +56,7 @@ use C4::Output; use C4::Acquisition; use C4::Debug; use C4::Koha; -use Koha::AdditionalField; +use Koha::AdditionalFields; use Koha::DateUtils; my $input = new CGI; @@ -89,21 +89,31 @@ my $filters = { ordernumber => scalar $input->param('ordernumber'), search_children_too => scalar $input->param('search_children_too'), created_by => [ $input->multi_param('created_by') ], + managing_library => scalar $input->param('managing_library'), }; + my $from_placed_on = eval { dt_from_string( scalar $input->param('from') ) } || dt_from_string; my $to_placed_on = eval { dt_from_string( scalar $input->param('to') ) } || dt_from_string; unless ( $input->param('from') ) { # Fill the form with year-1 - $from_placed_on->subtract( years => 1 ); + $from_placed_on->set_time_zone('floating')->subtract( years => 1 ); +} +$filters->{from_placed_on} = output_pref( { dt => $from_placed_on, dateformat => 'iso', dateonly => 1 } ); +$filters->{to_placed_on} = output_pref( { dt => $to_placed_on, dateformat => 'iso', dateonly => 1 } ); +my @additional_fields = Koha::AdditionalFields->search( { tablename => 'aqbasket', searchable => 1 } ); +$template->param( available_additional_fields => \@additional_fields ); +my @additional_field_filters; +foreach my $additional_field (@additional_fields) { + my $value = $input->param('additional_field_' . $additional_field->id); + if (defined $value and $value ne '') { + push @additional_field_filters, { + id => $additional_field->id, + value => $value, + }; + } } -$filters->{from_placed_on} = output_pref( { dt => $from_placed_on, dateformat => 'iso', dateonly => 1 } ), -$filters->{to_placed_on} = output_pref( { dt => $to_placed_on, dateformat => 'iso', dateonly => 1 } ), -$filters->{additional_fields} = Koha::AdditionalField->get_filters_from_query({ - tablename => 'aqbasket', - query => $input, -} ); - -$template->param( available_additional_fields => scalar Koha::AdditionalField->all( { tablename => 'aqbasket', searchable => 1 } ) ); +$filters->{additional_fields} = \@additional_field_filters; + my $order_loop; # If we're supplied any value then we do a search. Otherwise we don't.