Merge pull request #4952 from thayol/fix-negated-ord

Search: "Fix" negated ordered metatags
This commit is contained in:
evazion
2022-04-06 04:43:24 -05:00
committed by GitHub

View File

@@ -118,7 +118,9 @@ class PostQueryBuilder
def metatags_match(metatags, relation)
metatags.each do |metatag|
clause = metatag_matches(metatag.name, metatag.value, quoted: metatag.quoted)
metatag_name = metatags_without_ord[metatag.name] if metatag.negated && metatags_without_ord.key?(metatag.name)
clause = metatag_matches(metatag_name || metatag.name, metatag.value, quoted: metatag.quoted)
clause = clause.negate_relation if metatag.negated
relation = relation.and_relation(clause)
end
@@ -126,6 +128,14 @@ class PostQueryBuilder
relation
end
def metatags_without_ord
{
"ordfav" => "fav",
"ordfavgroup" => "favgroup",
"ordpool" => "pool",
}
end
def metatag_matches(name, value, quoted: false)
case name
when "id"