Keine Beschreibung http://j1x-huginn.herokuapp.com

_form.html.erb 3.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <% if @agent.errors.any? %>
  2. <div class="row well">
  3. <h2><%= pluralize(@agent.errors.count, "error") %> prohibited this Agent from being saved:</h2>
  4. <% @agent.errors.full_messages.each do |msg| %>
  5. <p class='text-warning'><%= msg %></p>
  6. <% end %>
  7. </div>
  8. <% end %>
  9. <%= form_for(@agent,
  10. :as => :agent,
  11. :url => @agent.new_record? ? agents_path : agent_path(@agent),
  12. :method => @agent.new_record? ? "POST" : "PUT") do |f| %>
  13. <div class="row">
  14. <div class="col-md-6">
  15. <div class="row">
  16. <!-- Form controls width restricted -->
  17. <div class="col-md-8">
  18. <% if @agent.new_record? %>
  19. <div class="form-group type-select">
  20. <%= f.label :type %>
  21. <%= f.select :type, options_for_select(Agent.types.map(&:to_s).sort.map {|type| [type.gsub(/^.*::/, ''), type] }, @agent.type), {}, :class => 'select2 form-control' %>
  22. </div>
  23. <% end %>
  24. <div class="form-group">
  25. <%= f.label :name %>
  26. <%= f.text_field :name, :class => 'form-control' %>
  27. </div>
  28. <div class="form-group">
  29. <%= f.label :schedule, :class => 'control-label' %>
  30. <div class="schedule-region" data-can-be-scheduled="<%= @agent.can_be_scheduled? %>">
  31. <%= f.select :schedule, options_for_select(Agent::SCHEDULES.map {|s| [s.humanize.titleize, s] }, @agent.schedule), {}, :class => 'form-control' %>
  32. <span class='cannot-be-scheduled text-info'>This type of Agent cannot be scheduled.</span>
  33. </div>
  34. </div>
  35. <div class='event-related-region' data-can-create-events="<%= @agent.can_create_events? %>">
  36. <div class="form-group">
  37. <%= f.label :keep_events_for, "Keep events" %>
  38. <%= f.select :keep_events_for, options_for_select(Agent::EVENT_RETENTION_SCHEDULES, @agent.keep_events_for), {}, :class => 'form-control' %>
  39. </div>
  40. </div>
  41. <div class="form-group">
  42. <%= f.label :sources %>
  43. <div class="link-region" data-can-receive-events="<%= @agent.can_receive_events? %>">
  44. <% eventSources = (current_user.agents - [@agent]).find_all { |a| a.can_create_events? } %>
  45. <%= f.select(:source_ids,
  46. options_for_select(eventSources.map {|s| [s.name, s.id] },
  47. @agent.source_ids),
  48. {}, { :multiple => true, :size => 5, :class => 'select2 form-control' }) %>
  49. <span class='cannot-receive-events text-info'>This type of Agent cannot receive events.</span>
  50. <%= f.label :propagate_immediately, :class => 'propagate-immediately' do %>Propagate immediately
  51. <%= f.check_box :propagate_immediately %>
  52. <% end %>
  53. </div>
  54. </div>
  55. </div>
  56. <!-- Form controls full width -->
  57. <div class="col-md-12">
  58. <div class="form-group">
  59. <%= f.label :options %>
  60. <textarea rows="10" id="agent_options" name="agent[options]" class="form-control live-json-editor <%= (@agent.new_record? && @agent.options == {}) ? "showing-default" : "" %>">
  61. <%= Utils.jsonify((@agent.new_record? && @agent.options == {}) ? @agent.default_options : @agent.options) %>
  62. </textarea>
  63. </div>
  64. </div>
  65. </div>
  66. </div>
  67. <div class="col-md-6">
  68. <div class="row">
  69. <div class="col-md-12">
  70. <div class='well description'>
  71. <%= @agent.html_description unless @agent.new_record? %>
  72. </div>
  73. </div>
  74. </div>
  75. <div class="row">
  76. <div class="col-md-12">
  77. <div class='well event-descriptions' style='display: none'></div>
  78. </div>
  79. </div>
  80. </div>
  81. </div>
  82. <div class='row'>
  83. <div class="col-md-12">
  84. <%= f.submit :class => "btn btn-primary" %>
  85. </div>
  86. </div>
  87. <% end %>