From ffae621749c52cff77c01cd184f6ec604843a14d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marc=20V=C3=A9ron?= Date: Mon, 5 Oct 2015 16:22:12 +0200 Subject: [PATCH] Bug 14923: Remove C4::Dates from labels/label-item-search.pl This patch removes C4::Dates from labels/label-item-search.pl To test: - Go to Home > Tools > Labels home > Manage label batches - Click "Add item(s)" - Verify that selection with date after and date before works the same as without patch. Signed-off-by: Hector Castro Works as advertised. Tested with bad dates Signed-off-by: Jonathan Druart Todo later: Some checks should be added on client side. Signed-off-by: Tomas Cohen Arazi --- labels/label-item-search.pl | 39 +++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/labels/label-item-search.pl b/labels/label-item-search.pl index f28f057ce3..9bbfa60c8f 100755 --- a/labels/label-item-search.pl +++ b/labels/label-item-search.pl @@ -28,13 +28,13 @@ use POSIX qw(ceil); use C4::Auth qw(get_template_and_user); use C4::Output qw(output_html_with_http_headers); use C4::Context; -use C4::Dates; use C4::Search qw(SimpleSearch); use C4::Biblio qw(TransformMarcToKoha); use C4::Items qw(GetItemInfosOf get_itemnumbers_of); use C4::Koha qw(GetItemTypes); # XXX subfield_is_koha_internal_p use C4::Creators::Lib qw(html_table); use C4::Debug; +use Koha::DateUtils; BEGIN { $debug = $debug || $cgi_debug; @@ -78,26 +78,31 @@ if ( $op eq "do_search" ) { $dateto = $query->param('dateto'); if ($datefrom) { - $datefrom = C4::Dates->new($datefrom); - if ($QParser) { - $ccl_query .= ' && ' if $ccl_textbox; - $ccl_query .= - "acqdate(" . $datefrom->output("iso") . '-)'; - } else { - $ccl_query .= ' and ' if $ccl_textbox; - $ccl_query .= - "acqdate,st-date-normalized,ge=" . $datefrom->output("iso"); + $datefrom = eval { dt_from_string ( $datefrom ) }; + if ($datefrom) { + $datefrom = output_pref( { dt => $datefrom, dateonly => 1, dateformat => 'iso' } ); + if ($QParser) { + $ccl_query .= ' && ' if $ccl_textbox; + $ccl_query .= + "acqdate(" . $datefrom . '-)'; + } else { + $ccl_query .= ' and ' if $ccl_textbox; + $ccl_query .= "acqdate,st-date-normalized,ge=" . $datefrom; + } } } if ($dateto) { - $dateto = C4::Dates->new($dateto); - if ($QParser) { - $ccl_query .= ' && ' if ( $ccl_textbox || $datefrom ); - $ccl_query .= "acqdate(-" . $dateto->output("iso") . ')'; - } else { - $ccl_query .= ' and ' if ( $ccl_textbox || $datefrom ); - $ccl_query .= "acqdate,st-date-normalized,le=" . $dateto->output("iso"); + $dateto = eval { dt_from_string ( $dateto ) }; + if ($dateto) { + $dateto = output_pref( { dt => $dateto, dateonly => 1, dateformat => 'iso' } ); + if ($QParser) { + $ccl_query .= ' && ' if ( $ccl_textbox || $datefrom ); + $ccl_query .= "acqdate(-" . $dateto . ')'; + } else { + $ccl_query .= ' and ' if ( $ccl_textbox || $datefrom ); + $ccl_query .= "acqdate,st-date-normalized,le=" . $dateto; + } } } -- 2.39.5