diff options
author | Daniel Beauchamp <daniel.beauchamp@shopify.com> | 2012-08-02 13:38:19 -0400 |
---|---|---|
committer | Daniel Beauchamp <daniel.beauchamp@shopify.com> | 2012-08-02 13:38:19 -0400 |
commit | cdd8ff258582f5eba7e3941a5a18007e7aabbbfa (patch) | |
tree | 259644bbbda24070efc5685445e6b26187a70b20 /templates/project/widgets/number | |
parent | 1dcf732b801f9fa513901fda27388a36eddb44ab (diff) |
Better generators, sample widgets, and more!
Diffstat (limited to 'templates/project/widgets/number')
-rw-r--r-- | templates/project/widgets/number/number.coffee | 29 | ||||
-rw-r--r-- | templates/project/widgets/number/number.html | 9 | ||||
-rw-r--r-- | templates/project/widgets/number/number.scss | 35 |
3 files changed, 73 insertions, 0 deletions
diff --git a/templates/project/widgets/number/number.coffee b/templates/project/widgets/number/number.coffee new file mode 100644 index 0000000..aa7cf8b --- /dev/null +++ b/templates/project/widgets/number/number.coffee @@ -0,0 +1,29 @@ +class AllTheThings.Number extends AllTheThings.Widget + source: 'number' + + @accessor 'current', Batman.Property.EasingSetter + + ready: -> + + @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}%" + + @accessor 'arrow', -> + if @get('last') + if parseInt(@get('current')) > parseInt(@get('last')) then 'icon-arrow-up' else 'icon-arrow-down' + + @accessor 'statusStyle', -> + "status-#{@get('status')}" + + @accessor 'needsAttention', -> + @get('status') == 'warning' || @get('status') == 'danger' + + onData: (data) -> + super + if data.status + $(@get('node')).addClass("status-#{data.status}")
\ No newline at end of file diff --git a/templates/project/widgets/number/number.html b/templates/project/widgets/number/number.html new file mode 100644 index 0000000..6e9a03e --- /dev/null +++ b/templates/project/widgets/number/number.html @@ -0,0 +1,9 @@ +<h1 class="title"><i data-showif="needsAttention" class="icon-warning-sign"></i><span data-bind="title"></span></h1> + +<h2 class="value" data-bind="current | prettyNumber"></h2> + +<p class="change-rate"> + <i data-bind-class="arrow"></i><span data-bind="difference">50%</span> +</p> + +<p class="text-moreinfo" data-bind="moreinfo">2012-07-26 10:59AM</p>
\ No newline at end of file diff --git a/templates/project/widgets/number/number.scss b/templates/project/widgets/number/number.scss new file mode 100644 index 0000000..6ae7f95 --- /dev/null +++ b/templates/project/widgets/number/number.scss @@ -0,0 +1,35 @@ +// ---------------------------------------------------------------------------- +// Sass declarations +// ---------------------------------------------------------------------------- +$widget-number_background-color: #00b1a4; +$widget-number_value-color: #fff; + +$widget-number_title-color: lighten($widget-number_background-color, 45%); +$widget-number_moreinfo-color: lighten($widget-number_background-color, 45%); + +// ---------------------------------------------------------------------------- +// Widget-number styles +// ---------------------------------------------------------------------------- +.widget-number { + + background-color: $widget-number_background-color; + + .title { + color: $widget-number_title-color; + } + + .value { + color: $widget-number_value-color; + } + + .change-rate { + font-weight: 300; + font-size: 30px; + color: $widget-number_value-color; + } + + .text-moreinfo { + color: $widget-number_moreinfo-color; + } + +}
\ No newline at end of file |