end_date

устанавливает конечное значение временной шкалы

Date|undefined end_date;

Example

gantt.config.start_date = new Date(2018, 08, 10);
gantt.config.end_date = new Date(2018, 08, 20);
 
gantt.init("gantt_here");

Details

Чтобы применить опцию end_date, необходимо использовать её в паре с опцией start_date.

  • Если указаны обе опции start_date и end_date, и вы создаете задачу, которая выходит за пределы диапазона, задача не будет отображаться в графике.
  • Необязательные параметры метода init могут быть использованы в качестве начальных значений для конфигураций start_date и end_date.
  • Конфигурации start_date и end_date перезаписывают fit_tasks. Если вы хотите использовать эти настройки вместе, вам нужно будет управлять временной шкалой из кода.

В этом случае мы можем расширить диапазон:

gantt.attachEvent("onLightboxSave", function(id, task, is_new){
 const taskStart = task.start_date;
 const taskEnd = task.end_date;
 const scaleStart = gantt.config.start_date;
 const scaleEnd = gantt.config.end_date;
 
 // если задача выходит за пределы диапазона
 if(scaleStart > taskEnd || scaleEnd < taskStart ){
  // обновляем диапазон временной шкалы
  gantt.config.end_date=new Date(Math.max(taskEnd.valueOf(), scaleEnd.valueOf()));
  gantt.config.start_date=new Date(Math.min(taskStart.valueOf(),scaleStart.valueOf()));
  gantt.render();
 }    
 return true;
});

Или добавьте валидацию в элемент управления lightbox:

gantt.attachEvent("onLightboxSave", function(id, task, is_new){
  const taskStart = task.start_date;
  const taskEnd = task.end_date;
  const scaleStart = gantt.config.start_date;
  const scaleEnd = gantt.config.end_date;
 
  // проверяем, выходит ли задача за пределы диапазона
  if(scaleStart > taskEnd || scaleEnd < taskStart ){
    gantt.message({
      type:"warning", 
      text:"Предупреждение! Задача выходит за пределы диапазона дат!",
      expire:5000
    });
    return false;
  } 
  return true;
});
See also
К началу