var Marionette = require('backbone.marionette');
var tpl = require('./chart.hbs');
var BarChart = require('./barChart');
var PieChart = require('./pieChart');
var $ = require('jquery');
var chartToggleState = true;
/**
* @version 1.0.0
* @description Footer View
* @module views/layout/footer/footer
* @link {http://marionettejs.com/}
*/
module.exports = Marionette.ItemView.extend({
/** template */
template: tpl,
/**
* @desc UI bindings create cached attributes that
* point to jQuery selected objects
*/
ui: {
button: '#format'
},
/** events */
events: {
'click @ui.button': 'clickedButton'
},
clickedButton: function() {
chartToggleState = !chartToggleState;
var active = this.collection.getActive().length;
var total = this.collection.length;
var completedCount = total - active;
if (chartToggleState) {
PieChart(
total,
active,
completedCount
);
} else {
BarChart(
total,
active,
completedCount
);
}
},
/** collectionEvents */
collectionEvents: {
'all': 'render'
},
/**
* @desc use onRender only for update after
* first render / show
* @func onRender
*/
onRender: function() {
var active = this.collection.getActive().length;
var total = this.collection.length;
var completedCount = total - active;
PieChart(
total,
active,
completedCount
);
}
});