5
0
Fork 0
mirror of https://0xacab.org/sutty/sutty synced 2024-11-24 12:06:22 +00:00
panel/app/models/metadata_predefined_array.rb
f d54c916efc
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
refactor: usar la intersección de las arrays para sanitizar
2023-10-06 17:02:50 -03:00

28 lines
695 B
Ruby

# frozen_string_literal: true
# Una lista de valores predefinidos
class MetadataPredefinedArray < MetadataArray
# Genera una lista de valores para usar en options_for_select
#
# @todo Unificar la definición de valores por defecto con respecto a
# otros campos (como MetadataPredefinedValue), por ahora mantenemos
# por retrocompatibilidad.
# @return [Hash]
def values
@values ||= layout.dig(:metadata, name, 'values')&.to_h do |k, v|
[v[I18n.locale.to_s], k]
end
end
private
# Solo permite guardar los valores predefinidos
#
# @param :value [Array]
# @return [Array]
def sanitize(value)
value = super(value)
value & values.values
end
end