From 65cf35036770cec4264ef1c8a572347c0b31ab1b Mon Sep 17 00:00:00 2001 From: javieralapps4up Date: Sat, 27 Aug 2022 11:48:05 +0200 Subject: [PATCH] Date filters are lost when clicking on a title When filtering on a date, $param ONLY contains that entire date. I don't know if it's better to fill $param with month, day and year or get the full date (unix time) --- htdocs/modulebuilder/template/myobject_list.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/htdocs/modulebuilder/template/myobject_list.php b/htdocs/modulebuilder/template/myobject_list.php index d9af4add8ce..87ecc59d33c 100644 --- a/htdocs/modulebuilder/template/myobject_list.php +++ b/htdocs/modulebuilder/template/myobject_list.php @@ -145,8 +145,16 @@ foreach ($object->fields as $key => $val) { $search[$key] = GETPOST('search_'.$key, 'alpha'); } if (preg_match('/^(date|timestamp|datetime)/', $val['type'])) { - $search[$key.'_dtstart'] = dol_mktime(0, 0, 0, GETPOST('search_'.$key.'_dtstartmonth', 'int'), GETPOST('search_'.$key.'_dtstartday', 'int'), GETPOST('search_'.$key.'_dtstartyear', 'int')); - $search[$key.'_dtend'] = dol_mktime(23, 59, 59, GETPOST('search_'.$key.'_dtendmonth', 'int'), GETPOST('search_'.$key.'_dtendday', 'int'), GETPOST('search_'.$key.'_dtendyear', 'int')); + if (empty(GETPOST('search_'.$key.'_dtstart', 'int'))) { + $search[$key.'_dtstart'] = dol_mktime(0, 0, 0, GETPOST('search_'.$key.'_dtstartmonth', 'int'), GETPOST('search_'.$key.'_dtstartday', 'int'), GETPOST('search_'.$key.'_dtstartyear', 'int')); + } else { + $search[$key.'_dtstart'] = GETPOST('search_'.$key.'_dtstart', 'int'); + } + if (empty(GETPOST('search_'.$key.'_dtend', 'int'))) { + $search[$key.'_dtend'] = dol_mktime(23, 59, 59, GETPOST('search_'.$key.'_dtendmonth', 'int'), GETPOST('search_'.$key.'_dtendday', 'int'), GETPOST('search_'.$key.'_dtendyear', 'int')); + } else { + $search[$key.'_dtend'] = GETPOST('search_'.$key.'_dtend', 'int'); + } } }