From 684eef71c77a3a7be0f91a069a41a5235544a5de Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan <tgx_world@hotmail.com> Date: Wed, 13 Mar 2019 15:23:01 +0800 Subject: [PATCH] REFACTOR: Better variable name. --- lib/search.rb | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/lib/search.rb b/lib/search.rb index 07ddba622ec..2c478c58451 100644 --- a/lib/search.rb +++ b/lib/search.rb @@ -394,31 +394,33 @@ class Search exact = true - slug = match.to_s.split(":") - next if slug.empty? + category_slug, subcategory_slug = match.to_s.split(":") + next unless category_slug - if slug[1] + if subcategory_slug # sub category parent_category_id = Category - .where("lower(slug) = ? AND parent_category_id IS NULL", slug[0].downcase) + .where( + "lower(slug) = ? AND parent_category_id IS NULL", category_slug.downcase + ) .pluck(:id) .first category_id = Category .where("lower(slug) = ? AND parent_category_id = ?", - slug[1].downcase, parent_category_id + subcategory_slug.downcase, parent_category_id ) .pluck(:id) .first else # main category - if slug[0][0] == "=" - slug[0] = slug[0][1..-1] + if category_slug[0] == "=" + category_slug = category_slug[1..-1] else exact = false end - category_id = Category.where("lower(slug) = ?", slug[0].downcase) + category_id = Category.where("lower(slug) = ?", category_slug.downcase) .order('case when parent_category_id is null then 0 else 1 end') .pluck(:id) .first @@ -434,7 +436,7 @@ class Search posts.where("topics.category_id IN (?)", category_ids) else # try a possible tag match - tag_id = Tag.where_name(slug[0]).pluck(:id).first + tag_id = Tag.where_name(category_slug).pluck(:id).first if (tag_id) posts.where("topics.id IN ( SELECT DISTINCT(tt.topic_id)