From e9eb638d792b4edb68dcee8275d679150d2f8735 Mon Sep 17 00:00:00 2001 From: Liam Date: Sat, 13 Jul 2024 14:42:37 -0400 Subject: [PATCH] Use compile with opts for filter queries --- lib/philomena/filters/query.ex | 3 ++- .../controllers/api/json/search/filter_controller.ex | 2 +- lib/philomena_web/controllers/filter_controller.ex | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/philomena/filters/query.ex b/lib/philomena/filters/query.ex index 3b6bb3ef..1741103c 100644 --- a/lib/philomena/filters/query.ex +++ b/lib/philomena/filters/query.ex @@ -33,7 +33,8 @@ defmodule Philomena.Filters.Query do |> Parser.parse(query_string, context) end - def compile(user, query_string) do + def compile(query_string, opts \\ []) do + user = Keyword.get(opts, :user) query_string = query_string || "" case user do diff --git a/lib/philomena_web/controllers/api/json/search/filter_controller.ex b/lib/philomena_web/controllers/api/json/search/filter_controller.ex index 7b402065..7c4f81b5 100644 --- a/lib/philomena_web/controllers/api/json/search/filter_controller.ex +++ b/lib/philomena_web/controllers/api/json/search/filter_controller.ex @@ -9,7 +9,7 @@ defmodule PhilomenaWeb.Api.Json.Search.FilterController do def index(conn, params) do user = conn.assigns.current_user - case Query.compile(user, params["q"] || "") do + case Query.compile(params["q"], user: user) do {:ok, query} -> filters = Filter diff --git a/lib/philomena_web/controllers/filter_controller.ex b/lib/philomena_web/controllers/filter_controller.ex index 61469ffd..cbe001da 100644 --- a/lib/philomena_web/controllers/filter_controller.ex +++ b/lib/philomena_web/controllers/filter_controller.ex @@ -13,8 +13,8 @@ defmodule PhilomenaWeb.FilterController do def index(conn, %{"fq" => fq}) do user = conn.assigns.current_user - user - |> Query.compile(fq) + fq + |> Query.compile(user: user) |> render_index(conn, user) end