improve cloud poller display

This commit is contained in:
Graham McIntire 2026-01-24 13:33:01 -06:00
parent af71d3f4f9
commit 67614cb93f
No known key found for this signature in database
2 changed files with 17 additions and 6 deletions

View file

@ -131,6 +131,9 @@ defmodule ToweropsWeb.AgentLive.Index do
organization = socket.assigns.current_organization
agent_tokens = Agents.list_organization_agent_tokens(organization.id)
# Refresh cloud pollers list if superadmin (in case a cloud poller was deleted)
cloud_pollers = load_cloud_pollers_if_superuser(socket.assigns.current_scope.user)
# Recalculate device counts after deletion
equipment_counts =
Map.new(agent_tokens, fn token ->
@ -147,6 +150,7 @@ defmodule ToweropsWeb.AgentLive.Index do
{:noreply,
socket
|> assign(:agent_tokens, agent_tokens)
|> assign(:cloud_pollers, cloud_pollers)
|> assign(:device_counts, equipment_counts)
|> assign(:agent_health_stats, agent_health_stats)
|> assign(:assignment_breakdown, assignment_breakdown)

View file

@ -71,12 +71,19 @@
<div class="mt-6">
<.table id="agents-table" rows={@agent_tokens}>
<:col :let={agent} label="Name">
<.link
navigate={~p"/orgs/#{@current_organization.slug}/agents/#{agent.id}"}
class="font-medium text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300"
>
{agent.name}
</.link>
<div class="flex items-center gap-2">
<.link
navigate={~p"/orgs/#{@current_organization.slug}/agents/#{agent.id}"}
class="font-medium text-blue-600 hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300"
>
{agent.name}
</.link>
<%= if agent.is_cloud_poller do %>
<span class="inline-flex items-center gap-1 rounded-full bg-purple-50 dark:bg-purple-900/30 px-2 py-0.5 text-xs font-medium text-purple-700 dark:text-purple-300 ring-1 ring-inset ring-purple-600/20 dark:ring-purple-400/30">
<.icon name="hero-cloud" class="h-3 w-3" /> Cloud
</span>
<% end %>
</div>
<%= if agent.metadata["version"] do %>
<div class="text-xs text-gray-500 dark:text-gray-400 mt-0.5">
v{agent.metadata["version"]}