sutty/app/views/posts/attributes/_locales.haml

40 lines
1.3 KiB
Text
Raw Normal View History

2020-05-23 16:52:58 +00:00
-#
Crea un input-map para cada idioma por separado. Podríamos hacer uno
solo que tenga todos los idiomas pero puede ser una interfaz confusa.
TODO: Esto permite seleccionar más de una traducción por idioma...
- site.locales.each do |locale|
-# Ignorar el idioma actual
- next if post.lang.value == locale
- locale_t = t("locales.#{locale}.name")
2020-05-23 16:52:58 +00:00
- values = metadata.value.select do |x|
- metadata.values[locale].values.include? x
2020-05-23 16:52:58 +00:00
.form-group
= label_tag "#{base}_#{attribute}_#{locale}", locale_t
2020-05-23 16:52:58 +00:00
.mapable{ dir: t("locales.#{locale}.dir"), lang: locale,
data: { values: values.to_json,
'default-values': metadata.values[locale].to_json,
name: "#{base}[#{attribute}][]",
2020-05-23 16:52:58 +00:00
list: id_for_datalist(attribute, locale),
button: t('posts.attributes.add'),
remove: 'false', legend: locale_t,
2020-05-23 16:52:58 +00:00
described: id_for_help(attribute, locale) } }
= text_field(*field_name_for(base, attribute, '[]'),
2020-05-23 16:52:58 +00:00
value: values.join(', '),
dir: t("locales.#{locale}.dir"), lang: locale,
2020-05-23 16:52:58 +00:00
**field_options(attribute, metadata))
= render 'posts/attribute_feedback',
post: post,
attribute: [attribute, 'mapable'].flatten,
metadata: metadata
%datalist{ id: id_for_datalist(attribute, locale) }
- metadata.values[locale].keys.each do |value|
2020-05-23 16:52:58 +00:00
%option{ value: value }