diff --git a/core/default_settings/default_settings.php b/core/default_settings/default_settings.php index 1700579d4a..d1e8cc4b3f 100644 --- a/core/default_settings/default_settings.php +++ b/core/default_settings/default_settings.php @@ -104,7 +104,23 @@ $num_rows = $database->select($sql, $parameters, 'column'); //get the list - $sql = str_replace('count(default_setting_uuid)', '*', $sql); + $sql = "select default_setting_uuid, default_setting_category, default_setting_subcategory, default_setting_name, default_setting_value, cast(default_setting_enabled as text), default_setting_description "; + $sql .= "from v_default_settings "; + if (isset($search) && strlen($search) > 0) { + $sql .= "where ("; + $sql .= " lower(default_setting_category) like :search "; + $sql .= " or lower(default_setting_subcategory) like :search "; + $sql .= " or lower(default_setting_name) like :search "; + $sql .= " or lower(default_setting_value) like :search "; + $sql .= " or lower(default_setting_description) like :search "; + $sql .= ") "; + $parameters['search'] = '%'.$search.'%'; + } + if (isset($default_setting_category) && strlen($default_setting_category) > 0) { + $sql .= (stripos($sql,'WHERE') === false) ? 'where ' : 'and '; + $sql .= "lower(default_setting_category) = :default_setting_category "; + $parameters['default_setting_category'] = strtolower($default_setting_category); + } $sql .= order_by($order_by, $order, 'default_setting_category, default_setting_subcategory, default_setting_order', 'asc'); $sql .= limit_offset($rows_per_page, $offset); $database = new database;