From 62e5347557b96eb57ddf8321b08b8bf21831d7cc Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 7 Jul 2022 15:01:13 +0200 Subject: [statistics] Allow '*' in "any" search filter --- modules-available/statistics/inc/statisticsfilter.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules-available/statistics/inc') diff --git a/modules-available/statistics/inc/statisticsfilter.inc.php b/modules-available/statistics/inc/statisticsfilter.inc.php index 809a636d..c83d9542 100644 --- a/modules-available/statistics/inc/statisticsfilter.inc.php +++ b/modules-available/statistics/inc/statisticsfilter.inc.php @@ -714,7 +714,7 @@ class AnyHardwarePropStatisticsFilter extends StatisticsFilter public function __construct() { - parent::__construct(null, ['=']); + parent::__construct(null, ['~']); } public function whereClause(string $operator, $argument, array &$args, array &$joins): string @@ -725,7 +725,7 @@ class AnyHardwarePropStatisticsFilter extends StatisticsFilter $joins[] = "LEFT JOIN statistic_hw_prop $key1 ON (`$key1`.`value` LIKE :$val AND `$key1`.hwid = `$shw`.hwid)"; $key2 = self::getNewKey('hw'); $joins[] = "LEFT JOIN machine_x_hw_prop $key2 ON (`$key2`.`value` LIKE :$val AND `$key2`.machinehwid = mxhw.machinehwid)"; - $args[$val] = '%' . str_replace('%', '_', $argument) . '%'; + $args[$val] = '%' . str_replace(['%', '*'], ['_', '%'], $argument) . '%'; return "((`$key1`.`value` IS NOT NULL) OR (`$key2`.`value` IS NOT NULL))"; } -- cgit v1.2.3-55-g7522