class Shikigami::BootstrapButton

Public Class Methods

new(action, options = {}) click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 6
def initialize(action, options = {})
  @action = action.to_s
  @options = options
end

Public Instance Methods

options() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 11
def options
  {
    class: default_class,
    method: @options[:method],
    data: confirm_message,
  }
end

Private Instance Methods

confirm_message() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 29
def confirm_message
  { confirm: default_message } if @options[:confirm]
end
default_class() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 39
def default_class
  "btn btn-#{size} btn-#{style}"
end
default_message() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 33
def default_message
  I18n.t("confirm.#{@action}", raise: true)
rescue
  "Are you sure?"
end
default_style() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 43
def default_style
  case @action
  when "show" then "info"
  when "edit" then "warning"
  when "destroy" then "danger"
  else "primary"
  end
end
size() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 21
def size
  @options[:size] || "xs"
end
style() click to toggle source
# File lib/shikigami/bootstrap_button.rb, line 25
def style
  @options[:style] || default_style
end