Class: Geckoboard

Inherits:
Object
  • Object
show all
Defined in:
lib/geckoboard.rb,
lib/geckoboard/version.rb

Constant Summary collapse

VERSION =
"0.0.8"

Class Method Summary collapse

Class Method Details

.comparison(first, second) ⇒ Object



31
32
33
34
35
36
# File 'lib/geckoboard.rb', line 31

def self.comparison(first, second)
  widget item: [
    gecko_item('', first),
    gecko_item('', second)
  ]
end

.funnel(funnel_items, other_attributes = {}) ⇒ Object



58
59
60
# File 'lib/geckoboard.rb', line 58

def self.funnel(funnel_items, other_attributes = {})
  widget({item: funnel_items}.merge(other_attributes))
end

.funnel_item(label, value) ⇒ Object



62
63
64
# File 'lib/geckoboard.rb', line 62

def self.funnel_item(label, value)
  gecko_item(nil, value, { label: label })
end

.geck_o_meter(value, max, min) ⇒ Object



54
55
56
# File 'lib/geckoboard.rb', line 54

def self.geck_o_meter(value, max, min)
  widget item: value, max: max, min: min
end

.gecko_item(text, value, other_attributes = {}) ⇒ Object



6
7
8
9
10
# File 'lib/geckoboard.rb', line 6

def self.gecko_item(text, value, other_attributes = {})
  { text: text, value: value }.
    merge(other_attributes).
    reject { |_, attribute_value| attribute_value.nil? }
end

.list_item(text, description, other_attributes = {}) ⇒ Object



38
39
40
# File 'lib/geckoboard.rb', line 38

def self.list_item text, description, other_attributes = {}
  other_attributes.merge({title: { text: text }, description: description.to_s})
end

.number(text, value) ⇒ Object



19
20
21
22
23
# File 'lib/geckoboard.rb', line 19

def self.number(text, value)
  widget item: [
    gecko_item(text, value)
  ]
end

.pie(pie_items) ⇒ Object



46
47
48
# File 'lib/geckoboard.rb', line 46

def self.pie pie_items
  widget item: pie_items
end

.pie_item(value, label, color = nil) ⇒ Object



50
51
52
# File 'lib/geckoboard.rb', line 50

def self.pie_item(value, label, color = nil)
  gecko_item(nil, value, { label: label, color: color })
end

.rag(red, amber, green) ⇒ Object



42
43
44
# File 'lib/geckoboard.rb', line 42

def self.rag(red, amber, green)
  widget item: [red, amber, green]
end

.text(text_value, other_attributes = {}) ⇒ Object



25
26
27
28
29
# File 'lib/geckoboard.rb', line 25

def self.text(text_value, other_attributes = {})
  widget item: [
    gecko_item(text_value, nil, other_attributes)
  ]
end

.trendline(text, value, trendline, gecko_item_attributes = {}) ⇒ Object



12
13
14
15
16
17
# File 'lib/geckoboard.rb', line 12

def self.trendline(text, value, trendline, gecko_item_attributes = {})
  widget item: [
    gecko_item(text, value, gecko_item_attributes),
    trendline
  ]
end