28 lines
665 B
Elixir
28 lines
665 B
Elixir
|
|
defmodule PostlandWeb.FollowersLive do
|
||
|
|
use PostlandWeb, :live_view
|
||
|
|
|
||
|
|
alias Postland.Actors
|
||
|
|
alias Postland.Follows
|
||
|
|
|
||
|
|
def render(assigns) do
|
||
|
|
~H"""
|
||
|
|
<div class="py-4">
|
||
|
|
<h3 class="text-base font-semibold">Followers</h3>
|
||
|
|
<p :if={@accounts == []} class="text-gray-400">
|
||
|
|
No one follows you.
|
||
|
|
</p>
|
||
|
|
<div :for={acct <- @accounts} class="mt-2">
|
||
|
|
<.profile_card account={acct} />
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
"""
|
||
|
|
end
|
||
|
|
|
||
|
|
def mount(_params, _session, socket) do
|
||
|
|
followers =
|
||
|
|
Follows.all_followers() |> Enum.map(fn follow -> Actors.actor(follow.follower) end)
|
||
|
|
|
||
|
|
{:ok, assign(socket, :accounts, followers)}
|
||
|
|
end
|
||
|
|
end
|