def handle_info(
%Phoenix.Socket.Broadcast{
topic: "admin_members:updated:" <> _id,
payload: %{data: admin_member}
},
%{assigns: %{current_user: current_user}} = socket
) do
# force update of current_user to handle any changes to organizations
admin_member = Ash.load!(admin_member, [:role], actor: current_user)
{:noreply,
socket
|> stream_insert(:admin_members, admin_member)
|> assign(:current_user, Ash.load!(current_user, [:organizations], actor: current_user))}
end
def handle_info(
%Phoenix.Socket.Broadcast{
topic: "admin_members:updated:" <> _id,
payload: %{data: admin_member}
},
%{assigns: %{current_user: current_user}} = socket
) do
# force update of current_user to handle any changes to organizations
admin_member = Ash.load!(admin_member, [:role], actor: current_user)
{:noreply,
socket
|> stream_insert(:admin_members, admin_member)
|> assign(:current_user, Ash.load!(current_user, [:organizations], actor: current_user))}
end