„lib/chiya/notes.ex“ ändern

This commit is contained in:
inhji 2023-07-07 11:56:42 +02:00
parent e85b374b9e
commit bfae64d397

View file

@ -40,14 +40,28 @@ defmodule Chiya.Notes do
end end
def list_notes_by_channel(%Chiya.Channels.Channel{} = channel) do def list_notes_by_channel(%Chiya.Channels.Channel{} = channel) do
Note list_notes_by_channel_query(channel)
|> join(:inner, [n], c in assoc(n, :channels))
|> where([n, c], c.id == ^channel.id)
|> order_by([n], desc: n.updated_at, desc: n.published_at) |> order_by([n], desc: n.updated_at, desc: n.published_at)
|> Repo.all() |> Repo.all()
|> Repo.preload(@preloads) |> Repo.preload(@preloads)
end end
def list_notes_by_channel_published(%Chiya.Channels.Channel{} = channel) do
list_notes_by_channel_query(channel)
|> order_by([n], desc: n.published_at)
end
def list_notes_by_channel_updated(%Chiya.Channels.Channel{} = channel) do
list_notes_by_channel_query(channel)
|> order_by([n], desc: n.published_at)
end
defp list_notes_by_channel_query(%Chiya.Channels.Channel{} = channel) do
Note
|> join(:inner, [n], c in assoc(n, :channels))
|> where([n, c], c.id == ^channel.id)
end
@doc """ @doc """
Preloads a note Preloads a note