app/views/point_of_interests/_form.html.erb
<%= fields_for :point_of_interest, point_of_interest do |f| %>
<%= hidden_field_tag "point_of_interest[id]", f.object.id if f.object.id.present? %>
<div class="row">
<div class="col">
<h2 class="d-sm-flex align-items-center justify-content-between my-4">
Kategorien
</h2>
<p>
Jeder Ort kann in einer oder mehreren Kategorien abgelegt werden.
<p>
<%= render partial: "shared/partials/categories_form", locals: { record: point_of_interest, record_type: "point_of_interest", form: f, tag_filter: "point_of_interest" } %>
<%= link_to "#", class: "btn btn-sm btn-secondary", id: "nested-add-category" do %>
<i class="fas fa-plus text-white mr-2"></i>
Kategorie hinzufügen
<% end %>
</div>
</div>
<hr />
<div class="row">
<div class="col">
<div class="form-group">
<label for="description">Name *</label>
<%= f.text_field :name, required: true, class: "form-control" %>
</div>
</div>
</div>
<div class="row">
<div class="col">
<div class="form-group">
<label for="description">Beschreibung</label>
<%= f.text_area :description, class: "form-control html-editor" %>
</div>
</div>
</div>
<hr />
<div class="row">
<div class="col">
<h3 class="d-sm-flex align-items-center justify-content-between my-4">
Adresse
</h3>
</div>
</div>
<% address = point_of_interest.try(:addresses).try(:first) || OpenStruct.new(geo_location: nil) %>
<%= f.fields_for :addresses, address do |fadd| %>
<%= render partial: "shared/partials/address_form", locals: { form: fadd, address: address } %>
<% end %>
<hr />
<%= render partial: "shared/partials/opening_hours_form", locals: { record: point_of_interest, record_type: "point_of_interest", form: f } %>
<div class="row">
<div class="col">
<h3 class="d-sm-flex align-items-center justify-content-between my-4">
Betreiber
</h3>
</div>
</div>
<%= render partial: "shared/partials/operating_company_form", locals: { record: point_of_interest, form: f } %>
<hr />
<div class="row">
<div class="col">
<h3 class="d-sm-flex align-items-center justify-content-between my-4">
Kontakt
</h3>
</div>
</div>
<% contact = point_of_interest.try(:contact) || OpenStruct.new(web_urls: [OpenStruct.new]) %>
<%= f.fields_for "contact", contact do |fc| %>
<%= render partial: "shared/partials/contact_form", locals: { form: fc, contact: contact } %>
<% end %>
<%= render partial: "shared/partials/web_url_form", locals: { record: point_of_interest, record_type: "point_of_interest", form: f } %>
<%= render partial: "shared/partials/price_informations_form", locals: { record: point_of_interest, record_type: "point_of_interest", form: f } %>
<div class="row">
<div class="col">
<h3 class="d-sm-flex align-items-center justify-content-between my-4">
Dateien
</h3>
</div>
</div>
<%= render partial: "shared/partials/media_contents_form", locals: { record: point_of_interest, form: f } %>
<% if visible_in_role?("role_lunch") %>
<%= render partial: "point_of_interests/form_partials/lunches_form", locals: { record: point_of_interest, form: f } %>
<% end %>
<hr />
<div class="row justify-content-center pb-4">
<%= f.submit "Speichern", class: "btn btn-primary btn--big" %>
</div>
<% end %>