Accept nested attributes for documents on proposals. Adapt documentable js file to allow many input files at the same page.

This commit is contained in:
Senén Rodero Rodríguez
2017-08-12 17:28:03 +02:00
parent e327b420ff
commit e9c5f77368
10 changed files with 74 additions and 24 deletions

View File

@@ -22,10 +22,8 @@
label: false,
class: 'document_ajax_attachment show-for-sr',
data: {
url: upload_documents_url(
documentable_type: @document.documentable_type,
documentable_id: @document.documentable_id
),
url: upload_documents_url(documentable_type: @document.documentable_type, documentable_id: @document.documentable_id),
chached_attachment_input_field: "document_cached_attachment",
multiple: false
} %>
<%= f.label :attachment, t("documents.form.attachment_label"), class: 'button hollow' %>

View File

@@ -47,6 +47,35 @@
<%= f.text_field :external_url, placeholder: t("proposals.form.proposal_external_url"), label: false %>
</div>
<div class="small-12 column">
<%= f.label :documents %>
<p class="help-text">Aquí puedes añadir hasta 3 doucmentos en formato PDF </p>
<% @proposal.documents.each_with_index do |document, index| %>
<div>
<%= f.fields_for :documents, document do |document_fields| %>
<%= document_fields.text_field :title %>
<%= document_fields.hidden_field :cached_attachment, value: document.attachment.path %>
<%= document_fields.file_field :attachment,
accept: accepted_content_types_extensions(@proposal),
label: false,
class: 'document_ajax_attachment show-for-sr',
data: {
url: upload_documents_url(
documentable_type: document_fields.object.documentable_type,
documentable_id: document_fields.object.documentable_id
),
chached_attachment_input_field: "proposal_documents_attributes_#{index}_cached_attachment",
multiple: false
} %>
<%= document_fields.label :attachment, t("documents.form.attachment_label"), class: 'button hollow' %>
<div class="progress-bar-placeholder"></div>
<p class="file-name"><%= document_attachment_file_name(document) %></p>
<% end %>
</div>
<hr>
<% end %>
</div>
<div class="small-12 medium-6 column">
<%= f.label :geozone_id, t("proposals.form.geozone") %>
<%= f.select :geozone_id, geozone_select_options, {include_blank: t("geozones.none"), label: false} %>