66 lines
1.5 KiB
JavaScript
66 lines
1.5 KiB
JavaScript
window.onload = function() {
|
|
var required = [], paid = [];
|
|
var today = new Date(),
|
|
year = 1900 + today.getYear(),
|
|
month = today.getMonth();
|
|
for(i = 0; i < 12; ++i) {
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open("GET", 'https://kasownik.hackerspace.pl/api/month/' + year + '/' + month, false);
|
|
xhr.send();
|
|
var res = JSON.parse(xhr.response),
|
|
date = new Date();
|
|
date.setYear(year);
|
|
date.setMonth(month);
|
|
required.unshift({ x: date.getTime() / 1000, y: res.required });
|
|
paid.unshift({ x: date.getTime() / 1000, y: res.paid });
|
|
month -= 1;
|
|
if(month == 0) {
|
|
month = 12;
|
|
year -= 1;
|
|
}
|
|
}
|
|
console.log(required, paid);
|
|
var palette = new Rickshaw.Color.Palette( { scheme: 'colorwheel' } );
|
|
var graph = new Rickshaw.Graph({
|
|
element: document.getElementById("plot"),
|
|
width: 800,
|
|
height: 600,
|
|
renderer: 'line',
|
|
stroke: true,
|
|
series: [
|
|
{
|
|
color: palette.color(),
|
|
data: required,
|
|
name: 'Required',
|
|
},
|
|
{
|
|
color: palette.color(),
|
|
data: paid,
|
|
name: 'Paid',
|
|
}
|
|
]
|
|
});
|
|
graph.render();
|
|
var yAxis = new Rickshaw.Graph.Axis.Y({
|
|
graph: graph,
|
|
});
|
|
yAxis.render();
|
|
var xAxis = new Rickshaw.Graph.Axis.Time({
|
|
graph: graph,
|
|
});
|
|
xAxis.render();
|
|
var legend = new Rickshaw.Graph.Legend({
|
|
element: document.getElementById("legend"),
|
|
graph: graph,
|
|
});
|
|
|
|
var hoverDetail = new Rickshaw.Graph.HoverDetail( {
|
|
graph: graph,
|
|
xFormatter: function(x) {
|
|
var date = new Date(x * 1000);
|
|
return (1900 + date.getYear()) + '/' + date.getMonth();
|
|
}
|
|
});
|
|
}
|
|
|