Table for links added (links to add images/documents).

Custom partial for admins upload image created, so that it can be reused in upload images and documents.
This commit is contained in:
iagirre
2017-09-29 14:51:49 +02:00
parent 77d0a551cf
commit c67620fdef
8 changed files with 96 additions and 24 deletions

View File

@@ -313,7 +313,8 @@
.proposal-form,
.proposal-edit,
.new_poll_question,
.edit_poll_question {
.edit_poll_question,
.edit_poll {
@include direct-uploads;
}

View File

@@ -5,6 +5,7 @@ module Imageable
included do
has_one :image, as: :imageable, dependent: :destroy
has_many :images, as: :imageable, dependent: :destroy
accepts_nested_attributes_for :image, allow_destroy: true, update_only: true
def image_url(style)

View File

@@ -1,5 +1,6 @@
class Poll < ActiveRecord::Base
include Imageable
include Documentable
has_many :booth_assignments, class_name: "Poll::BoothAssignment"
has_many :booths, through: :booth_assignments

View File

@@ -31,29 +31,28 @@
</div>
</div>
<div class="images small-12 column">
<div>
<%= f.label :image, t("images.form.admin_title") %>
<div class="row">
<%= render 'images/admin_image', imageable: @poll, f: f %>
</div>
<div id="nested-image">
<%= f.fields_for :image do |image_builder| %>
<%= render 'images/image_fields', f: image_builder, imageable: @poll %>
<% end %>
</div>
</div>
<%= link_to_add_association t('images.form.add_new_image'), f, :image,
force_non_association_create: true,
partial: "images/image_fields",
id: "new_image_link",
class: "button hollow #{"hide" if @poll.image.present?}",
render_options: {
locals: { imageable: @poll }
},
data: {
association_insertion_node: "#nested-image",
association_insertion_method: "append"
} %>
<div class="row">
<table>
<thead>
<tr>
<td colspan="2"><%= t("admin.polls.attachments.title") %></td>
</tr>
<tr>
<td><%= t("admin.polls.attachments.images_title") %></td>
<td><%= t("admin.polls.attachments.documents_title") %></td>
</tr>
</thead>
<tbody>
<tr>
<td><%= link_to "#{t("admin.polls.attachments.images_link")} (#{@poll.images.count})", root_path %></td>
<td><%= link_to "#{t("admin.polls.attachments.documents_link")} (#{@poll.documents.count})", root_path %></td>
</tr>
</tbody>
</table>
</div>
<div class="row">

View File

@@ -0,0 +1,60 @@
<div class="images small-12 column">
<div>
<%= f.label :image, t("images.form.admin_title") %>
<div id="nested-image">
<%= f.fields_for :image do |image_builder| %>
<%#= render 'images/image_fields', f: image_builder, imageable: imageable %>
<!-- -->
<div id="<%= dom_id(image_builder.object) %>" class="image direct-upload nested-fields">
<%= image_builder.hidden_field :id %>
<%= image_builder.hidden_field :user_id, value: current_user.id %>
<%= image_builder.hidden_field :cached_attachment %>
<%= image_builder.text_field :title, placeholder: t("images.form.title_placeholder") %>
<%= render_image(image_builder.object, :thumb, false) if image_builder.object.attachment.exists? %>
<div class="attachment-actions">
<div class="small-9 column action-add attachment-errors image-attachment">
<%= render_image_attachment(image_builder, imageable, image_builder.object) %>
</div>
<div class="small-3 column action-remove text-right">
<%= render_destroy_image_link(image_builder, image_builder.object) %>
</div>
</div>
<div class="small-6 column">
<p class="file-name">
<%= image_attachment_file_name(image_builder.object) %>
</p>
</div>
<div class="small-12 column">
<div class="progress-bar-placeholder"><div class="loading-bar"></div></div>
</div>
</div>
<!-- -->
<% end %>
</div>
</div>
<%= link_to_add_association t('images.form.add_new_image'), f, :image,
force_non_association_create: true,
partial: "images/image_fields",
id: "new_image_link",
class: "button hollow #{"hide" if imageable.image.present?}",
render_options: {
locals: { imageable: imageable }
},
data: {
association_insertion_node: "#nested-image",
association_insertion_method: "append"
} %>
</div>

View File

@@ -152,6 +152,8 @@ en:
starts_at: "Start Date"
ends_at: "Closing Date"
geozone_restricted: "Restricted by geozone"
summary: "Summary"
description: "Description"
poll/question:
title: "Question"
valid_answers: "Posibles answers"

View File

@@ -146,6 +146,8 @@ es:
starts_at: "Fecha de apertura"
ends_at: "Fecha de cierre"
geozone_restricted: "Restringida por zonas"
summary: "Resumen"
description: "Descripción"
poll/question:
title: "Pregunta"
valid_answers: "Posibles respuestas"

View File

@@ -580,6 +580,12 @@ es:
error_on_question_added: "No se pudo asignar la pregunta"
question_removed: "Pregunta eliminada de esta votación"
error_on_question_removed: "No se pudo quitar la pregunta"
attachments:
title: "Imágenes y documentos de la votación"
images_title: "Imágenes"
documents_title: "Documents"
images_link: "Lista de imágenes"
documents_link: "Lista de documentos"
questions:
index:
title: "Preguntas ciudadanas"