작업의 시작일과 종료일을 타임라인 스케일의 가장 가까운 날짜에 맞춰 조정합니다.
task | Task | 작업 객체 |
//부모 작업과 함께 자식 작업을 드래그할 때
gantt.attachEvent("onTaskDrag", function(id, mode, task, original){
var modes = gantt.config.drag_mode;
if(mode == modes.move){
var diff = task.start_date - original.start_date;
gantt.eachTask(function(child){
child.start_date = new Date(+child.start_date + diff);
child.end_date = new Date(+child.end_date + diff);
gantt.refreshTask(child.id, true);
},id );
}
return true;
});
//자식 항목의 위치를 스케일에 맞춰 반올림
gantt.attachEvent("onAfterTaskDrag", function(id, mode, e){
var modes = gantt.config.drag_mode;
if(mode == modes.move ){
gantt.eachTask(function(child){
gantt.roundTaskDates(child); gantt.refreshTask(child.id, true);
},id );
}
});