summaryrefslogtreecommitdiff
path: root/widgets/number/number.coffee
diff options
context:
space:
mode:
authorvarac <varacanero@zeromail.org>2016-07-13 20:07:09 +0200
committerVarac <varac@leap.se>2017-10-16 13:20:14 +0200
commit11d443664b7a785b42cbbd5b96347bafa5ad273a (patch)
tree9a27d4c1fe58e3375ae1868cf7a29da1af106265 /widgets/number/number.coffee
parentfa7cf47e28a4ac1636e947c269ed83abe49a1491 (diff)
initial commit, import from pixelated_dashboard
Diffstat (limited to 'widgets/number/number.coffee')
-rw-r--r--widgets/number/number.coffee24
1 files changed, 24 insertions, 0 deletions
diff --git a/widgets/number/number.coffee b/widgets/number/number.coffee
new file mode 100644
index 0000000..645ee7f
--- /dev/null
+++ b/widgets/number/number.coffee
@@ -0,0 +1,24 @@
+class Dashing.Number extends Dashing.Widget
+ @accessor 'current', Dashing.AnimatedValue
+
+ @accessor 'difference', ->
+ if @get('last')
+ last = parseInt(@get('last'))
+ current = parseInt(@get('current'))
+ if last != 0
+ diff = Math.abs(Math.round((current - last) / last * 100))
+ "#{diff}%"
+ else
+ ""
+
+ @accessor 'arrow', ->
+ if @get('last')
+ if parseInt(@get('current')) > parseInt(@get('last')) then 'icon-arrow-up' else 'icon-arrow-down'
+
+ onData: (data) ->
+ if data.status
+ # clear existing "status-*" classes
+ $(@get('node')).attr 'class', (i,c) ->
+ c.replace /\bstatus-\S+/g, ''
+ # add new class
+ $(@get('node')).addClass "status-#{data.status}"