class RailsAdminGlobalizeField::GlobalizeTabs

Public Instance Methods

activate_tab(tabs) click to toggle source
# File lib/rails_admin_globalize_field/globalize_tabs.rb, line 44
def activate_tab(tabs)
  opened = tabs.find(&:invalid?) || tabs.first
  opened&.active!
end
available_locales() click to toggle source
# File lib/rails_admin_globalize_field/globalize_tabs.rb, line 23
def available_locales
  I18n.available_locales
end
method_name() click to toggle source
# File lib/rails_admin_globalize_field/globalize_tabs.rb, line 19
def method_name
  "#{super}_attributes".to_sym
end
submit_action?() click to toggle source

Hack to distinguish between REST new/edit and create/update actions. Taken from rails_admin/configs/new.rb

# File lib/rails_admin_globalize_field/globalize_tabs.rb, line 40
def submit_action?
  !bindings[:controller].request.get?
end
tabs() click to toggle source
# File lib/rails_admin_globalize_field/globalize_tabs.rb, line 27
def tabs
  tabs =
    available_locales.map do |locale|
      translation = bindings[:object].translation_for(locale, build_if_missing)
      RailsAdminGlobalizeField::Tab.new(locale, translation, validate: submit_action?) if translation
    end.compact

  activate_tab(tabs)
  tabs
end