40 lines
1.8 KiB
Text
40 lines
1.8 KiB
Text
.form-group
|
|
- if metadata.uploaded?
|
|
= image_tag url_for(metadata.static_file),
|
|
alt: metadata.value['description'],
|
|
class: 'img-fluid',
|
|
id: "#{attribute}-preview"
|
|
|
|
-# Mantener el valor si no enviamos ninguna imagen
|
|
= hidden_field_tag "#{base}[#{attribute}][path]", metadata.value['path']
|
|
-# Las imágenes requeridas solo se pueden reemplazar
|
|
- unless metadata.required
|
|
.custom-control.custom-switch
|
|
= check_box_tag "#{base}[#{attribute}][path]", '', false, id: "#{base}_#{attribute}_destroy", class: 'custom-control-input'
|
|
= label_tag "#{base}_#{attribute}_destroy", t('posts.attributes.image.destroy'), class: 'custom-control-label'
|
|
- else
|
|
= image_tag '',
|
|
alt: metadata.value['description'],
|
|
class: 'img-fluid',
|
|
id: "#{attribute}-preview"
|
|
|
|
.custom-file
|
|
= file_field(*field_name_for(base, attribute, :path),
|
|
**field_options(attribute, metadata, required: (metadata.required && !metadata.path?)),
|
|
class: "custom-file-input #{invalid(post, attribute)}",
|
|
accept: 'image/*', data: { preview: "#{attribute}-preview" })
|
|
= label_tag "#{base}_#{attribute}_path",
|
|
post_label_t(attribute, :path, post: post), class: 'custom-file-label'
|
|
= render 'posts/attribute_feedback',
|
|
post: post, attribute: [attribute, :path], metadata: metadata
|
|
|
|
.form-group
|
|
= label_tag "#{base}_#{attribute}_description",
|
|
post_label_t(attribute, :description, post: post, required: false)
|
|
= text_field(*field_name_for(base, attribute, :description),
|
|
value: metadata.value['description'],
|
|
dir: dir, lang: locale,
|
|
**field_options(attribute, metadata, required: false))
|
|
= render 'posts/attribute_feedback',
|
|
post: post, attribute: [attribute, :description], metadata: metadata
|
|
|