Convert user distribution chart to Vue.js component
This commit is contained in:
4
assets/js/app.min.js
vendored
4
assets/js/app.min.js
vendored
File diff suppressed because one or more lines are too long
18
assets/js/components/chart-project-user-distribution.js
Normal file
18
assets/js/components/chart-project-user-distribution.js
Normal file
@@ -0,0 +1,18 @@
|
||||
Vue.component('chart-project-user-distribution', {
|
||||
props: ['metrics'],
|
||||
template: '<div id="chart"></div>',
|
||||
ready: function () {
|
||||
var columns = [];
|
||||
|
||||
for (var i = 0; i < this.metrics.length; i++) {
|
||||
columns.push([this.metrics[i].user, this.metrics[i].nb_tasks]);
|
||||
}
|
||||
|
||||
c3.generate({
|
||||
data: {
|
||||
columns: columns,
|
||||
type : 'donut'
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
@@ -1,25 +0,0 @@
|
||||
Kanboard.UserRepartitionChart = function(app) {
|
||||
this.app = app;
|
||||
};
|
||||
|
||||
Kanboard.UserRepartitionChart.prototype.execute = function() {
|
||||
if (this.app.hasId("analytic-user-repartition")) {
|
||||
this.show();
|
||||
}
|
||||
};
|
||||
|
||||
Kanboard.UserRepartitionChart.prototype.show = function() {
|
||||
var metrics = $("#chart").data("metrics");
|
||||
var columns = [];
|
||||
|
||||
for (var i = 0; i < metrics.length; i++) {
|
||||
columns.push([metrics[i].user, metrics[i].nb_tasks]);
|
||||
}
|
||||
|
||||
c3.generate({
|
||||
data: {
|
||||
columns: columns,
|
||||
type : 'donut'
|
||||
}
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user