[5.x] Don't enforce a query length on comb searches #10496
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Sometimes you want to show users a list of results, and then allow a query to be entered that filters that listing, rather than entering the query before showing the listing.
As things stand that means using the collection tag for the non-query state, and then the search:results tag for the queried state. This is because the Comb search driver doesn't allow blank queries. This isn't ideal and means a lot of code repetition for what is the same thing.
This PR updates the logic to allow blank queries when you have
'min_characters' => 0
in your search index config. This allows you to use the search:results tag for both situations mentioned above:This shouldn't break any existing installs as min_characters: 1 is the default (?).
I left the
NoQuery
class in place on the off chance someone might be using it.