Sha256: 68fda7f54a357273458293f4c3eb4858f24575d6366f93da7e3079383d32984e
Contents?: true
Size: 1.19 KB
Versions: 1
Compression:
Stored size: 1.19 KB
Contents
module ActiveAdminAddons class BoolBuilder < CustomBuilder DEFAULT_BOOLEAN_TRUE = '✔' DEFAULT_BOOLEAN_FALSE = '✗' def render if data i18n_lookup('true_value', DEFAULT_BOOLEAN_TRUE) else i18n_lookup('false_value', DEFAULT_BOOLEAN_FALSE) end end private def i18n_lookup(key, last_default) model_name = model.class.model_name.i18n_key scope = "activeadmin.addons.boolean" value = I18n.t("models.#{model_name}.#{attribute}.#{key}", default: '', scope: scope) value = I18n.t("models.#{model_name}.#{key}", default: '', scope: scope) if value.empty? value = I18n.t("default.#{key}", default: last_default, scope: scope) if value.empty? value.html_safe end end module BoolValues module ::ActiveAdmin module Views class TableFor def bool_column(*args, &block) column(*args) { |model| BoolBuilder.render(self, model, *args, &block) } end end class AttributesTable def bool_row(*args, &block) row(*args) { |model| BoolBuilder.render(self, model, *args, &block) } end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activeadmin_addons-0.7.0 | lib/activeadmin_addons/addons/bool_values.rb |