From 0b8cad77dd0d3e1b63943e8ae2a188e024cfa15f Mon Sep 17 00:00:00 2001 From: "byte[]" Date: Thu, 30 Apr 2020 00:18:47 -0400 Subject: [PATCH] fixes #104: show aliases in autocomplete --- lib/philomena_web/controllers/tag/autocomplete_controller.ex | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/philomena_web/controllers/tag/autocomplete_controller.ex b/lib/philomena_web/controllers/tag/autocomplete_controller.ex index 76c32ca9..7db0ee64 100644 --- a/lib/philomena_web/controllers/tag/autocomplete_controller.ex +++ b/lib/philomena_web/controllers/tag/autocomplete_controller.ex @@ -3,6 +3,7 @@ defmodule PhilomenaWeb.Tag.AutocompleteController do alias Philomena.Elasticsearch alias Philomena.Tags.Tag + import Ecto.Query def show(conn, params) do tags = @@ -25,8 +26,10 @@ defmodule PhilomenaWeb.Tag.AutocompleteController do sort: %{images: :desc} }, %{page_size: 5}, - Tag + Tag |> preload(:aliased_tag) ) + |> Enum.map(&(&1.aliased_tag || &1)) + |> Enum.sort_by(&(-&1.images_count)) |> Enum.map(&%{label: "#{&1.name} (#{&1.images_count})", value: &1.name}) end