Sha256: 3cb7d3de282e2b54f2817bb4cab78c477d90dfa57a44f66e8f69b6969cbab074
Contents?: true
Size: 1.16 KB
Versions: 2
Compression:
Stored size: 1.16 KB
Contents
module ActiveAdminAddons module NumberHelper class << self NUMBER_TYPES = { currency: :number_to_currency, human: :number_to_human, human_size: :number_to_human_size, percentage: :number_to_percentage, phone: :number_to_phone, delimiter: :number_with_delimiter, precision: :number_with_precision } def label(context, model, attribute, options) options[:as] = options.fetch(:as, :delimiter) if !NUMBER_TYPES.keys.include?(options[:as]) raise "Invalid number type. Options are: #{NUMBER_TYPES.keys.to_s}" end number = model.send(attribute) context.send(NUMBER_TYPES[options[:as]], number, options) end end end module ::ActiveAdmin module Views class TableFor def number_column(attribute, options = {}) column(attribute) { |model| NumberHelper.label(self, model, attribute, options) } end end class AttributesTable def number_row(attribute, options = {}) row(attribute) { |model| NumberHelper.label(self, model, attribute, options) } end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
activeadmin_addons-0.2.1 | lib/activeadmin_addons/addons/number.rb |
activeadmin_addons-0.2.0 | lib/activeadmin_addons/addons/number.rb |