Class: Udongo::Redirects::StatusBadge

Inherits:
Object
  • Object
show all
Defined in:
lib/udongo/redirects/status_badge.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(view, redirect) ⇒ StatusBadge

TODO: find out why Module.takes does not override in an engine env.



6
7
8
9
# File 'lib/udongo/redirects/status_badge.rb', line 6

def initialize(view, redirect)
  @view = view
  @redirect = redirect
end

Instance Attribute Details

#viewObject (readonly)

Returns the value of attribute view.



3
4
5
# File 'lib/udongo/redirects/status_badge.rb', line 3

def view
  @view
end

Instance Method Details

#css_classObject



11
12
13
14
15
# File 'lib/udongo/redirects/status_badge.rb', line 11

def css_class
  return 'success' if @redirect.working?
  return 'info' if @redirect.working.nil?
  'danger'
end

#html(attributes = {}) ⇒ Object



17
18
19
20
# File 'lib/udongo/redirects/status_badge.rb', line 17

def html(attributes = {})
  attributes.reverse_merge!(class: "badge badge-#{css_class}")
  @view.(:span, @redirect.status_code, attributes)
end

#iconObject



22
23
24
25
# File 'lib/udongo/redirects/status_badge.rb', line 22

def icon
  return '' unless icon_identifier
  @view.icon(icon_identifier)
end

#icon_identifierObject



27
28
29
30
31
# File 'lib/udongo/redirects/status_badge.rb', line 27

def icon_identifier
  return :question_circle if @redirect.working.nil?
  return :check_circle if @redirect.working?
  :times_circle
end