From a0484f9153cb137cd19ede6a7ee3b335ca3adcb5 Mon Sep 17 00:00:00 2001 From: Andrew Cantino Date: Sun, 1 Sep 2013 17:32:25 -0600 Subject: [PATCH] Update Agent Index to hide impossible fields. --- .../stylesheets/application.css.scss.erb | 5 + app/models/agent.rb | 2 +- app/views/agents/index.html.erb | 92 +++++++++++-------- 3 files changed, 61 insertions(+), 38 deletions(-) diff --git a/app/assets/stylesheets/application.css.scss.erb b/app/assets/stylesheets/application.css.scss.erb index 5c530ae7..7f3a3131 100644 --- a/app/assets/stylesheets/application.css.scss.erb +++ b/app/assets/stylesheets/application.css.scss.erb @@ -86,6 +86,11 @@ img.spinner { overflow: hidden; } +span.not-applicable:after { + color: #bbbbbb; + content: "n/a"; +} + // Flash .flash { diff --git a/app/models/agent.rb b/app/models/agent.rb index 94b32037..38cc21f0 100644 --- a/app/models/agent.rb +++ b/app/models/agent.rb @@ -121,7 +121,7 @@ class Agent < ActiveRecord::Base end def last_event_at - @memoized_last_event_at ||= events.select(:created_at).first.try(:created_at) + @memoized_last_event_at ||= most_recent_event.try(:created_at) end def default_schedule diff --git a/app/views/agents/index.html.erb b/app/views/agents/index.html.erb index f36aa084..5042f2a8 100644 --- a/app/views/agents/index.html.erb +++ b/app/views/agents/index.html.erb @@ -8,53 +8,71 @@ + - - + <% @agents.each do |agent| %> - - - + + + + + + + + - - - - - - - + + + <% end %>
NameSchedule Last Check Last Event Out Last Event InEventsScheduleEvents Created Working?
- <%= agent.name %> -
- <%= agent.short_type.titleize %> -
- <% if agent.cannot_be_scheduled? %> - N/A +
+ <%= agent.name %> +
+ <%= agent.short_type.titleize %> +
+ <% if agent.can_be_scheduled? %> + <%= agent.schedule.to_s.humanize.titleize %> + <% else %> + + <% end %> + + <% if agent.can_be_scheduled? %> + <%= agent.last_check_at ? time_ago_in_words(agent.last_check_at) + " ago" : "never" %> + <% else %> + + <% end %> + + <% if agent.can_create_events? %> + <%= agent.last_event_at ? time_ago_in_words(agent.last_event_at) + " ago" : "never" %> + <% else %> + + <% end %> + + <% if agent.can_receive_events? %> + <%= agent.last_receive_at ? time_ago_in_words(agent.last_receive_at) + " ago" : "never" %> + <% else %> + + <% end %> + + <% if agent.can_create_events? %> + <%= link_to(agent.events_count || 0, events_path(:agent => agent.to_param)) %> + <% else %> + + <% end %> + <%= working(agent) %> +
+ <%= link_to 'Show', agent_path(agent), class: "btn btn-mini" %> + <%= link_to 'Edit', edit_agent_path(agent), class: "btn btn-mini" %> + <%= link_to 'Delete', agent_path(agent), method: :delete, data: { confirm: 'Are you sure?' }, class: "btn btn-mini" %> + <% if agent.can_be_scheduled? %> + <%= link_to 'Run', run_agent_path(agent, :return => "index"), method: :post, class: "btn btn-mini" %> <% else %> - <%= agent.last_check_at ? time_ago_in_words(agent.last_check_at) + " ago" : "never" %> + <%= link_to 'Run', "#", class: "btn btn-mini disabled" %> <% end %> -
<%= agent.last_event_at ? time_ago_in_words(agent.last_event_at) + " ago" : "never" %> - <% if agent.cannot_receive_events? %> - N/A - <% else %> - <%= agent.last_receive_at ? time_ago_in_words(agent.last_receive_at) + " ago" : "never" %> - <% end %> - <%= link_to(agent.events_count || 0, events_path(:agent => agent.to_param)) %><%= (agent.schedule || "n/a").to_s.humanize.titleize %><%= working(agent) %> -
- <%= link_to 'Show', agent_path(agent), class: "btn btn-mini" %> - <%= link_to 'Edit', edit_agent_path(agent), class: "btn btn-mini" %> - <%= link_to 'Delete', agent_path(agent), method: :delete, data: {confirm: 'Are you sure?'}, class: "btn btn-mini" %> - <% if agent.can_be_scheduled? %> - <%= link_to 'Run', run_agent_path(agent, :return => "index"), method: :post, class: "btn btn-mini" %> - <% else %> - <%= link_to 'Run', "#", class: "btn btn-mini disabled" %> - <% end %> -
-