loadganttchart = { load_ganttchart(tasks, elem, popuphtml_ins) { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["libs/frappe-gantt/js/frappe-gantt.min.js"], function () { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadCssFiles(["libs/frappe-gantt/css/frappe-gantt.min.css", "libs/frappe-gantt/css/frappe-gantt-custom.css", "libs/frappe-gantt/css/frappe-gantt.css"], function () { let html = `
`; $(elem).append(html); let ganttChart = eval(`new Gantt("#gantt", tasks, { on_click: function (task) { //alert(task); }, on_date_change: function(task, start, end) { //alert(task + "," + start + "," + end); }, on_progress_change: function(task, progress) { //alert(task + "," + progress); }, on_view_change: function(mode) { //alert(mode); }, custom_popup_html: function(task) { //return Bizgaze.Apps.Transact.Controls.WorkOrderItems.Instance().getPopUpHtml(task); if(popuphtml_ins == "") { return loadganttchart.getpopuphtml(task); } else { return eval(popuphtml_ins); } } } )`); $(".chart-controls #day-btn").on("click", () => { ganttChart.change_view_mode("Day"); $(".TimeScale_Cls").find("button").removeClass("bg-primary"); $(".TimeScale_Cls").find("#day-btn").addClass("bg-primary"); }); $(".chart-controls #week-btn").on("click", () => { ganttChart.change_view_mode("Week"); $(".TimeScale_Cls").find("button").removeClass("bg-primary"); $(".TimeScale_Cls").find("#week-btn").addClass("bg-primary"); }); $(".chart-controls #month-btn").on("click", () => { ganttChart.change_view_mode("Month"); $(".TimeScale_Cls").find("button").removeClass("bg-primary"); $(".TimeScale_Cls").find("#month-btn").addClass("bg-primary"); }); }); }); }, getpopuphtml(task) { return `
${task.name}

Task Started on: ${task._start.getDate()}

Expected to finish by ${task._end.getDate()}

${task.progress}% completed!

`; } }