1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/kanboard_ynh.git synced 2024-09-03 19:36:17 +02:00
kanboard_ynh/sources/assets/js/src/Router.js
2015-10-14 15:56:24 +02:00

36 lines
1.2 KiB
JavaScript

function Router() {
this.routes = {};
}
Router.prototype.addRoute = function(id, controller) {
this.routes[id] = controller;
};
Router.prototype.dispatch = function(app) {
for (var id in this.routes) {
if (document.getElementById(id)) {
var controller = Object.create(this.routes[id].prototype);
this.routes[id].apply(controller, [app]);
controller.execute();
break;
}
}
};
jQuery(document).ready(function() {
var app = new App();
var router = new Router();
router.addRoute('board', Board);
router.addRoute('calendar', Calendar);
router.addRoute('screenshot-zone', Screenshot);
router.addRoute('analytic-task-repartition', TaskRepartitionChart);
router.addRoute('analytic-user-repartition', UserRepartitionChart);
router.addRoute('analytic-cfd', CumulativeFlowDiagram);
router.addRoute('analytic-burndown', BurndownChart);
router.addRoute('analytic-avg-time-column', AvgTimeColumnChart);
router.addRoute('analytic-task-time-column', TaskTimeColumnChart);
router.addRoute('analytic-lead-cycle-time', LeadCycleTimeChart);
router.addRoute('gantt-chart', Gantt);
router.dispatch(app);
app.listen();
});