X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fsearch%2Felasticsearch.ex;h=20e03e1f0d7c40b6a7e1c44c54fd05cccb7c038f;hb=3f76de76dac266ea2909dbd1dc88a9533d972952;hp=7c7ca82c8825e19a39b5807ec51afe9cb3d5b5e5;hpb=1ecdb19de5fa54119c6a744c766bbd6c77d1b746;p=akkoma diff --git a/lib/pleroma/search/elasticsearch.ex b/lib/pleroma/search/elasticsearch.ex index 7c7ca82c8..20e03e1f0 100644 --- a/lib/pleroma/search/elasticsearch.ex +++ b/lib/pleroma/search/elasticsearch.ex @@ -13,25 +13,21 @@ defmodule Pleroma.Search.Elasticsearch do def es_query(:activity, query, offset, limit) do must = Parsers.Activity.parse(query) - if must == [] do - :skip - else - %{ - size: limit, - from: offset, - terminate_after: 50, - timeout: "5s", - sort: [ - "_score", - %{_timestamp: %{order: "desc", format: "basic_date_time"}} - ], - query: %{ - bool: %{ - must: must - } + %{ + size: limit, + from: offset, + terminate_after: 50, + timeout: "5s", + sort: [ + "_score", + %{"_timestamp" => %{order: "desc", format: "basic_date_time"}} + ], + query: %{ + bool: %{ + must: must } } - end + } end defp maybe_fetch(:activity, search_query) do @@ -62,8 +58,12 @@ defmodule Pleroma.Search.Elasticsearch do Task.async(fn -> q = es_query(:activity, parsed_query, offset, limit) - Pleroma.Search.Elasticsearch.Store.search(:activities, q) - |> Enum.filter(fn x -> Visibility.visible_for_user?(x, user) end) + :activities + |> Pleroma.Search.Elasticsearch.Store.search(q) + |> Enum.filter(fn x -> + x.data["type"] == "Create" && x.object.data["type"] == "Note" && + Visibility.visible_for_user?(x, user) + end) end) activity_results = Task.await(activity_task)