mirror of
https://github.com/discourse/discourse.git
synced 2025-06-06 13:06:56 +08:00
FIX: Full page search was removing advanced search terms
This commit is contained in:
@ -151,6 +151,7 @@ class Search
|
|||||||
end
|
end
|
||||||
|
|
||||||
attr_accessor :term
|
attr_accessor :term
|
||||||
|
attr_reader :clean_term
|
||||||
|
|
||||||
def initialize(term, opts=nil)
|
def initialize(term, opts=nil)
|
||||||
@opts = opts || {}
|
@opts = opts || {}
|
||||||
@ -163,6 +164,8 @@ class Search
|
|||||||
|
|
||||||
# Removes any zero-width characters from search terms
|
# Removes any zero-width characters from search terms
|
||||||
term.to_s.gsub!(/[\u200B-\u200D\uFEFF]/, '')
|
term.to_s.gsub!(/[\u200B-\u200D\uFEFF]/, '')
|
||||||
|
@clean_term = term.to_s.dup
|
||||||
|
|
||||||
term = process_advanced_search!(term)
|
term = process_advanced_search!(term)
|
||||||
|
|
||||||
if term.present?
|
if term.present?
|
||||||
@ -179,7 +182,7 @@ class Search
|
|||||||
@limit = Search.per_filter
|
@limit = Search.per_filter
|
||||||
end
|
end
|
||||||
|
|
||||||
@results = GroupedSearchResults.new(@opts[:type_filter], term, @search_context, @include_blurbs, @blurb_length)
|
@results = GroupedSearchResults.new(@opts[:type_filter], clean_term, @search_context, @include_blurbs, @blurb_length)
|
||||||
end
|
end
|
||||||
|
|
||||||
def valid?
|
def valid?
|
||||||
|
@ -65,11 +65,10 @@ describe Search do
|
|||||||
|
|
||||||
expect(term == 'capybara').to eq(false)
|
expect(term == 'capybara').to eq(false)
|
||||||
|
|
||||||
search = Search.new(term)
|
search = Search.new(term)
|
||||||
search.execute
|
|
||||||
|
|
||||||
expect(search.valid?).to eq(true)
|
expect(search.valid?).to eq(true)
|
||||||
expect(search.term).to eq('capybara')
|
expect(search.term).to eq('capybara')
|
||||||
|
expect(search.clean_term).to eq('capybara')
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'does not search when the search term is too small' do
|
it 'does not search when the search term is too small' do
|
||||||
|
Reference in New Issue
Block a user