index.html.erb 3.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <div class='container'>
  2. <div class='row'>
  3. <div class='span12'>
  4. <div class="page-header">
  5. <h2>Your Agents</h2>
  6. </div>
  7. <table class='table table-striped'>
  8. <tr>
  9. <th>Name</th>
  10. <th>Schedule</th>
  11. <th>Last Check</th>
  12. <th>Last Event Out</th>
  13. <th>Last Event In</th>
  14. <th>Events Created</th>
  15. <th>Working?</th>
  16. <th></th>
  17. </tr>
  18. <% @agents.each do |agent| %>
  19. <% if agent.disabled? %>
  20. <tr class='agent-disabled'>
  21. <% else %>
  22. <tr>
  23. <% end %>
  24. <td>
  25. <%= agent.name %>
  26. <br/>
  27. <span class='muted'><%= agent.short_type.titleize %></span>
  28. </td>
  29. <td>
  30. <% if agent.can_be_scheduled? %>
  31. <%= agent.schedule.to_s.humanize.titleize %>
  32. <% else %>
  33. <span class='not-applicable'></span>
  34. <% end %>
  35. </td>
  36. <td>
  37. <% if agent.can_be_scheduled? %>
  38. <%= agent.last_check_at ? time_ago_in_words(agent.last_check_at) + " ago" : "never" %>
  39. <% else %>
  40. <span class='not-applicable'></span>
  41. <% end %>
  42. </td>
  43. <td>
  44. <% if agent.can_create_events? %>
  45. <%= agent.last_event_at ? time_ago_in_words(agent.last_event_at) + " ago" : "never" %>
  46. <% else %>
  47. <span class='not-applicable'></span>
  48. <% end %>
  49. </td>
  50. <td>
  51. <% if agent.can_receive_events? %>
  52. <%= agent.last_receive_at ? time_ago_in_words(agent.last_receive_at) + " ago" : "never" %>
  53. <% else %>
  54. <span class='not-applicable'></span>
  55. <% end %>
  56. </td>
  57. <td>
  58. <% if agent.can_create_events? %>
  59. <%= link_to(agent.events_count || 0, events_path(:agent => agent.to_param)) %>
  60. <% else %>
  61. <span class='not-applicable'></span>
  62. <% end %>
  63. </td>
  64. <td><%= working(agent) %></td>
  65. <td>
  66. <div class="btn-group">
  67. <%= link_to 'Show', agent_path(agent), class: "btn btn-mini btn-primary" %>
  68. <%= link_to 'Edit', edit_agent_path(agent), class: "btn btn-mini btn-primary" %>
  69. <% if agent.disabled? %>
  70. <%= link_to "Enable", agent_path(agent, :agent => { :disabled => false }), :method => :put, class: "btn btn-mini btn-success"%>
  71. <% else %>
  72. <%= link_to "Disable", agent_path(agent, :agent => { :disabled => true }), :method => :put, class: "btn btn-mini btn-warning"%>
  73. <% end %>
  74. <%= link_to 'Delete', agent_path(agent), method: :delete, data: { confirm: 'Are you sure?' }, class: "btn btn-mini btn-danger" %>
  75. <% if agent.can_be_scheduled? && !agent.disabled? %>
  76. <%= link_to 'Run', run_agent_path(agent, :return => "index"), method: :post, class: "btn btn-mini btn-success" %>
  77. <% else %>
  78. <span class='btn btn-mini disabled'>Run</span>
  79. <% end %>
  80. </div>
  81. </td>
  82. </tr>
  83. <% end %>
  84. </table>
  85. <%= paginate @agents, :theme => 'twitter-bootstrap' %>
  86. <br/>
  87. <div class="btn-group">
  88. <%= link_to '<i class="icon-plus"></i> New Agent'.html_safe, new_agent_path, class: "btn" %>
  89. <%= link_to '<i class="icon-refresh"></i> Run event propagation'.html_safe, propagate_agents_path, method: 'post', class: "btn" %>
  90. <%= link_to '<i class="icon-random"></i> View diagram'.html_safe, diagram_agents_path, class: "btn" %>
  91. </div>
  92. </div>
  93. </div>
  94. </div>