blob: e8d661cbe5de4388fd87279dda595993fe4c8432 [file] [log] [blame]
trendBox = (icon, count, title, desc) ->
icons = {
comment: 'fa-comments-o',
down: 'fa-sort-amount-desc',
up: 'fa-sort-amount-asc',
check: 'fa-check-square-o',
caret: 'fa-caret-square-o-right',
spin: 'fa-spin fa-cog'
}
div = document.createElement('div')
div.setAttribute("class", "animated flipInY col-lg-3 col-md-3 col-sm-6 col-xs-12")
cdiv = document.createElement('div')
cdiv.setAttribute("class", "tile-stats")
cdiv.style.width = "100%"
idiv = document.createElement('div')
idiv.setAttribute("class", "icon")
i = document.createElement('i')
i.setAttribute("class", "fa " + (icons[icon] || 'fa-comments-o'))
idiv.appendChild(i)
cdiv.appendChild(idiv)
# Count
codiv = document.createElement('div')
codiv.setAttribute("class", "count")
codiv.appendChild(document.createTextNode(count))
cdiv.appendChild(codiv)
# Title
h3 = document.createElement('h4')
h3.appendChild(document.createTextNode(title))
cdiv.appendChild(h3)
# Description
p = document.createElement('p')
p.appendChild(document.createTextNode(desc))
cdiv.appendChild(p)
div.appendChild(cdiv)
return div
trend = (json, state) ->
console.log(state.widget.args.source)
if json.trends # api 2 version
wipe = true
for key, data of json.trends
# Lines changed
linediff = ""
icon = 'up'
if data.before > 0 and data.after > 0
diff = (data.after - data.before) / (data.before || 1)
if diff >= 0
linediff = "Up " + Math.floor(diff*100) + "% since last period"
else
linediff = "Down " + Math.floor(diff*100) + "% since last period"
icon = 'check'
tb = trendBox(icon, data.after.pretty(), data.title, linediff)
state.widget.inject(tb, wipe)
wipe = false