search: fix bug in normalize_query for negated metatags.

Forgot to account for negated metatags in normalize_query after e987f070.

Fixes a bug where wrong page counts were displayed for searches
involving negated metatags due to incorrect query normalization.
This commit is contained in:
evazion
2020-04-30 01:27:38 -05:00
parent 828347dfc5
commit 986bc6e314
2 changed files with 13 additions and 3 deletions

View File

@@ -656,10 +656,14 @@ class PostQueryBuilder
def split_query
scan_query.map do |term|
if term.type == :metatag && term.value.include?(" ")
"#{term.name}:\"#{term.value}\""
elsif term.type == :metatag
if term.type == :metatag && !term.negated && !term.quoted
"#{term.name}:#{term.value}"
elsif term.type == :metatag && !term.negated && term.quoted
"#{term.name}:\"#{term.value}\""
elsif term.type == :metatag && term.negated && !term.quoted
"-#{term.name}:#{term.value}"
elsif term.type == :metatag && term.negated && term.quoted
"-#{term.name}:\"#{term.value}\""
elsif term.type == :tag && term.negated
"-#{term.name}"
elsif term.type == :tag && term.optional