Sha256: c904faaeb6ac313711825df42cee6f115d2b1d253389555ca485a26303e0184f

Contents?: true

Size: 918 Bytes

Versions: 1

Compression:

Stored size: 918 Bytes

Contents

module Iquest
  module SimpleTable
    module AttributeDescription

      def human_attribute_description(attribute, options = {})
        parts     = attribute.to_s.split(".")
        attribute = parts.pop
        namespace = parts.join("/") unless parts.empty?
        attributes_scope = "#{self.i18n_scope}.descriptions"

        if namespace
          defaults = lookup_ancestors.map do |klass|
            :"#{attributes_scope}.#{klass.model_name.i18n_key}/#{namespace}.#{attribute}"
          end
          defaults << :"#{attributes_scope}.#{namespace}.#{attribute}"
        else
          defaults = lookup_ancestors.map do |klass|
            :"#{attributes_scope}.#{klass.model_name.i18n_key}.#{attribute}"
          end
        end

        defaults << options.delete(:default) if options[:default]

        options[:default] = ''
        I18n.translate(defaults.shift, options)
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
iquest-simple_table-0.3.6 lib/iquest/simple_table/attribute_description.rb