class ActiveAdmin::Views::StatusTag
Build a StatusTag
Public Instance Methods
build(*args)
click to toggle source
@overload status_tag(status, type = nil, options = {})
@param [String] status the status to display. One of the span classes will be an underscored version of the status. @param [Symbol] type type of status. Will become a class of the span. ActiveAdmin provide style for :ok, :warning and :error. @param [Hash] options @option options [String] :class to override the default class @option options [String] :id to override the default id @option options [String] :label to override the default label @return [ActiveAdmin::Views::StatusTag]
@example
status_tag('In Progress') # => <span class='status_tag in_progress'>In Progress</span>
@example
status_tag('active', :ok) # => <span class='status_tag active ok'>Active</span>
@example
status_tag('active', :ok, class: 'important', id: 'status_123', label: 'on') # => <span class='status_tag active ok important' id='status_123'>on</span>
Calls superclass method
# File lib/active_admin/views/components/status_tag.rb, line 36 def build(*args) options = args.extract_options! status = args[0] type = args[1] label = options.delete(:label) classes = options.delete(:class) status = convert_to_boolean_status(status) if status content = label || if s = status.to_s and s.present? I18n.t "active_admin.status_tag.#{s.downcase}", default: s.titleize end end super(content, options) add_class(status_to_class(status)) if status add_class(type.to_s) if type add_class(classes) if classes end
default_class_name()
click to toggle source
# File lib/active_admin/views/components/status_tag.rb, line 11 def default_class_name 'status_tag' end
tag_name()
click to toggle source
# File lib/active_admin/views/components/status_tag.rb, line 7 def tag_name 'span' end
Protected Instance Methods
convert_to_boolean_status(status)
click to toggle source
# File lib/active_admin/views/components/status_tag.rb, line 59 def convert_to_boolean_status(status) case status when true, 'true' 'Yes' when false, 'false', nil 'No' else status end end
status_to_class(status)
click to toggle source
# File lib/active_admin/views/components/status_tag.rb, line 70 def status_to_class(status) case status when String, Symbol status.to_s.titleize.gsub(/\s/, '').underscore else '' end end