Lines Matching refs:gantt

5988 module.exports = function(gantt){
5990 gantt._cached_functions = {
6091 setup: function(gantt){ argument
6103 if(gantt.config.highlight_critical_path){
6110 this.wrap_methods(override_gantt, gantt);
6113 update_if_changed: function(gantt){ argument
6114 var changed = (this.critical_path_mode != gantt.config.highlight_critical_path ||
6115 this.mode !== gantt.config.optimize_render);
6117 this.critical_path_mode = gantt.config.highlight_critical_path;
6118 this.mode = gantt.config.optimize_render;
6119 this.setup(gantt);
6125 gantt._cached_functions.update_if_changed(gantt);
6126 if(!gantt._cached_functions.active){
6127 gantt._cached_functions.activate();
6131 gantt.attachEvent("onBeforeGanttRender", activate);
6132 gantt.attachEvent("onBeforeDataRender", activate);
6133 gantt.attachEvent("onBeforeSmartRender", function(){
6136 gantt.attachEvent("onBeforeParse", activate);
6137 gantt.attachEvent("onDataRender", function(){
6138 gantt._cached_functions.deactivate();
6141 gantt.attachEvent("onSmartRender", function(){
6145 gantt._cached_functions.deactivate();
6149 gantt.attachEvent("onBeforeGanttReady", function(){
6150 gantt._cached_functions.update_if_changed(gantt);
6225 module.exports = function(gantt) {
6257 if (obj !== -1) gantt.callEvent("onLoadXMLError",["Incorrect XML", arguments[1], obj]);
6331 return new gantt.Promise(function(resolve, reject) {
6339 if (!gantt.callEvent("onAjaxError", [t])) return;
6401 module.exports = function(gantt){
6404 if(gantt.config.show_errors && gantt.callEvent("onError",[message]) !== false) {
6405 gantt.message({type: "error", text: message, expire: -1});
6631 module.exports = function(gantt) {
6634 var locale = gantt.locale;
6660 if (gantt.config.start_on_monday) {
6821 …return dateToStr(date, dateHelper.to_fixed, gantt.locale, dateHelper.getISOWeek, dateHelper.getWee…
6874 return strToDate(dateString, gantt.locale);
6878 return gantt.date._getWeekNumber(ndate, true);
6897 return gantt.date._getWeekNumber(ndate, gantt.config.start_on_monday);
6900 return gantt.date.getISOWeek(ndate);
6912 format = gantt.templates.parse_date;
6913 …if (gantt.defined(gantt.templates.xml_date) && gantt.templates.parse_date !== gantt.templates.xml_…
6914 format = gantt.templates.xml_date;
6917 …format = gantt.defined(gantt.templates[format]) ? gantt.templates[format] : gantt.date.str_to_date…
6920 …format = gantt.templates.xml_date !== gantt.templates.parse_date ? gantt.templates.xml_date : gant…
6948 module.exports = function(gantt){
6972 gantt.attachEvent("onGanttScroll", utils.bind(function (left, top) {
6979 gantt.event(obj, input.down, utils.bind(function (e) {
6986 if (gantt.config.touch) {
6991 }, this), gantt.config.touch_drag);
6998 gantt.event(document.body, input.up, utils.bind(function (e) {
7036 gantt.eventRemove(document.body, inputMethod.move, limited_mousemove);
7037 gantt.eventRemove(document.body, inputMethod.up, mouseup);
7041 gantt.event(document.body, inputMethod.move, limited_mousemove);
7042 gantt.event(document.body, inputMethod.up, mouseup);
7063 if (!gantt.config.touch) {
7094 if (gantt.config.touch) {
7171 gantt._prevent_touch_scroll = true;
7174 if (gantt.config.touch) {
7186 if (gantt.config.touch || this.checkPositionChange(pos)) {
7197 gantt._touch_feedback();
7219 gantt._prevent_touch_scroll = false;
7291 module.exports = function(gantt){
7292 gantt.$inject = function(module){
7310 function LinkFormatterSimple(gantt) { argument
7349 this._gantt = gantt;
7351 LinkFormatterSimple.create = function (settings, gantt) { argument
7353 return new LinkFormatterSimple(gantt);
7519 module.exports = function(gantt) {
7525 var config = gantt.config,
7526 templates = gantt.templates;
7528 if (gantt.config[name] && regTemplates[template_name] != config[name]) {
7530 templates[template_name] = gantt.date.date_to_str(config[name]);
7537 var labels = gantt.locale.labels;
7543 var date = gantt.date;
7547 var c = gantt.config;
7551 initTemplate("date_scale", true, undefined, gantt.config, gantt.templates);
7552 initTemplate("date_grid", true, "grid_date_format", gantt.config, gantt.templates);
7553 initTemplate("task_date", true, undefined, gantt.config, gantt.templates);
7555 gantt.mixin(gantt.templates, {
7576 return gantt.templates.task_date(date);
7610 if (item && gantt.isUnscheduledTask(item) && gantt.config.show_unscheduled) {
7611 return gantt.templates.task_unscheduled_time(item);
7613 return gantt.templates.grid_date_format(date, column);
7618 if (gantt.isUnscheduledTask(ev) && gantt.config.show_unscheduled) {
7619 return gantt.templates.task_unscheduled_time(ev);
7621 return gantt.templates.task_date(start) + " - " + gantt.templates.task_end_date(end);
7634 var from = gantt.getTask(link.source),
7635 to = gantt.getTask(link.target);
7641 from = gantt.getTask(from);
7642 var labels = gantt.locale.labels;
7646 to = gantt.getTask(to);
7655 var allowed = gantt.isLinkAllowed(from, to, from_start, to_start);
7665 …t.text + "<br/><b>Start date:</b> " + gantt.templates.tooltip_date_format(start) + "<br/><b>End da…
7688 module.exports = function(gantt) {
7690 gantt.isUnscheduledTask = function (task) {
7691gantt.assert(task && task instanceof Object, "Invalid argument <b>task</b>="+task+" of gantt.isUns…
7695 gantt._isAllowedUnscheduledTask = function (task) {
7696 return !!(task.unscheduled && gantt.config.show_unscheduled);
7699 gantt._isTaskInTimelineLimits = function(task) {
7704 gantt.isTaskVisible = function (id) {
7717 gantt._getProjectEnd = function() {
7718 if(gantt.config.project_end){
7719 return gantt.config.project_end;
7721 var tasks = gantt.getTaskByTime();
7728 gantt._getProjectStart = function() {
7729 if (gantt.config.project_start) {
7730 return gantt.config.project_start;
7734 if (gantt.config.start_date) {
7735 return gantt.config.start_date;
7737 if (gantt.getState().min_date) {
7738 return gantt.getState().min_date;
7742 var tasks = gantt.getTaskByTime();
7749 gantt._defaultTaskDate = function (item, parent_id) {
7750 var parent = (parent_id && parent_id != gantt.config.root_id) ? gantt.getTask(parent_id) : false,
7753 if(gantt.config.schedule_from_end){
7754 startDate = gantt.calculateEndDate({
7756 duration: - gantt.config.duration_step,
7763 } else if(gantt.config.schedule_from_end) {
7764 startDate = gantt.calculateEndDate({
7765 start_date: gantt._getProjectEnd(),
7766 duration: - gantt.config.duration_step,
7770 var first = gantt.getTaskByIndex(0);
7771 …startDate = first ? (first.start_date ? first.start_date : (first.end_date ? gantt.calculateEndDat…
7773 duration: -gantt.config.duration_step,
7775 }) : null)) : gantt.config.start_date || gantt.getState().min_date;
7777 gantt.assert(startDate, "Invalid dates");
7781 gantt._set_default_task_timing = function (task) {
7782 task.start_date = task.start_date || gantt._defaultTaskDate(task, gantt.getParent(task));
7783 task.duration = task.duration || gantt.config.duration_step;
7784 task.end_date = task.end_date || gantt.calculateEndDate(task);
7787 gantt.createTask = function (item, parent, index) {
7790 if (!gantt.defined(item.id))
7791 item.id = gantt.uid();
7794 item.start_date = gantt._defaultTaskDate(item, parent);
7797 item.text = gantt.locale.labels.new_task;
7815 gantt.$data.tasksStore.addItem(item, index);
7829 gantt._update_flags = function (oldid, newid) {
7831 var store = gantt.$data.tasksStore;
7859 gantt._get_task_timing_mode = function (task, force) {
7890 gantt._init_task_timing = function (task) {
7891 var task_mode = gantt._get_task_timing_mode(task, true);
7924 gantt.isSummaryTask = function (task) {
7925gantt.assert(task && task instanceof Object, "Invalid argument <b>task</b>="+task+" of gantt.isSum…
7927 var mode = gantt._get_task_timing_mode(task);
7933 gantt.resetProjectDates = function (task) {
7941 gantt.getSubtaskDuration = function (task_id) {
7943 root = task_id !== undefined ? task_id : gantt.config.root_id;
7946 if (this.getTaskType(child.type) == gantt.config.types.project || this.isUnscheduledTask(child))
7955 gantt.getSubtaskDates = function (task_id) {
7958 root = task_id !== undefined ? task_id : gantt.config.root_id;
7961 if (this.getTaskType(child.type) == gantt.config.types.project || this.isUnscheduledTask(child))
7976 gantt._assign_project_dates = function (task, from, to) {
8003 gantt._update_parents = function (taskId, silent) {
8017 gantt.resetProjectDates(task);
8035 gantt.roundDate = function (config) {
8036 var scale = gantt.getScale();
8041 unit: scale ? scale.unit : gantt.config.duration_unit,
8042 step: scale ? scale.step : gantt.config.duration_step
8057 colIndex = Math.floor(gantt.columnIndexByDate(date));
8066 upper = gantt.date.add(lower, steps, unit);
8068 colIndex = Math.floor(gantt.columnIndexByDate(date));
8070 upper = gantt.date[unit + "_start"](new Date(scale.min_date));
8072 upper = gantt.date[unit + "_start"](scale.trace_x[colIndex]);// end of time scale
8076 upper = gantt.date[unit + "_start"](gantt.date.add(upper, steps, unit));
8080 upper = gantt._correct_dst_change(upper, tzOffset, upper, unit);
8081 if (gantt.date[unit + '_start'])
8082 upper = gantt.date[unit + '_start'](upper);
8085 lower = gantt.date.add(upper, -1 * steps, unit);
8101 gantt.correctTaskWorkTime = function (task) {
8102 if (gantt.config.work_time && gantt.config.correct_work_time) {
8112 gantt.attachEvent("onBeforeTaskUpdate", function (id, task) {
8113 gantt._init_task_timing(task);
8116 gantt.attachEvent("onBeforeTaskAdd", function (id, task) {
8117 gantt._init_task_timing(task);
8132 module.exports = function(gantt) {
8133 delete gantt.addTaskLayer;
8134 delete gantt.addLinkLayer;
8146 module.exports = function(gantt) {
8148 gantt.getTaskType = function (type) {
8189 var gantt = this; // tslint:disable-line
8191 dp.init(gantt);
8686 DataProcessor.prototype.init = function (gantt) { argument
8690 this.$gantt = gantt;
9129 var gantt = this.$gantt;
9131 if (gantt.isTaskExists(id)) {
9136 if (gantt.isLinkExists(id)) {
9167 function DataProcessorEvents(gantt, dp) { argument
9168 this.$gantt = gantt;
9174 var gantt = this.$gantt;
9182 if (gantt.getUserData(id, "!nativeeditor_status") === "inserted") {
9200 this._dataProcessorHandlers.push(gantt.attachEvent("onAfterTaskAdd", function (id, item) {
9201 if (gantt.isTaskExists(id)) {
9206 … this._dataProcessorHandlers.push(gantt.attachEvent("onAfterTaskUpdate", function (id, item) {
9207 if (gantt.isTaskExists(id)) {
9211 if (gantt._sendTaskOrder) {
9212 gantt._sendTaskOrder(id, item);
9216 … this._dataProcessorHandlers.push(gantt.attachEvent("onBeforeTaskDelete", function (id, item) {
9217 if (!gantt.config.cascade_delete) {
9221 tasks: treeHelper.getSubtreeTasks(gantt, id),
9222 links: treeHelper.getSubtreeLinks(gantt, id)
9226 … this._dataProcessorHandlers.push(gantt.attachEvent("onAfterTaskDelete", function (id, item) {
9233 if (gantt.config.cascade_delete && cascadeDelete[id]) {
9263 … this._dataProcessorHandlers.push(gantt.attachEvent("onAfterLinkUpdate", function (id, item) {
9264 if (gantt.isLinkExists(id)) {
9269 this._dataProcessorHandlers.push(gantt.attachEvent("onAfterLinkAdd", function (id, item) {
9270 if (gantt.isLinkExists(id)) {
9275 … this._dataProcessorHandlers.push(gantt.attachEvent("onAfterLinkDelete", function (id, item) {
9284 this._dataProcessorHandlers.push(gantt.attachEvent("onRowDragEnd", function (id, target) {
9285 gantt._sendTaskOrder(id, gantt.getTask(id));
9289 … this._dataProcessorHandlers.push(gantt.attachEvent("onTaskIdChange", function (oldId, newId) {
9293 var children = gantt.getChildren(newId);
9313 gantt.batchUpdate(function () {
9315 gantt.updateTask(tasks[id].id);
9318 gantt.updateLink(links[id].id);
9324 gantt._dp.setGanttMode("tasks");
9327 gantt._dp.setGanttMode("links");
9344 … this.serverProcessor = url + gantt.ajax.urlSeparator(url) + "gantt_mode=" + pluralizedMode;
9349 var data = upd.data || gantt.xml._xmlNodeToJSON(upd.firstChild);
9351 add: gantt.addTask,
9352 isExist: gantt.isTaskExists
9355 methods.add = gantt.addLink;
9356 methods.isExist = gantt.isLinkExists;
9358 if (methods.isExist.call(gantt, id)) {
9362 methods.add.call(gantt, data);
9365 var data = upd.data || gantt.xml._xmlNodeToJSON(upd.firstChild);
9366 if (!gantt.isTaskExists(id)) {
9369 var objData = gantt.getTask(id);
9377 …property = gantt.templates.xml_date !== gantt.templates.parse_date ? gantt.templates.xml_date(prop…
9380 …objData.end_date = gantt.calculateEndDate({ start_date: objData.start_date, duration: property, ta…
9385 gantt.updateTask(id);
9386 gantt.refreshData();
9390 delete: gantt.deleteTask,
9391 isExist: gantt.isTaskExists
9394 methods.delete = gantt.deleteLink;
9395 methods.isExist = gantt.isLinkExists;
9397 if (methods.isExist.call(gantt, id)) {
9398 methods.delete.call(gantt, id);
9426 function extendGantt(gantt, dp) { argument
9427 gantt.getUserData = function (id, name) {
9436 gantt.setUserData = function (id, name, value) {
9445 gantt._change_id = function (oldId, newId) {
9453 gantt._row_style = function (rowId, classname) {
9457 if (!gantt.isTaskExists(rowId)) {
9460 var task = gantt.getTask(rowId);
9462 gantt.refreshTask(rowId);
9465 gantt._delete_task = function (rowId, node) { }; // tslint:disable-line
9466 gantt._sendTaskOrder = function (id, item) {
9474 gantt.setDp = function () {
9477 gantt.setDp();
9920 function initDataStores(gantt){ argument
9923 utils.mixin(gantt, facade);
9924 var tasksStore = gantt.createDatastore({
9927 rootId: function() { return gantt.config.root_id; },
9928 initItem: utils.bind(_init_task, gantt),
9929 getConfig: function() { return gantt.config; }
9932 var linksStore = gantt.createDatastore({
9934 initItem: utils.bind(_init_link, gantt)
9937 gantt.attachEvent("onDestroy", function(){
9949 gantt.resetProjectDates(item);
9955 if (gantt.config.show_tasks_outside_timescale) {
9959 if (gantt.config.start_date && gantt.config.end_date) {
9960 if (gantt._isAllowedUnscheduledTask(task)) return true;
9961 min = gantt.config.start_date.valueOf();
9962 max = gantt.config.end_date.valueOf();
9971 gantt._update_flags(oldId, newId);
9975 gantt._update_parents(id);
9976 if(gantt.getState("batchUpdate").batch_update){
9990 var source = gantt.getTask(sid);
10004 gantt._update_flags(id, null);
10007 var state = gantt.$services.getService("state");
10012 if(gantt.config.fit_tasks && action !== "paint"){
10013 var oldState = gantt.getState();
10014 calculateScaleRange(gantt);
10015 var newState = gantt.getState();
10019 gantt.render();
10021 gantt.callEvent("onScaleAdjusted", []);
10028 gantt.$layout.resize();
10045 sync_link_delete(gantt.mixin({id:oldId}, gantt.$data.linksStore.getItem(newId)));
10046 sync_link(gantt.$data.linksStore.getItem(newId));
10050 var isVisible = gantt.isTaskVisible(taskId);
10051 if(!isVisible && gantt.isTaskExists(taskId)){
10052 var parent = gantt.getParent(taskId);
10053 if(gantt.isTaskExists(parent) && gantt.isTaskVisible(parent)){
10054 parent = gantt.getTask(parent);
10055 if(gantt.isSplitTask(parent)){
10064 if (!gantt.config.show_links) {
10072gantt._isAllowedUnscheduledTask(gantt.getTask(link.source)) || gantt._isAllowedUnscheduledTask(gan…
10075 return gantt.callEvent("onBeforeLinkDisplay", [id, link]);
10084 gantt.attachEvent("onBeforeTaskDelete", function(id, item){
10085 deletedLinks[id] = treeHelper.getSubtreeLinks(gantt, id);
10089 gantt.attachEvent("onAfterTaskDelete", function(id, item) {
10091 gantt.$data.linksStore.silent(function(){
10093 gantt.$data.linksStore.removeItem(i);
10103 gantt.attachEvent("onAfterLinkDelete", function(id, link) {
10104 gantt.refreshTask(link.source);
10105 gantt.refreshTask(link.target);
10108 gantt.attachEvent("onParse", sync_links);
10112 target: gantt,
10127 target: gantt,
10148 gantt.$data = {
10154 if(gantt.isTaskExists(link.source)){
10155 var sourceTask = gantt.getTask(link.source);
10159 if(gantt.isTaskExists(link.target)){
10160 var targetTask = gantt.getTask(link.target);
10167 if(gantt.isTaskExists(link.source)){
10168 var sourceTask = gantt.getTask(link.source);
10176 if(gantt.isTaskExists(link.target)){
10177 var targetTask = gantt.getTask(link.target);
10189 var tasks = gantt.$data.tasksStore.getItems();
10197 var links = gantt.$data.linksStore.getItems();
10222 task.start_date = gantt.date.parseDate(task.start_date, "parse_date");
10224 task.end_date = gantt.date.parseDate(task.end_date, "parse_date");
10289 var storeRenderCreator = function(name, gantt){ argument
10290 var store = gantt.getDatastore(name);
10324 var renderer = gantt.$services.getService("layers").getDataRender(name);
10332 function skipRepaint(gantt){ argument
10333 var state = gantt.$services.getService("state");
10342 if(skipRepaint(gantt)){
10346 var renderer = gantt.$services.getService("layers").getDataRender(name);
10364 gantt.render();
10368 gantt.render();
10384 if(skipRepaint(gantt)){
10387 var renderer = gantt.$services.getService("layers").getDataRender(name);
11049 module.exports = function(gantt){
11056 var formatting = gantt.env.isIE ? "" : "%c";
11070 if(!gantt.env.isIE){
11090 function extend(gantt){ argument
11092 gantt.destructor = function(){
11093 gantt.callEvent("onDestroy", []);
11097 delete this.$root.gantt;
11120 gantt.$destroyed = true;
11136 module.exports = function(gantt) {
11246 var gantt = this;
11247 gantt.$data.tasksStore.silent(function(){
11248 gantt.$data.linksStore.silent(function(){
11543 function getTimeline(gantt){ argument
11544 return gantt.$ui.getView("timeline");
11547 function getGrid(gantt){ argument
11548 return gantt.$ui.getView("grid");
11551 function getVerticalScrollbar(gantt){ argument
11552 return gantt.$ui.getView("scrollVer");
11555 function getHorizontalScrollbar(gantt){ argument
11556 return gantt.$ui.getView("scrollHor");
11884 var gantt = new DHXGantt();
11886 __webpack_require__(/*! ./common/import */ "./sources/core/common/import.js")(gantt);
11888gantt.$services = gantt.$inject(__webpack_require__(/*! ./common/services */ "./sources/core/commo…
11889gantt.config = gantt.$inject(__webpack_require__(/*! ./common/config */ "./sources/core/common/con…
11890 gantt.ajax = __webpack_require__(/*! ./common/ajax */ "./sources/core/common/ajax.js")(gantt);
11891 gantt.date = __webpack_require__(/*! ./common/date */ "./sources/core/common/date.js")(gantt);
11892 var dnd = __webpack_require__(/*! ./common/dnd */ "./sources/core/common/dnd.js")(gantt);
11893 gantt.$services.setService("dnd", function(){return dnd;});
11895 gantt.$services.setService("config", function () {
11896 return gantt.config;
11898 gantt.$services.setService("date", function () {
11899 return gantt.date;
11901 gantt.$services.setService("locale", function () {
11902 return gantt.locale;
11904 gantt.$services.setService("templates", function () {
11905 return gantt.templates;
11908 …oader = __webpack_require__(/*! ./common/templates */ "./sources/core/common/templates.js")(gantt);
11909 gantt.$services.setService("templateLoader", function () {
11914 eventable(gantt);
11921 min_date: gantt._min_date,
11922 max_date: gantt._max_date,
11927 if(gantt.$data && gantt.$data.tasksStore){
11928 res.selected_task = gantt.$data.tasksStore.getSelectedId();
11932 gantt.getState = stateService.getState;
11933 gantt.$services.setService("state", function () {
11938 utils.mixin(gantt, utils);
11940 gantt.Promise = __webpack_require__(/*! ../utils/promise */ "./sources/utils/promise.js");
11941 gantt.env = __webpack_require__(/*! ../utils/env */ "./sources/utils/env.js");
11944 gantt.utils = {
11955 gantt.event = domEvents.attach;
11956 gantt.eventRemove = domEvents.detach;
11957 gantt._eventRemoveAll = domEvents.detachAll;
11958 gantt._createDomEventScope = domEvents.extend;
11960 utils.mixin(gantt, __webpack_require__(/*! ./message */ "./sources/core/message.js")(gantt));
11961 var uiApi = __webpack_require__(/*! ./ui/index */ "./sources/core/ui/index.js").init(gantt);
11962 gantt.$ui = uiApi.factory;
11963 gantt.$ui.layers = uiApi.render;
11964 gantt.$mouseEvents = uiApi.mouseEvents;
11965 gantt.$services.setService("mouseEvents", function () {
11966 return gantt.$mouseEvents;
11968 gantt.mixin(gantt, uiApi.layersApi);
11970 __webpack_require__(/*! ./data_task_layers */ "./sources/core/data_task_layers.gpl.js")(gantt);
11972 gantt.$services.setService("layers", function () {
11977 gantt.mixin(gantt, createLayoutFacade());
11979 …require__(/*! ./datastore/datastore_hooks */ "./sources/core/datastore/datastore_hooks.js")(gantt);
11982 gantt.dataProcessor = DataProcessor.DEPRECATED_api;
11983 gantt.createDataProcessor = DataProcessor.createDataProcessor;
11985 __webpack_require__(/*! ./plugins */ "./sources/core/plugins/index.js")(gantt);
11987 __webpack_require__(/*! ./dynamic_loading */ "./sources/core/dynamic_loading.gpl.js")(gantt);
11988 __webpack_require__(/*! ./grid_column_api */ "./sources/core/grid_column_api.gpl.js")(gantt);
11989 __webpack_require__(/*! ./wai_aria */ "./sources/core/wai_aria.js")(gantt);
11990 __webpack_require__(/*! ./tasks */ "./sources/core/tasks.js")(gantt);
11991 __webpack_require__(/*! ./load */ "./sources/core/load.js")(gantt);
11992 __webpack_require__(/*! ./worktime/work_time */ "./sources/core/worktime/work_time.js")(gantt);
11993 __webpack_require__(/*! ./data */ "./sources/core/data.js")(gantt);
11995 …sh_helpers/void_script_second */ "./sources/publish_helpers/void_script_second.ts").default(gantt);
11997 __webpack_require__(/*! ./lightbox */ "./sources/core/lightbox/index.js")(gantt);
11998 …bpack_require__(/*! ./lightbox_optional_time */ "./sources/core/lightbox_optional_time.js")(gantt);
11999 __webpack_require__(/*! ./data_task_types */ "./sources/core/data_task_types.gpl.js")(gantt);
12000 __webpack_require__(/*! ./cached_functions */ "./sources/core/cached_functions.js")(gantt);
12001 __webpack_require__(/*! ./skin */ "./sources/core/skin.js")(gantt);
12002 __webpack_require__(/*! ../css/skins/skyblue */ "./sources/css/skins/skyblue.js")(gantt);
12003 __webpack_require__(/*! ../css/skins/meadow */ "./sources/css/skins/meadow.js")(gantt);
12004 __webpack_require__(/*! ../css/skins/terrace */ "./sources/css/skins/terrace.js")(gantt);
12005 __webpack_require__(/*! ../css/skins/broadway */ "./sources/css/skins/broadway.js")(gantt);
12006 __webpack_require__(/*! ../css/skins/material */ "./sources/css/skins/material.js")(gantt);
12007 …bpack_require__(/*! ../css/skins/contrast_black */ "./sources/css/skins/contrast_black.js")(gantt);
12008 …bpack_require__(/*! ../css/skins/contrast_white */ "./sources/css/skins/contrast_white.js")(gantt);
12009 __webpack_require__(/*! ./touch */ "./sources/core/touch.js")(gantt);
12010 __webpack_require__(/*! ../locale */ "./sources/locale/index.js")(gantt);
12011 __webpack_require__(/*! ./gantt_core */ "./sources/core/gantt_core.js")(gantt);
12012 __webpack_require__(/*! ./destructor */ "./sources/core/destructor.js")(gantt);
12013 …lish_helpers/void_script_third */ "./sources/publish_helpers/void_script_third.ts").default(gantt);
12014 return gantt;
12029 module.exports = function(gantt){
12032gantt.assert = __webpack_require__(/*! ./common/assert */ "./sources/core/common/assert.js")(gantt
12035 gantt.init = function(node, from, to){
12068 }).bind(gantt);
12074 this.$root.gantt = this;
12080 var storeNames = gantt.$services.getService("datastores");
12082 gantt.getDatastore(storeNames[i]).filter();
12087 gantt.refreshData();
12096 }).bind(gantt);
12098 gantt.resetLayout = function(){
12104 gantt._reinit = function(node){
12133 function addResizeListener(gantt){ argument
12134 var containerStyles = window.getComputedStyle(gantt.$root);
12136 gantt.$root.style.position = "relative";
12142 if(gantt.config.wai_aria_attributes){
12148 gantt.$root.appendChild(resizeWatcher);
12150 listenWindowResize(gantt, resizeWatcher.contentWindow);
12153 gantt.$root.removeChild(resizeWatcher);
12154 listenWindowResize(gantt, window);
12158 function listenWindowResize(gantt, window){ argument
12160 gantt.event(window, "resize", function(){
12163 gantt.render();
12168 gantt.$click={
12171 if (gantt.isReadonly(gantt.getTask(id))) {
12174 gantt.showLightbox(id);
12177 var task = gantt.getTask(id);
12178 if (gantt.isReadonly(task)) {
12181 var question = gantt.locale.labels.confirm_deleting;
12182 var title = gantt.locale.labels.confirm_deleting_title;
12184 gantt._dhtmlx_confirm(question, title, function(){
12185 if(!gantt.isTaskExists(id)){
12186 gantt.hideLightbox();
12191 gantt.silent(function(){
12192 gantt.deleteTask(id, true);
12194 gantt.refreshData();
12196 gantt.deleteTask(id);
12199 gantt.hideLightbox();
12206 gantt.render = function(){
12223 visible_date = gantt.dateFromPos(posX + this.config.task_scroll_offset);
12233 var new_pos = gantt.getScrollState();
12234 var new_date = gantt.dateFromPos(new_pos.x);
12240 gantt.scrollTo(undefined, pos.y);
12249 gantt.setSizes = gantt.render;
12251 gantt.locate = function(e) {
12268 gantt._locate_css = function(e, classname, strict){
12272 gantt._locateHTML = function(e, attribute) {
12276 gantt.getTaskRowNode = function(id) {
12288 gantt.changeLightboxType = function(type){
12291 gantt._silent_redraw_lightbox(type);
12295 gantt._get_link_type = function (from_start, to_start) {
12298 type = gantt.config.links.start_to_start;
12300 type = gantt.config.links.finish_to_start;
12302 type = gantt.config.links.finish_to_finish;
12304 type = gantt.config.links.start_to_finish;
12309 gantt.isLinkAllowed = function (from, to, from_start, to_start) {
12330 gantt._correct_dst_change = function(date, prevOffset, step, unit){
12336 date = gantt.date.add(date, offsetChanged, "minute");
12342 gantt.isSplitTask = function(task){
12343gantt.assert(task && task instanceof Object, "Invalid argument <b>task</b>="+task+" of gantt.isSpl…
12347 gantt._is_icon_open_click = function(e) {
12374 function dateRangeResolver(gantt){ argument
12377 return gantt.getSubtaskDates();
12387 function resolveConfigRange(unit, gantt){ argument
12393 if (gantt.config.start_date && gantt.config.end_date) {
12394 range.start_date = gantt.date[unit + "_start"](new Date(gantt.config.start_date));
12396 var end = new Date(gantt.config.end_date);
12397 var start_interval = gantt.date[unit + "_start"](new Date(end));
12399 end = gantt.date.add(start_interval, 1, unit);
12409 function _scale_range_unit(gantt) { argument
12410 var primaryScale = (new PrimaryScaleHelper(gantt)).primaryScale();
12413 if (gantt.config.scale_offset_minimal) {
12415 var helper = new ScaleHelper(gantt);
12425 function _init_tasks_range(gantt) { argument
12426 var cfg = _scale_range_unit(gantt);
12429 var range = resolveConfigRange(unit, gantt);
12432 range = dateRangeResolver(gantt);
12434 range = defaultRangeResolver(gantt);
12437 range.start_date = gantt.date[unit + "_start"](range.start_date);
12438 range.start_date = gantt.calculateEndDate({
12439 start_date: gantt.date[unit + "_start"](range.start_date),
12445 range.end_date = gantt.date[unit + "_start"](range.end_date);
12446 …range.end_date = gantt.calculateEndDate({start_date: range.end_date, duration: 2, unit: unit, step…
12449 gantt._min_date = range.start_date;
12450 gantt._max_date = range.end_date;
12453 function _adjust_scales(gantt) { argument
12454 if (gantt.config.fit_tasks) {
12455 var old_min = +gantt._min_date,
12456 old_max = +gantt._max_date;
12458 if (+gantt._min_date != old_min || +gantt._max_date != old_max) {
12459 gantt.render();
12461 gantt.callEvent("onScaleAdjusted", []);
12468 module.exports = function updateTasksRange(gantt){ argument
12469 _init_tasks_range(gantt);
12470 _adjust_scales(gantt);
12483 module.exports = function(gantt) {
12484 gantt.getGridColumn = function(name) {
12485 var columns = gantt.config.columns;
12495 gantt.getGridColumns = function() {
12496 return gantt.config.columns.slice();
12522 module.exports = function(gantt) { // we could send current instance of gantt to module
12538 module.exports = function(gantt) {
12539 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
12582 gantt._focus(node.querySelector("input[type=checkbox]"));
12600 module.exports = function (gantt) {
12601 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
12611 …if (!value || value === gantt.config.constraint_types.ASAP || value === gantt.config.constraint_ty…
12630 for (var i in gantt.config.constraint_types) {
12631 …options.push({ key: gantt.config.constraint_types[i], label: gantt.locale.labels[gantt.config.cons…
12638 var timeLabel = gantt.locale.labels["constraint_date"] || "Constraint date";
12639 …html += "<label data-constraint-time-select>" + timeLabel + ": " + gantt.form_blocks.getTimePicker…
12650 var mapping = gantt._resolve_default_mapping(config);
12660 gantt.form_blocks._fill_lightbox_select(timeSelects, 0, constraintDate, map, config);
12662 var constraintType = task[mapping.constraint_type] || gantt.getConstraintType(task);
12674 constraintDate = gantt.form_blocks.getTimePickerValue(timeSelects, config);
12684 gantt._focus(node.querySelector("select"));
12701 module.exports = function(gantt) {
12702 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
12717 …var time = "<div class='gantt_time_selects'>" + gantt.form_blocks.getTimePicker.call(this, sns) + …
12718 var label = " "+ gantt.locale.labels[gantt.config.duration_unit + "s"] +" ";
12721 var ariaAttr = gantt._waiAria.lightboxDurationInputAttrString(sns);
12751 var start_date = _getStartDate.call(gantt, node, config);
12752 var duration = _getDuration.call(gantt, node, config);
12753 var end_date = gantt.calculateEndDate({start_date: start_date, duration: duration, task: ev});
12755 var template = gantt.templates.task_end_date || gantt.templates.task_date;
12771 btns[0].onclick = gantt.bind(function() {
12772 _change_duration(-1 * gantt.config.duration_step);
12774 btns[1].onclick = gantt.bind(function() {
12775 _change_duration(1 * gantt.config.duration_step);
12782 duration.onkeydown = gantt.bind(function(e) {
12788 if (code == gantt.constants.KEY_CODES.DOWN) {
12789 _change_duration(-1 * gantt.config.duration_step);
12793 if (code == gantt.constants.KEY_CODES.UP) {
12794 _change_duration(1 * gantt.config.duration_step);
12800 duration.onchange = gantt.bind(_calc_date, this);
12802 mapping = gantt._resolve_default_mapping(config);
12806 end_date = ev[mapping.end_date] || gantt.calculateEndDate({
12811 duration_val = Math.round(ev[mapping.duration]) || gantt.calculateDuration({
12818 gantt.form_blocks._fill_lightbox_select(s, 0, start_date, map, config);
12826 var endDate = gantt.calculateEndDate({start_date: startDate, duration: duration, task: ev});
12828 if (typeof gantt._resolve_default_mapping(config) == "string") {
12840 gantt._focus(node.getElementsByTagName("select")[0]);
12850 if (gantt.defined(map[3])) {
12886 module.exports = function(gantt) {
12887 …ack_require__(/*! ./select_control */ "./sources/core/lightbox/controls/select_control.js")(gantt);
12909 return gantt.form_blocks.select.set_value.apply(gantt, [newOptions, value, ev, config]);
12916 tasks = gantt.getTaskByTime();
12918 tasks.unshift({id: gantt.config.root_id, text: config.root_label || ""});
12925 var text = config.template || gantt.templates.task_text;
12927 var label = text.apply(gantt, [tasks[i].start_date, tasks[i].end_date, tasks[i]]);
12938 return gantt.form_blocks.select.render.apply(this, arguments);
12950 if (task.id == item_id || gantt.isChildOf(task.id, item_id) || filter(task.id, task) === false) {
12971 module.exports = function(gantt) {
12972 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
13021 gantt._focus(node.querySelector("input[type=radio]"));
13039 module.exports = function(gantt) {
13040 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
13076 gantt._focus(a, true);
13093 module.exports = function(gantt) {
13094 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
13133 module.exports = function(gantt) {
13134 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
13150 gantt.form_blocks.textarea._get_input(node).value = value || "";
13154 return gantt.form_blocks.textarea._get_input(node).value;
13158 var a = gantt.form_blocks.textarea._get_input(node);
13159 gantt._focus(a, true);
13180 module.exports = function (gantt) {
13181 …webpack_require__(/*! ./base_control */ "./sources/core/lightbox/controls/base_control.js")(gantt);
13192 var time = gantt.form_blocks.getTimePicker.call(this, sns);
13197 time = gantt.form_blocks.getTimePicker.call(this, sns, true);
13216 end_date = gantt.calculateEndDate({ start_date: start_date, duration: 1, task: ev });
13217 gantt.form_blocks._fill_lightbox_select(s, map.size, end_date, map, cfg);
13224 var mapping = gantt._resolve_default_mapping(config);
13229 var end_date = ev[mapping.end_date] || gantt.calculateEndDate({
13235 gantt.form_blocks._fill_lightbox_select(s, 0, start_date, map, cfg);
13236 gantt.form_blocks._fill_lightbox_select(s, map.size, end_date, map, cfg);
13244 var endDate = gantt.form_blocks.getTimePickerValue(selects, config, map.size);
13247 return gantt.date.add(startDate, gantt._get_timepicker_step(), "minute");
13252 startDate = gantt.form_blocks.getTimePickerValue(selects, config);
13254 if (typeof gantt._resolve_default_mapping(config) === "string") {
13265 gantt._focus(node.getElementsByTagName("select")[0]);
13280 module.exports = function (gantt) {
13284 …(/*! ./controls/template_control */ "./sources/core/lightbox/controls/template_control.js")(gantt);
13285 …(/*! ./controls/textarea_control */ "./sources/core/lightbox/controls/textarea_control.js")(gantt);
13286 …equire__(/*! ./controls/time_control */ "./sources/core/lightbox/controls/time_control.js")(gantt);
13287 …re__(/*! ./controls/select_control */ "./sources/core/lightbox/controls/select_control.js")(gantt);
13288 …(/*! ./controls/checkbox_control */ "./sources/core/lightbox/controls/checkbox_control.js")(gantt);
13289 …uire__(/*! ./controls/radio_control */ "./sources/core/lightbox/controls/radio_control.js")(gantt);
13290 …(/*! ./controls/duration_control */ "./sources/core/lightbox/controls/duration_control.js")(gantt);
13291 …re__(/*! ./controls/parent_control */ "./sources/core/lightbox/controls/parent_control.js")(gantt);
13292 …_(/*! ./controls/resources_control */ "./sources/core/lightbox/controls/select_control.js")(gantt);
13293 … ./controls/constraint_control */ "./sources/core/lightbox/controls/constraint_control.js")(gantt);
13296 gantt._lightbox_methods = {};
13297gantt._lightbox_template = "<div class='gantt_cal_ltitle'><span class='gantt_mark'>&nbsp;</span><s…
13301 var state = gantt.$services.getService("state");
13304 lightbox: gantt._lightbox_id
13308 gantt.showLightbox = function (id) {
13323 function _is_chart_visible(gantt) { argument
13324 var timeline = gantt.$ui.getView("timeline");
13332 gantt._get_timepicker_step = function () {
13336 var scale = gantt.getScale();
13347 gantt.getLabel = function (property, key) {
13362 gantt.updateCollection = function (list_name, collection) {
13364 var list = gantt.serverList(list_name);
13368 gantt.resetLightbox();
13370 gantt.getLightboxType = function () {
13373 gantt.getLightbox = function (type) {
13390 if (gantt.config.wide_form || fullWidth)
13394 gantt.config.wide_form = true;
13408 gantt._waiAria.lightboxAttr(lightboxDiv);
13410 if (gantt.config.drag_lightbox) {
13411 lightboxDiv.firstChild.onmousedown = gantt._ready_to_dnd;
13416 gantt._init_dnd_events();
13440 gantt._render_sections = function (sns) {
13462 gantt.resizeLightbox = function () {
13472 gantt._center_lightbox = function (box) {
13493 gantt.showCover = function () {
13505 gantt._init_lightbox_events = function () {
13506 gantt.lightbox_events = {};
13509 gantt.lightbox_events.gantt_save_btn = function () {
13510 gantt._save_lightbox();
13514 gantt.lightbox_events.gantt_delete_btn = function () {
13515 if (!gantt.callEvent("onLightboxDelete", [gantt._lightbox_id]))
13518 if (gantt.isTaskExists(gantt._lightbox_id)) {
13519 gantt.$click.buttons["delete"](gantt._lightbox_id);
13521 gantt.hideLightbox();
13527 gantt.lightbox_events.gantt_cancel_btn = function () {
13528 gantt._cancel_lightbox();
13532 gantt.lightbox_events["default"] = function (e, src) {
13534 gantt.callEvent("onLightboxButton", [src.className, src, e]);
13553 var sections = gantt._get_typed_lightbox_config();
13557 block = gantt.form_blocks[sections[index * 1].type];
13562 this.event(gantt.getLightbox(), "click", function (e) {
13576 …var func = gantt.defined(gantt.lightbox_events[src.className]) ? gantt.lightbox_events[src.classNa…
13582 gantt.getLightbox().onkeydown = function (e) { method
13588 case gantt.constants.KEY_CODES.SPACE: {
13595 case gantt.keys.edit_save:
13600 gantt._save_lightbox();
13603 case gantt.keys.edit_cancel:
13604 gantt._cancel_lightbox();
13612 gantt._cancel_lightbox = function () {
13615 if (gantt.isTaskExists(task.id) && task.$new) {
13617 gantt.$data.tasksStore.removeItem(task.id);
13618 gantt._update_flags(task.id, null);
13626 gantt._save_lightbox = function () {
13645 gantt._resolve_default_mapping = function (section) {
13663 gantt.getLightboxValues = function () {
13666 if (gantt.isTaskExists(this._lightbox_id)) {
13677 var map_to = gantt._resolve_default_mapping(sns[i]);
13691 gantt.hideLightbox = function () {
13701 gantt.hideCover = function () {
13707 gantt.resetLightbox = function () {
13708 if (gantt._lightbox && !gantt._custom_lightbox)
13709 gantt._lightbox.parentNode.removeChild(gantt._lightbox);
13710 gantt._lightbox = null;
13711 gantt.hideCover();
13713 gantt._set_lightbox_values = function (data, box) {
13717 if (gantt.templates.lightbox_header) {
13719 lightboxHeader.push(gantt.templates.lightbox_header(task.start_date, task.end_date, task));
13721 s[2].innerHTML = gantt.templates.lightbox_header(task.start_date, task.end_date, task);
13731 gantt._waiAria.lightboxHeader(box, lightboxHeader.join(" "));
13744 var map_to = gantt._resolve_default_mapping(sns[i]);
13746 block.set_value.call(gantt, node, value, task, section);
13749 block.focus.call(gantt, node);
13752 gantt._lightbox_id = data.id;
13754 gantt._fill_lightbox = function (id, box) {
13760 gantt.getLightboxSection = function (name) {
13780 return gantt.form_blocks[section.type].get_value.call(gantt, node, (ev || {}), section);
13783 return gantt.form_blocks[section.type].set_value.call(gantt, node, value, (ev || {}), section);
13791 gantt._lightbox_methods.get_template_control = function (result) {
13795 gantt._lightbox_methods.get_select_control = function (result) {
13799 gantt._lightbox_methods.get_textarea_control = function (result) {
13803 gantt._lightbox_methods.get_time_control = function (result) {
13809 gantt._init_dnd_events = function () {
13810 this.event(document.body, "mousemove", gantt._move_while_dnd);
13811 this.event(document.body, "mouseup", gantt._finish_dnd);
13812 gantt._init_dnd_events = function () { method
13815 gantt._move_while_dnd = function (e) {
13816 if (gantt._dnd_start_lb) {
13821 var lb = gantt.getLightbox();
13823 lb.style.top = gantt._lb_start[1] + now[1] - gantt._dnd_start_lb[1] + "px";
13824 lb.style.left = gantt._lb_start[0] + now[0] - gantt._dnd_start_lb[0] + "px";
13827 gantt._ready_to_dnd = function (e) {
13828 var lb = gantt.getLightbox();
13829 gantt._lb_start = [parseInt(lb.style.left, 10), parseInt(lb.style.top, 10)];
13830 gantt._dnd_start_lb = (e && e.target) ? [e.pageX, e.pageY] : [event.clientX, event.clientY];
13832 gantt._finish_dnd = function () {
13833 if (gantt._lb_start) {
13834 gantt._lb_start = gantt._dnd_start_lb = false;
13841 gantt._focus = function (node, select) {
13843 if (gantt.config.touch) {
13857 gantt.form_blocks = {
13869 date: this.date.date_part(new Date(gantt._min_date.valueOf())),
13876 if (gantt.config.limit_time_select) {
13891 ariaAttrs = gantt._waiAria.lightboxSelectAttrString(settings.timeFormat[i]);
13901 var needSetTime = gantt.defined(map[3]);
13921 if (gantt.defined(map[3])) {
13923 v = Math.round(v / gantt._get_timepicker_step()) * gantt._get_timepicker_step();
13942 gantt._is_lightbox_timepicker = function () {
13950 gantt._dhtmlx_confirm = function (message, title, callback, ok) {
13965 gantt.confirm(opts);
13977 gantt._get_typed_lightbox_config = function (type) {
13984 if (gantt.config.lightbox[field + "_sections"]) {
13985 return gantt.config.lightbox[field + "_sections"];
13987 return gantt.config.lightbox.sections;
13991 gantt._silent_redraw_lightbox = function (type) {
14034 input.id = input.id || "input_" + gantt.uid();
14049 …button = gantt.config._migrate_buttons[buttons[i]] ? gantt.config._migrate_buttons[buttons[i]] : b…
14051 ariaAttr = gantt._waiAria.lightboxButtonAttrString(button);
14052 … dhx_button='1' data-dhx-button='1' class='" + button + "'></div><div>" + gantt.locale.labels[butt…
14066 scale = gantt.getScale();
14067 unit = scale ? scale.unit : gantt.config.duration_unit;
14114 html += "<option value='" + i + "'>" + gantt.locale.date.month_full[i] + "</option>";
14133 time = gantt.templates.time_picker(settings.date);
14136 settings.date.setTime(settings.date.valueOf() + gantt._get_timepicker_step() * 60 * 1000);
14157 module.exports = function(gantt) {
14159 gantt._extend_to_optional = function (lightbox_block) {
14166 var mapping = gantt._resolve_default_mapping(section);
14176 return duration.set_value.call(gantt, node, value, val, section);//set default value
14179 return duration.set_value.call(gantt, node, value, task, section);
14186 return duration.get_value.call(gantt, node, task, section);
14190 gantt.callEvent("onSectionToggle", [gantt._lightbox_id, section]);
14195 labels = gantt.locale.labels;
14201 gantt.resizeLightbox();
14213 if (gantt.callEvent("onSectionButton", [gantt._lightbox_id, section]) === false) {
14216 var config = gantt._get_typed_lightbox_config()[index];
14227 gantt.form_blocks.duration_optional = gantt._extend_to_optional(gantt.form_blocks.duration);
14228 gantt.form_blocks.time_optional = gantt._extend_to_optional(gantt.form_blocks.time);
14243 module.exports = function(gantt) {
14245 gantt.load = function (url, type, callback) {
14264 return this.ajax.get(url, gantt.bind(function (l) {
14271 gantt.parse = function (data, type) {
14275 gantt.serialize = function (type) {
14310 gantt.on_load = function (resp, type) {
14327 gantt._process_loading = function (data) {
14347 gantt._load_collections = function (collections) {
14376 gantt.attachEvent("onBeforeTaskDisplay", function (id, task) {
14381 gantt.assert(false, "Can't parse data: incorrect value of gantt.parse or gantt.load method. "
14387 gantt.json = {
14402 gantt.assert(false, "JSON is not supported");
14411 gantt.security_key = data.dhx_security;
14434 …copy[key] = gantt.templates.xml_format !== gantt.templates.formate_date ? gantt.templates.xml_form…
14443 gantt.eachTask(function (obj) {
14444 gantt.resetProjectDates(obj);
14446 }, gantt.config.root_id, this);
14448 var rawLinks = gantt.getLinks();
14476 gantt.assert(false, "Can't parse data: incorrect value of gantt.parse or gantt.load method. "
14482 gantt.xml = {
14502 var opts = gantt.ajax.xpath("//coll_options", loader);
14506 var itms = gantt.ajax.xpath(".//item", opts[i]);
14525 loader = gantt.ajax.parse(loader);
14528 var xml = gantt.ajax.xmltop(toptag, loader.xmlDoc);
14535 gantt.security_key = skey;
14544 var xml = gantt.ajax.xpath("//task", loader);
14562 var json = gantt.json.serialize();
14574 gantt.oldxml = {
14576 loader = gantt.xml._getXML(text, loader, "projects");
14580 var xml = gantt.ajax.xpath("//task", loader);
14583 evs[i] = gantt.xml._xmlNodeToJSON(xml[i]);
14592 xml = gantt.ajax.xpath("//project", loader);
14594 var ev = gantt.xml._xmlNodeToJSON(xml[i], true);
14611 type: gantt.config.links.finish_to_start
14618 gantt.message("Serialization to 'old XML' is not implemented");
14622 gantt.serverList = function (name, array) {
14645 module.exports = function(gantt) {
14694 gantt.event(document, "keydown", modal_key, true);
14709 var buttonAriaAttrs = gantt._waiAria.messageButtonAttrString(text);
14732 gantt._waiAria.messageInfoAttr(message);
14765 gantt._waiAria.messageModalAttr(box, contentId);
14781 inner += button(getFirstDefined(config.ok, gantt.locale.labels.message_ok, "OK"), "ok", true);
14783 …inner += button(getFirstDefined(config.cancel, gantt.locale.labels.message_cancel, "Cancel"), "can…
14850 gantt.callEvent("onMessagePopup", [box]);
14907 gantt.callEvent("onAfterMessagePopup", [node]);
14965 gantt.attachEvent("onMessagePopup", function(box){
14968 gantt.attachEvent("onAfterMessagePopup", function(box){
14977 gantt.attachEvent("onDestroy", function(){
15012 module.exports = function(gantt) {
15014 return gantt.config.auto_types && // if enabled
15015 (gantt.getTaskType(gantt.config.types.project) == gantt.config.types.project);// and supported
15028 gantt.batchUpdate(function() {
15037 var parent = gantt.getParent(id);
15039 if (parent != gantt.config.root_id) {
15046 var task = gantt.getTask(id);
15055 if(!gantt.getState().group_mode){
15057 gantt.updateTask(task.id);
15062 var allTypes = gantt.config.types;
15063 var hasChildren = gantt.hasChild(task.id);
15064 var taskType = gantt.getTaskType(task.type);
15079 gantt.attachEvent("onParse", callIfEnabled(function() {
15082 gantt.batchUpdate(function() {
15083 gantt.eachTask(function(task) {
15094 gantt.attachEvent("onAfterTaskAdd", callIfEnabled(function(id) {
15100 gantt.attachEvent("onAfterTaskUpdate", callIfEnabled(function(id) {
15107 if (id != gantt.config.root_id && gantt.isTaskExists(id)) {
15112 gantt.attachEvent("onBeforeTaskDelete", callIfEnabled(function(id, task) {
15113 delTaskParent = gantt.getParent(id);
15117 gantt.attachEvent("onAfterTaskDelete", callIfEnabled(function(id, task) {
15124 gantt.attachEvent("onRowDragStart", callIfEnabled(function(id, target, e) {
15125 originalRowDndParent = gantt.getParent(id);
15129 gantt.attachEvent("onRowDragEnd", callIfEnabled(function(id, target) {
15136 gantt.attachEvent("onBeforeTaskMove", callIfEnabled(function(sid, parent, tindex) {
15137 originalMoveTaskParent = gantt.getParent(sid);
15141 gantt.attachEvent("onAfterTaskMove", callIfEnabled(function(id, parent, tindex) {
15162 module.exports = function(gantt){
15180 domHelpers.isChildOf(element, gantt.$root) &&
15186 if(isDisplayed(gantt.$task)){
15187 element = gantt.$task;
15188 }else if(isDisplayed(gantt.$grid)){
15189 element = gantt.$grid;
15191 element = gantt.$root;
15201 var state = gantt.getState();
15214 var speed = gantt.config.autoscroll_speed;
15220 }, gantt.config.autoscroll_delay || scrollDelay);
15250 if (!gantt.config.autoscroll || !isScroll) {
15278 var scrollState = gantt.getScrollState();
15304 var step = gantt.config.autoscroll_step;
15326 var scrollState = gantt.getScrollState();
15343 gantt.scrollTo(scrollLeft, scrollTop);
15346 gantt.attachEvent("onGanttReady", function() {
15347 gantt.eventRemove(document.body, "mousemove", autoscrollInterval);
15348 gantt.event(document.body, "mousemove", autoscrollInterval);
15362 function createMethod(gantt){ argument
15398 var state = gantt.$services.getService("state");
15466 module.exports = function(gantt){
15467 gantt.batchUpdate = createMethod(gantt);
15484 window.dhtmlx.attaches.attachGantt=function(start, end, gantt){ argument
15487 gantt = gantt || window.gantt;
15489 obj.id = "gantt_"+ gantt.uid();
15497 this.dataObj = gantt;
15500 that.grid = gantt;
15502 gantt.init(obj.id, start, end);
15515 window.dhtmlXCellObject.prototype.attachGantt=function(start, end, gantt){ argument
15516 gantt = gantt || window.gantt;
15519 obj.id = "gantt_"+gantt.uid();
15528 this.dataObj = gantt;
15530 gantt.init(obj.id, start, end);
15555 module.exports = function(gantt){
15556 gantt.ext.formatters = {
15562 settings.store = gantt.config.duration_unit;
15565 settings.enter = gantt.config.duration_unit;
15567 return DurationFormatter.create(settings, gantt);
15570 return LinkFormatter.create(settings, gantt);
15584 module.exports = function(gantt){
15585 if(!gantt.ext){
15586 gantt.ext = {};
15603 modules[i](gantt);
15607 gantt.ext.zoom = new TimelineZoom(gantt);
15636 if (!this.gantt && !(window.gantt.$root == this)){
15638 …var newgantt = (window.gantt.$container && window.Gantt) ? window.Gantt.getGanttInstance():window.
15649 views.push(typeof this.gantt == "object" ? this.gantt : window.gantt);
15675 module.exports = function addPlaceholder(gantt){ argument
15677 return gantt.config.placeholder_task;
15693 if(data.type == gantt.config.types.placeholder){
15703 var placeholders = gantt.getTaskBy("type", gantt.config.types.placeholder);
15704 if(!placeholders.length || !gantt.isTaskExists(placeholders[0].id)){
15707 type: gantt.config.types.placeholder,
15709 text: gantt.locale.labels.new_task
15711 if(gantt.callEvent("onTaskCreated", [placeholder]) === false){
15715 gantt.addTask(placeholder);
15721 var item = gantt.getTask(id);
15722 if(item.type == gantt.config.types.placeholder) {
15727 gantt.batchUpdate(function(){
15728 var newTask = gantt.copy(item);
15729 gantt.silent(function(){
15730 gantt.deleteTask(item.id);
15734 newTask.type = gantt.config.types.task;
15735 newTask.id = gantt.uid();
15736 gantt.addTask(newTask);
15744 gantt.config.types.placeholder = "placeholder";
15745 gantt.attachEvent("onDataProcessorReady", callIfEnabled(silenceDataProcessor));
15748 gantt.attachEvent("onGanttReady", function(){
15753 gantt.attachEvent("onAfterTaskUpdate", callIfEnabled(afterEdit));
15754 gantt.attachEvent("onAfterTaskAdd", callIfEnabled(function(id, task){
15755 if(task.type != gantt.config.types.placeholder){
15756 var placeholders = gantt.getTaskBy("type", gantt.config.types.placeholder);
15758 gantt.silent(function(){
15759 if(gantt.isTaskExists(p.id))
15760 gantt.deleteTask(p.id);
15766 gantt.attachEvent("onParse", callIfEnabled(insertPlaceholder));
15770 if(gantt.config.types.placeholder && gantt.isTaskExists(taskId)){
15771 var task = gantt.getTask(taskId);
15772 if(task.type == gantt.config.types.placeholder){
15784 gantt.attachEvent("onLinkValidation", function(link){
15790 gantt.attachEvent("onBeforeLinkAdd", function(id,link){
15797 gantt.attachEvent("onBeforeUndoStack", function(action){
15800 if(command.entity === "task" && command.value.type === gantt.config.types.placeholder){
15822 function createResourceMethods(gantt){ argument
15826 gantt.$data.tasksStore.attachEvent("onStoreUpdated", function(){
15844 gantt.eachTask(function (task) {
15870 gantt.eachTask(function (task) {
15871 if (task.type == gantt.config.types.project) return;
15921 var currDate = gantt.date[scaleUnit + "_start"](new Date(task.start_date));
15926 currDate = gantt.date.add(currDate, scaleStep, scaleUnit);
15928 if (!gantt.isWorkTime({date: date, task: task, unit: scaleUnit})) {
15947 end = gantt.date.add(start, scaleStep, scaleUnit);
16130 var colEnd = scale.trace_x[i + 1] || gantt.date.add(colStart, scale.step, scale.unit);
16304 var property = gantt.config.resource_property;
16306 if (gantt.getDatastore("task").exists(taskId)) {
16307 var task = gantt.getTask(taskId);
16326 var property = gantt.config.resource_property;
16330 var tasks = gantt.getTaskBy(property, resourceId);
16346 module.exports = function(gantt){
16347 var methods = createResourceMethods(gantt);
16349 gantt.getTaskBy = methods.filterTasks;
16350 gantt.getResourceAssignments = methods.getResourceAssignments;
16351 gantt.$ui.layers.resourceRow = methods.renderLine;
16352 gantt.$ui.layers.resourceHistogram = methods.renderHistogram;
16353 gantt.config.resource_property = "owner_id";
16354 gantt.config.resource_store = "resource";
16355 gantt.config.resource_render_empty_cells = false;
16360 gantt.templates.histogram_cell_class = function(start_date, end_date, resource, tasks) {};
16361 gantt.templates.histogram_cell_label = function(start_date, end_date, resource, tasks) {
16364 gantt.templates.histogram_cell_allocated = function(start_date, end_date, resource, tasks) {
16367 gantt.templates.histogram_cell_capacity = function(start_date, end_date, resource, tasks) {
16373 gantt.templates.resource_cell_class = function(start, end, resource, tasks) {
16383 gantt.templates.resource_cell_value = function(start, end, resource, tasks) {
16452 function TimelineZoom(gantt) { argument
16508 var gantt = _this.$gantt;
16509 var nextConfig = gantt.copy(_this._levels[_this._activeLevelIndex]);
16510 var chartConfig = gantt.copy(nextConfig);
16512 gantt.mixin(gantt.config, chartConfig, true);
16513 var isRendered = !!gantt.$root;
16579 this.$gantt = gantt;
16685 var createWbs = (function(gantt){ argument
16695 return !!(gantt.getState().group_mode);
16721 var currentNode = gantt.config.root_id;
16723 var children = gantt.getChildren(currentNode);
16725 if(gantt.isTaskExists(children[index])){
16731 if(gantt.isTaskExists(currentNode)){
16732 return gantt.getTask(currentNode);
16741 gantt.eachTask(function(ch) {
16747 var _prevSibling = gantt.getPrevSibling(ch.id);
16749 var _wbs = gantt.getTask(_prevSibling).$wbs;
16756 var _parent = gantt.getParent(ch.id);
16757 this._setWBSCode(ch, gantt.getTask(_parent).$wbs + ".1");
16759 }, gantt.config.root_id, this);
16766 module.exports = function(gantt){
16767 var wbs = createWbs(gantt);
16768 gantt.getWBSCode = function getWBSCode(task) {
16772 gantt.getTaskByWBSCode = function(code) {
16781 gantt.attachEvent("onAfterTaskMove", resetCache);
16782 gantt.attachEvent("onBeforeParse", resetCache);
16783 gantt.attachEvent("onAfterTaskDelete", resetCache);
16784 gantt.attachEvent("onAfterTaskAdd", resetCache);
16785 gantt.attachEvent("onAfterSort", resetCache);
16805 function _get_skin(force, gantt) { argument
16806 var skin = gantt.skin;
16812 if (gantt.skins[res[1]] || !skin) {
16820 gantt.skin = skin || "terrace";
16821 var skinset = gantt.skins[gantt.skin] || gantt.skins["terrace"];
16824 _configure(gantt.config, skinset.config, force);
16826 var config = gantt.getGridColumns();
16827 if (config[1] && !gantt.defined(config[1].width))
16829 if (config[2] && !gantt.defined(config[2].width))
16838 if (!(gantt.defined(column.min_width) && gantt.defined(column.max_width))) {
16855 gantt.config.task_height = skinset.config.task_height || "full";
16858 gantt._lightbox_template = skinset._lightbox_template;
16861 gantt.config.buttons_right = skinset._redefine_lightbox_buttons["buttons_right"];
16862 gantt.config.buttons_left = skinset._redefine_lightbox_buttons["buttons_left"];
16866 gantt.resetLightbox();
16869 module.exports = function(gantt) {
16870 if(!gantt.resetSkin){
16871 gantt.resetSkin = function () {
16875 gantt.skins = {};
16877 gantt.attachEvent("onGanttLayoutReady", function(){
16892 module.exports = function(gantt) {
16893 gantt.isReadonly = function (item) {
16911 module.exports = function(gantt) {
16913 gantt.config.touch_drag = 500; //nearly immediate dnd
16914 gantt.config.touch = true;
16915 gantt.config.touch_feedback = true;
16916 gantt.config.touch_feedback_duration = 1;
16917 gantt._prevent_touch_scroll = false;
16920 gantt._touch_feedback = function () {
16921 if (gantt.config.touch_feedback) {
16923 navigator.vibrate(gantt.config.touch_feedback_duration);
16927 gantt.attachEvent("onGanttReady", gantt.bind(function(){
16977 }, gantt));
16982 if(gantt.$ui.getView("timeline")){
16983 _tasks_dnd = gantt.$ui.getView("timeline")._tasks_dnd;
16993 gantt._touch_events = function (names, accessor, ignore) {
17006 gantt.eventRemove(touchHandlers[i][0], touchHandlers[i][1], touchHandlers[i][2]);
17011 touchHandlers.push([gantt.$container, names[0], function (e) {
17029 if (!gantt._prevent_touch_scroll) {
17034 gantt._touch_scroll_active = scroll_mode = true;
17036 scroll_state = gantt.getScrollState();
17040 gantt.scrollTo(scroll_state.x + dx, scroll_state.y + dy);
17041 var new_scroll_state = gantt.getScrollState();
17070 …if (!gantt._locate_css(action_start, "gantt_hor_scroll") && !gantt._locate_css(action_start, "gant…
17077 var taskId = gantt.locate(action_start);
17078 …if (_tasks_dnd && (taskId && !gantt._locate_css(action_start, "gantt_link_control") && !gantt._loc…
17084 gantt._touch_drag = true;
17086 gantt.refreshTask(taskId);
17088 gantt._touch_feedback();
17094 }, gantt.config.touch_drag);
17101 gantt._touch_drag = false;
17111 gantt.refreshTask(gantt.locate(current_target));
17114 gantt._touch_feedback();
17118 gantt._touch_scroll_active = action_mode = scroll_mode = false;
17126 var mouseEvents = gantt.$services.getService("mouseEvents");
17137 gantt.event(touchHandlers[i][0], touchHandlers[i][1], touchHandlers[i][2]);
17149 var renders = gantt._getTaskLayers();
17150 var task = gantt.getTask(taskId);
17151 if (task && gantt.isTaskVisible(taskId)) {
17154 …if (task && task.getAttribute(gantt.config.task_attribute) && task.getAttribute(gantt.config.task_…
17245 function initLayer(layer, gantt){ argument
17252 view = gantt.$ui.getView(view);
17264 var createLayerEngine = function(gantt){ argument
17265 var factory = createLayerFactory(gantt);
17268 return gantt.$services.getService("layer:" + name) || null;
17292 gantt.$services.setService("layer:" + name, function(){
17296 gantt.attachEvent("onGanttReady", function () {
17306 if(gantt.$task_data){
17307 return gantt.$task_data;
17308 }else if(gantt.$ui.getView("timeline")){
17309 return gantt.$ui.getView("timeline").$task_data;
17313 if(gantt.$task_links){
17314 return gantt.$task_links;
17315 }else if(gantt.$ui.getView("timeline")){
17316 return gantt.$ui.getView("timeline").$task_links;
17322 }, gantt);
17327 if(gantt.$task_data){
17328 return gantt.$task_data;
17329 }else if(gantt.$ui.getView("timeline")){
17330 return gantt.$ui.getView("timeline").$task_data;
17333 }, gantt);
17405 function initConfigs(gantt){ argument
17406 gantt.config.editor_types = {
17407 text: new (textEditorFactory(gantt))(),
17408 number: new (numberEditorFactory(gantt))(),
17409 select: new (selectEditorFactory(gantt))(),
17410 date: new (dateEditorFactory(gantt))(),
17411 predecessor: new (predecessorEditorFactory(gantt))(),
17412 duration: new (durationEditorFactory(gantt))()
17416 function create(gantt){ argument
17417 var keyboardMapping = getKeyboardMapping(gantt);
17495 var updateTaskDateProperties = linkedPropertiesProcessor(gantt);
17560 if (gantt.isReadonly(store.getItem(itemId))) {
17642 var item = gantt.getTask(this._itemId);
17715 updateTaskDateProperties(item, mapTo, gantt.config.inline_editors_date_processing);
17787 var moveTask = dir > 0 ? gantt.getNext : gantt.getPrev;
17788 moveTask = gantt.bind(moveTask, gantt);
17792 while (gantt.isTaskExists(nextItem) && gantt.isReadonly(gantt.getTask(nextItem))) {
17853 module.exports = function (gantt) {
17913 module.exports = function (gantt) {
17914 …ditor = __webpack_require__(/*! ./base */ "./sources/core/ui/grid/editors/editors/base.js")(gantt),
17925 dateToStr = gantt.date.date_to_str(html5DateFormat);
17928 strToDate = gantt.date.str_to_date(html5DateFormat);
18000 module.exports = function(gantt) {
18002 …ditor = __webpack_require__(/*! ./base */ "./sources/core/ui/grid/editors/editors/base.js")(gantt),
18014 return config.formatter || gantt.ext.formatters.durationFormatter();
18041 module.exports = function (gantt) {
18043 …ditor = __webpack_require__(/*! ./base */ "./sources/core/ui/grid/editors/editors/base.js")(gantt),
18082 module.exports = function (gantt) {
18084 …ditor = __webpack_require__(/*! ./base */ "./sources/core/ui/grid/editors/editors/base.js")(gantt),
18096 return config.formatter || gantt.ext.formatters.linkFormatter();
18114 function formatPredecessors(task, config, gantt) { argument
18118 var link = gantt.getLink(links[i]);
18130 if (gantt.isLinkAllowed(link)) {
18146 var link = gantt.getLink(linkId);
18179 this.get_input(node).value = formatPredecessors(value, column.editor, gantt);
18185 var task = gantt.getTask(id);
18190 gantt.batchUpdate(function () {
18192 gantt.addLink(link);
18195 gantt.deleteLink(linkId);
18198 if (gantt.autoSchedule)
18199 gantt.autoSchedule();
18205 …var taskPredecessors = parseInputString(formatPredecessors(value, column.editor, gantt), column.ed…
18223 module.exports = function(gantt) {
18224 …ditor = __webpack_require__(/*! ./base */ "./sources/core/ui/grid/editors/editors/base.js")(gantt),
18265 module.exports = function(gantt) {
18267 …ditor = __webpack_require__(/*! ./base */ "./sources/core/ui/grid/editors/editors/base.js")(gantt),
18300 module.exports = function(gantt){
18312 }else if(gantt.config.keyboard_navigation_cells){
18333 var gantt = grid.$gantt;
18335 gantt.attachEvent("onTaskClick", function (id, e) {
18336 if (gantt._is_icon_open_click(e))
18352 gantt.attachEvent("onEmptyClick", function () {
18361 gantt.attachEvent("onTaskDblClick", function (id, e) {
18373 var gantt = grid.$gantt;
18376 if(gantt.ext && gantt.ext.keyboardNavigation){
18377 var keyNav = gantt.ext.keyboardNavigation;
18379 var keyboard = gantt.constants.KEY_CODES;
18401 var keyboard = gantt.constants.KEY_CODES;
18408 case gantt.keys.edit_save:
18411 case gantt.keys.edit_cancel:
18461 var gantt = grid.$gantt;
18464 var keyNav = gantt.ext.keyboardNavigation;
18506 gantt.attachEvent("onTaskDblClick", function(id,e){
18516 gantt.attachEvent("onTaskClick", function (id, e) {
18517 if(gantt._is_icon_open_click(e))
18533 gantt.attachEvent("onEmptyClick", function () {
18543 var keyboard = gantt.constants.KEY_CODES;
18649 var gantt = grid.$gantt;
18650 gantt.focus();
18667 module.exports = function (gantt) {
18682 item.end_date = gantt.calculateEndDate(item);
18684 item.duration = gantt.calculateDuration(item);
18693 item.start_date = gantt.calculateEndDate({
18700 item.end_date = gantt.calculateEndDate(item);
18709 item.end_date = gantt.calculateEndDate(item);
18711 item.duration = gantt.calculateDuration(item);
18731 var Grid = function (parent, config, factory, gantt) { argument
18733 this.$gantt = gantt;
18743 var gantt = this.$gantt;
18744 var gridAriaAttr = gantt._waiAria.gridAttrString();
18745 var gridDataAriaAttr = gantt._waiAria.gridDataAttrString();
18752gantt._waiAria.gridScaleRowAttrString() + "></div><div class='gantt_grid_data' " + gridDataAriaAtt…
18768 var resizer = gridResize(gantt, this);
18771 …ack_require__(/*! ../mouse_event_container */ "./sources/core/ui/mouse_event_container.js")(gantt);
18784 var gantt = this.$gantt;
18787 gantt.assert(false, "Wrong " + property + " value of column " + column.name);
18974 var gantt = this.$gantt;
18978 renderer: gantt.$ui.layers.gridLine(),
18988 _addLayers: function (gantt) { argument
19063 var gantt = this.$gantt;
19064 this._mouseDelegates.delegate("click", "gantt_close", gantt.bind(function (e, id, trg) {
19076 this._mouseDelegates.delegate("click", "gantt_open", gantt.bind(function (e, id, trg) {
19089 _clearLayers: function (gantt) { argument
19284 var gantt = this.$gantt;
19305 col.name = gantt.uid() + "";
19314 …var sort = (gantt._sort && col.name == gantt._sort.name) ? ("<div class='gantt_sort gantt_" + gant…
19324 var ariaAttrs = gantt._waiAria.gridScaleCellAttrString(col, label);
19377 function createResizer(gantt, grid){ argument
19400 return function(gantt){ argument
19408 gantt.ext.inlineEditors = gantt.ext._inlineEditors.createEditors(grid);
19409 gantt.ext.inlineEditors.init();
19412 …ack_require__(/*! ../mouse_event_container */ "./sources/core/ui/mouse_event_container.js")(gantt);
19424 this.initEvents(grid, gantt);
19431 gantt.ext.inlineEditors.destructor();
19433 this.clearEvents(grid, gantt);
19436 initEvents: function (grid, gantt) {
19437 this._mouseDelegates.delegate("click", "gantt_row", gantt.bind(function (e, id, trg) {
19441 if (config.scroll_on_click && !gantt._is_icon_open_click(e))
19443 gantt.callEvent("onTaskRowClick", [id, trg]);
19445 }, gantt), grid.$grid);
19447 … this._mouseDelegates.delegate("click", "gantt_grid_head_cell", gantt.bind(function (e, id, trg) {
19450 if (!gantt.callEvent("onGridHeaderClick", [column, e]))
19456 var mouseEvents = gantt.$services.getService("mouseEvents");
19489 }, gantt), grid.$grid);
19491 this._mouseDelegates.delegate("click", "gantt_add", gantt.bind(function (e, id, trg) {
19496 this.createTask(item, id ? id : gantt.config.root_id);
19499 }, gantt), grid.$grid);
19503 clearEvents: function(grid, gantt){
19509 gantt.$grid = grid.$grid;
19510 gantt.$grid_scale = grid.$grid_scale;
19511 gantt.$grid_data = grid.$grid_data;
19514 gantt.getGridColumns = gantt.bind(grid.getGridColumns, grid);
19517 return gantt.callEvent("onColumnResizeStart", arguments);
19520 return gantt.callEvent("onColumnResize", arguments);
19523 return gantt.callEvent("onColumnResizeEnd", arguments);
19527 gantt.config.grid_width = totalWidth;
19547 function _init_dnd(gantt, grid) { argument
19548 var DnD = gantt.$services.getService("dnd");
19550 if(!grid.$config.bind || !gantt.getDatastore(grid.$config.bind)){
19559 return gantt.getDatastore(grid.$config.bind);
19563 if (gantt.defined(grid.$getConfig().dnd_sensitivity))
19566 dnd.attachEvent("onBeforeDragStart", gantt.bind(function (obj, e) {
19569 if (gantt.hideQuickInfo) gantt._hideQuickInfo();
19581 if (gantt.isReadonly(task))
19585 if (!gantt.callEvent("onRowDragStart", [id, e.target || e.srcElement, e])) {
19589 }, gantt));
19591 dnd.attachEvent("onAfterDragStart", gantt.bind(function (obj, e) {
19609 }, gantt));
19622 dnd._getGridPos = gantt.bind(function (e) {
19638 }, gantt);
19639 dnd._getTargetY = gantt.bind(function (e) {
19646 }, gantt);
19647 dnd._getTaskByY = gantt.bind(function (y, dropIndex) {
19661 }, gantt);
19662 dnd.attachEvent("onDragMove", gantt.bind(function (obj, e) {
19763 }, gantt));
19765 dnd.attachEvent("onDragEnd", gantt.bind(function () {
19779 }, gantt));
19801 function _init_dnd(gantt, grid) { argument
19802 var DnD = gantt.$services.getService("dnd");
19804 if(!grid.$config.bind || !gantt.getDatastore(grid.$config.bind)){
19813 if (gantt.defined(grid.$getConfig().dnd_sensitivity))
19816 dnd.attachEvent("onBeforeDragStart", gantt.bind(function (obj, e) {
19819 if (gantt.hideQuickInfo) gantt._hideQuickInfo();
19828 if (gantt.isReadonly(task))
19832 if (!gantt.callEvent("onRowDragStart", [id, e.target || e.srcElement, e])) {
19836 }, gantt));
19838 dnd.attachEvent("onAfterDragStart", gantt.bind(function (obj, e) {
19865 }, gantt));
19910 dnd.attachEvent("onDragMove", gantt.bind(function (obj, e) {
19914gantt.callEvent("onBeforeRowDragMove", [dnd.config.id, target.targetParent, target.targetIndex]) =…
19923 }, gantt));
19925 dnd.attachEvent("onDragEnd", gantt.bind(function () {
19942 }, gantt));
20329 function initUI(gantt){ argument
20331 var ext = initializer(gantt);
20344 var factory = uiFactory.createFactory(gantt);
20373 var layersEngine = createLayers(gantt);
20375 var inlineEditors = gridEditorsFactory(gantt);
20377 gantt.ext.inlineEditors = inlineEditors;
20378 gantt.ext._inlineEditors = inlineEditors;
20379 inlineEditors.init(gantt);
20383 mouseEvents: mouseEvents.init(gantt),
20387 return gridRenderer(gantt);
20390 return renderTaskBg(gantt);
20393 return renderTaskBar(gantt);
20396 return renderSplitTaskBar(gantt);
20399 return renderLink(gantt);
20404 return layersEngine.getDataRender(name, gantt);
20407 return layersEngine.createDataRender(config, gantt);
20433 function Cell(parent, config, factory, gantt) { argument
20442 this.$gantt = gantt;
20443 this.$domEvents = gantt._createDomEventScope();
21548 function ScrollbarCell(parent, config, factory, gantt) { argument
21559 var size = gantt.config.scroll_size;
21561 if(gantt.env.isIE){
22268 return function (gantt) { argument
22272 return gantt.$ui.getView("scrollVer");
22275 return gantt.$ui.getView("scrollHor");
22306 var mainTimeline = gantt.$ui.getView("timeline");
22308 mainTimeline.$config.hidden = mainTimeline.$parent.$config.hidden = !gantt.config.show_chart;
22310 var mainGrid = gantt.$ui.getView("grid");
22315 var showGrid = gantt.config.show_grid;
22319 gantt.config.grid_width = colsWidth;
22321 showGrid = showGrid && !!gantt.config.grid_width;
22322 gantt.config.show_grid = showGrid;
22329 if (grid_limits[0] && gantt.config.grid_width < grid_limits[0])
22330 gantt.config.grid_width = grid_limits[0];
22331 if (grid_limits[1] && gantt.config.grid_width > grid_limits[1])
22332 gantt.config.grid_width = grid_limits[1];
22333 if (mainTimeline && gantt.config.show_chart){
22335 mainGrid.$config.width = gantt.config.grid_width - 1;
22340 var skinSettings = gantt.skins[gantt.skin];
22347 gantt.config.grid_width = mainGrid.$config.original_grid_width;
22348 mainGrid.$parent.$config.width = gantt.config.grid_width;
22351 gantt.$layout._syncCellSizes(mainGrid.$parent.$config.group, gantt.config.grid_width);
22354 mainGrid.$parent.$config.width = gantt.config.grid_width;
22356gantt.$layout._syncCellSizes(mainGrid.$parent.$config.group, mainGrid.$parent.$config.width);
22362 mainGrid.$config.original_grid_width = gantt.config.grid_width;
22376 gantt._getVerticalScrollbar = this.getVerticalScrollbar;
22377 gantt._getHorizontalScrollbar = this.getHorizontalScrollbar;
22383 var scrollState = gantt.getScrollState();
22384 gantt.callEvent("onGanttScroll", [scrollState.x, oldPos, scrollState.x, newPos]);
22389 var scrollState = gantt.getScrollState();
22390 gantt.callEvent("onGanttScroll", [oldPos, scrollState.y, newPos, scrollState.y]);
22395 if (vertical && !gantt.$scroll_ver){
22396 gantt.$scroll_ver = vertical.$scroll_ver;
22399 if (horizontal && !gantt.$scroll_hor){
22400 gantt.$scroll_hor = horizontal.$scroll_hor;
22432 var grid = gantt.$ui.getView("grid");
22443 var grid = gantt.$ui.getView("grid");
22455 return gantt.callEvent("onGridResizeStart", [initialWidth]);
22459 return gantt.callEvent("onGridResize", [initialWidth, newSize]);
22465 var grid = gantt.$ui.getView("grid");
22470 var res = gantt.callEvent("onGridResizeEnd", [oldSize, newSize]);
22472 gantt.config.grid_width = newSize;
22502 return function (gantt) { argument
22533 var id = gantt.locate(e);
22538 res = !gantt.checkEvent("onTaskClick") || gantt.callEvent("onTaskClick", [id, e]);
22540 gantt.callEvent("onEmptyClick", [e]);
22548 if (id && gantt.getTask(id) && gantt.config.select_task && !gantt.config.multiselect) {
22549 gantt.selectTask(id);
22557 taskId = gantt.locate(src),
22558 linkId = gantt.locate(src, gantt.config.link_attribute);
22560 …var res = !gantt.checkEvent("onContextMenu") || gantt.callEvent("onContextMenu", [taskId, linkId, …
22602 var handlerResult = handlers[i].call(gantt, e, id, e.target || e.srcElement);
22612 var id = gantt.locate(e);
22616 …var res = !gantt.checkEvent("onTaskDblClick") || id === null || gantt.callEvent("onTaskDblClick", …
22622 if (id !== null && gantt.getTask(id)) {
22623 if (res && gantt.config.details_on_dblclick && !gantt.isReadonly()) {
22624 gantt.showLightbox(id);
22631 if (gantt.checkEvent("onMouseMove")) {
22632 var id = gantt.locate(e);
22633 gantt._last_move_event = e;
22634 gantt.callEvent("onMouseMove", [id, e]);
22655 var domEvents = gantt._createDomEventScope();
22708 function create(gantt){ argument
22715 var helper = gantt.$services.getService("mouseEvents");
22719 var mouseEvents = gantt.$services.getService("mouseEvents");
22740 module.exports = function(gantt){
22741 return gantt.config.smart_rendering && gantt._smart_render;
22758 var layerFactory = function(gantt){ argument
22760 var renderFactory = renderFactoryProvider(gantt);
22817 initLayer(layer, gantt);
22842 if(gantt.config.smart_rendering && !isLegacyRender(gantt)){
22878 gantt.attachEvent("onDestroy", function(){
22921 function createLinkRender(gantt){ argument
22944 var cssTemplate = gantt.templates.link_class ? gantt.templates.link_class(link) : "";
22949 if (config.highlight_critical_path && gantt.isCriticalLink) {
22950 if (gantt.isCriticalLink(link))
22978 gantt._waiAria.linkAttr(link, div);
23028 this.current_pos = gantt.copy(pos);
23039 var next = gantt.copy(pos);
23197 this.path.push(gantt.copy(next));
23202 point = gantt.copy(this.point());
23226 var xy = gantt.config;
23314 gantt.assert(false, "Invalid link type");
23332 var source = gantt.getTask(link.source);
23333 var target = gantt.getTask(link.target);
23350 if(gantt.getTaskType(task.type) == config.types.milestone){
23351 var milestoneHeight = gantt.getTaskHeight();
23381 var rendererFactory = function(gantt){ argument
23382 var services = gantt.$services;
23391 view = gantt.$ui.getView(layer.view);
23404 gantt.assert(false, "Invalid renderer call");
23445 if(!isLegacyRender(gantt) && getRectangle && rendererViewPort){
23446 if(isInViewPort(rendererViewPort, getRectangle(item, view, gantt))){
23447 dom = renderMethod.call(gantt, item, view, rendererViewPort);
23450 dom = renderMethod.call(gantt, item, view, rendererViewPort);
23486 if(!view || !view.$getConfig().smart_rendering || isLegacyRender(gantt)){
23511 if (!isInViewPort(viewPort, getRectangle(item, view, gantt))) {
23515 updateMethod.call(gantt, item, itemNode, view, viewPort);
23615 function createTaskRenderer(gantt) { argument
23620 var renderer = painters[gantt.getTaskType(task.type)],
23624 return defaultRenderer.call(gantt, task, view);
23626 …return renderer.call(gantt, task, function(task){ return defaultRenderer.call(gantt, task, view);}…
23631 if (gantt._isAllowedUnscheduledTask(task))
23634 if (!gantt._isTaskInTimelineLimits(task)) {
23644 var taskType = gantt.getTaskType(task.type);
23646 var padd = Math.floor((gantt.config.row_height - height) / 2);
23706 gantt._waiAria.setTaskBarAttr(task, div);
23708 var state = gantt.getState();
23710 if (!gantt.isReadonly(task)) {
23711 if (cfg.drag_resize && !gantt.isSummaryTask(task) && taskType != cfg.types.milestone) {
23770 var link = gantt.getLink(links[ln]);
23785 if (gantt.getTaskType(task.type) != gantt.config.types.milestone)
23818 if (gantt.config.drag_progress && !gantt.isReadonly(task)) {
23837 gantt.config.links.start_to_start
23840 gantt.config.links.start_to_start,
23841 gantt.config.links.finish_to_start
23847 gantt.config.links.finish_to_start,
23848 gantt.config.links.finish_to_finish
23851 gantt.config.links.finish_to_finish
23863 var state = gantt.getState();
23865 var task = gantt.getTask(itemId);
23867 if (gantt.getTaskType(task.type) == cfg.types.milestone) {
23869 }else if (gantt.getTaskType(task.type) == cfg.types.project) {
23873 css.push("gantt_bar_" + gantt.getTaskType(task.type));
23876 if (gantt.isSummaryTask(task))
23879 if (gantt.isSplitTask(task) && ((cfg.open_split_tasks && !task.$open) || !cfg.open_split_tasks)) {
23883 if (cfg.select_task && gantt.isSelectedTask(itemId)) {
23901 if (cfg.highlight_critical_path && gantt.isCriticalTask) {
23902 if (gantt.isCriticalTask(task))
23914 var allowDrag = gantt.isLinkAllowed(from_id, itemId, from_start, to_start);
23934 var state = gantt.getState();
23969 module.exports = function createTaskRenderer(gantt){ argument
23970 var defaultRender = createBaseBarRender(gantt);
24008 function createTaskBgRender(gantt){ argument
24083 if(!gantt.config.smart_rendering || isLegacyRender(gantt)){
24145 if(!viewPort || !config.smart_rendering || isLegacyRender(gantt)){
24163 var odd = gantt.getGlobalTaskIndex(item.id) % 2 !== 0;
24212 function createGridLineRender(gantt){ argument
24235 var aria = gantt._waiAria.gridAddButtonAttrString(col);
24263 …has_child = store.hasChild(item.id) && !(gantt.isSplitTask(item) && !gantt.config.open_split_tasks…
24276 var aria = gantt._waiAria.gridCellAttrString(col, textValue, item);
24285 var css = gantt.getGlobalTaskIndex(item.id) % 2 === 0 ? "" : " odd";
24291 var css_template = templates.grid_row_class.call(gantt, item.start_date, item.end_date, item);
24301 el.className = "gantt_row" + css + " gantt_row_" + gantt.getTaskType(item.type);
24316 gantt._waiAria.taskRowAttr(item, el);
24343 function createTaskRenderer(gantt){ argument
24344 var defaultRender = createBaseBarRender(gantt);
24347 …if (gantt.isSplitTask(task) && ((gantt.config.open_split_tasks && !task.$open) || !gantt.config.op…
24349 sizes = gantt.getTaskPosition(task);
24351 var sub_tasks = gantt.getChildren(task.id);
24355 var child = gantt.getTask(sub_tasks[i]);
24361 var padding = Math.floor((gantt.config.row_height - sizes.height) / 2);
24459 module.exports = function getLinkBox(item, view, gantt){ argument
24460 if(!gantt.isTaskExists(item.source)){
24464 if(!gantt.isTaskExists(item.target)){
24467 var sourceBox = barRectangle(gantt.getTask(item.source), view, gantt);
24468 var targetBox = barRectangle(gantt.getTask(item.target), view, gantt);
24585 var initLinksDND = function(timeline, gantt) { argument
24601 return gantt.getTaskType(task.type) == gantt.config.types.milestone;
24614 var services = gantt.$services;
24627 dnd.attachEvent("onBeforeDragStart", gantt.bind(function(obj,e) {
24630 if(gantt.getState().drag_id)
24637 var sid = gantt.locate(e);
24640 var t = gantt.getTask(sid);
24641 if(gantt.isReadonly(t)){
24656 dnd.attachEvent("onAfterDragStart", gantt.bind(function(obj,e) {
24657 if(gantt.config.touch) {
24658 gantt.refreshData();
24664 …var taskPos = getMilestonePosition(task, function(task){ return gantt.getTaskPosition(task);}, cfg…
24672 pos.y += gantt.config.row_height/2;
24702 if(gantt.getTaskType(task.type) == gantt.config.types.milestone){
24718 var root = gantt.$root;
24736 var offsetX = gantt.config.tooltip_offset_x || markerDefaultOffset;
24737 var offsetY = gantt.config.tooltip_offset_y || markerDefaultOffset;
24739 var scrollSize = gantt.config.scroll_size || scrollDefaultSize;
24758 dnd.attachEvent("onDragMove", gantt.bind(function(obj,e) {
24768 var targ = gantt.locate(e),
24772 var sameGantt = domHelpers.isChildOf(e.target || e.srcElement, gantt.$root);
24789 var t = gantt.getTask(targ);
24801 if(gantt.env.isEdge){ // to fix margin collapsing
24809 gantt.refreshTask(prevTarget, false);
24811 gantt.refreshTask(targ, false);
24824 dnd.attachEvent("onDragEnd", gantt.bind(function() {
24828 var type = gantt._get_link_type(drag.link_from_start, drag.link_to_start);
24831 if(link.type && gantt.isLinkAllowed(link)) {
24832 if(gantt.callEvent("onLinkCreated", [link])){
24833 gantt.addLink(link);
24840 if(gantt.config.touch) {
24841 gantt.refreshData();
24845 gantt.refreshTask(drag.link_source_id, false);
24847 gantt.refreshTask(drag.link_target_id, false);
24857 …if(gantt.isLinkAllowed(link.link_source_id, link.link_target_id, link.link_from_start, link.link_t…
24864 …var className = gantt.templates.drag_link_class(link.link_source_id, link.link_from_start, link.li…
24869gantt.templates.drag_link(link.link_source_id, link.link_from_start, link.link_target_id, link.lin…
24891 if(gantt.templates.link_direction_class){
24892 …css.push(gantt.templates.link_direction_class(link.link_source_id, link.link_from_start, link.link…
24997 gantt.attachEvent("onGanttRender", gantt.bind(function() {
25027 return function(gantt){ argument
25028 var services = gantt.$services;
25039 …ack_require__(/*! ../mouse_event_container */ "./sources/core/ui/mouse_event_container.js")(gantt);
25042 this._attachDomEvents(gantt);
25044 this._attachStateProvider(gantt, timeline);
25046 timeline._tasksDnD.init(timeline, gantt);
25047 timeline._linksDnD.init(timeline, gantt);
25055 this._clearDomEvents(gantt);
25056 this._clearStateProvider(gantt);
25062 gantt.$task = timeline.$task;
25063 gantt.$task_scale = timeline.$task_scale;
25064 gantt.$task_data = timeline.$task_data;
25065 gantt.$task_bg = timeline.$task_bg;
25066 gantt.$task_links = timeline.$task_links;
25067 gantt.$task_bars = timeline.$task_bars;
25075 _attachDomEvents: function(gantt){
25086 gantt._dhtmlx_confirm(question, title, function () {
25087 gantt.deleteLink(id);
25093 this._mouseDelegates.delegate("click", "gantt_task_link", gantt.bind(function (e, trg) {
25098 }, gantt), this.$task);
25100 this._mouseDelegates.delegate("click", "gantt_scale_cell", gantt.bind(function (e, trg) {
25101 var pos = domHelpers.getRelativeEventPosition(e, gantt.$task_data);
25102 var date = gantt.dateFromPos(pos.x);
25103 var coll = Math.floor(gantt.columnIndexByDate(date));
25105 var coll_date = gantt.getScale().trace_x[coll];
25107 gantt.callEvent("onScaleClick", [e, coll_date]);
25108 }, gantt), this.$task);
25110 … this._mouseDelegates.delegate("doubleclick", "gantt_task_link", gantt.bind(function (e, id, trg) {
25111 var id = this.locate(e, gantt.config.link_attribute);
25113 }, gantt), this.$task);
25115 …this._mouseDelegates.delegate("doubleclick", "gantt_link_point", gantt.bind(function (e, id, trg) {
25130 }, gantt), this.$task);
25133 _attachStateProvider: function(gantt, timeline){
25166 function ScaleHelper(gantt){ argument
25167 var dateHelper = gantt.date;
25168 var services = gantt.$services;
25264 format = gantt.date.date_to_str(format);
25507 curr = gantt._correct_dst_change(curr, tzOffset, step, unit);
25590 function createTaskDND(timeline, gantt) { argument
25591 var services = gantt.$services;
25602 this._domEvents = gantt._createDomEventScope();
25604 var drag = gantt.config.drag_mode;
25634 this._domEvents.attach(data, "mousemove", gantt.bind(function(e) {
25637 this._domEvents.attach(data, "mousedown", gantt.bind(function(e) {
25640 this._domEvents.attach(gantt.$root, "mouseup", gantt.bind(function(e) {
25661 task.start_date = gantt.dateFromPos(coords_x.start + shift);
25663 task.start_date = new Date(gantt.getState().min_date);
25666 task.end_date = gantt.dateFromPos(coords_x.end + shift);
25668 task.end_date = new Date(gantt.getState().max_date);
25675 …task.start_date = gantt.calculateEndDate(task.end_date, -minDurationInUnits, cfg.duration_unit, ta…
25677 …task.end_date = gantt.calculateEndDate(task.start_date, minDurationInUnits, cfg.duration_unit, tas…
25679 gantt._init_task_timing(task);
25705 var task = gantt.getTask(drag.id);
25708 var minX = gantt.posFromDate(new Date(gantt.getState().min_date));
25709 var maxX = gantt.posFromDate(new Date(gantt.getState().max_date));
25727 var new_start = gantt.dateFromPos(coords_x.start + shift),
25728 new_end = gantt.dateFromPos(coords_x.end + shift);
25730 task.start_date = new Date(gantt.getState().min_date);
25731 …task.end_date = gantt.dateFromPos(gantt.posFromDate(task.start_date) + (coords_x.end - coords_x.st…
25733 task.end_date = new Date(gantt.getState().max_date);
25734 …task.start_date = gantt.dateFromPos(gantt.posFromDate(task.end_date) - (coords_x.end - coords_x.st…
25741 var start = drag.obj_s_x = drag.obj_s_x || gantt.posFromDate(t.start_date);
25742 var end = drag.obj_e_x = drag.obj_e_x || gantt.posFromDate(t.end_date);
25759 var pos = domHelpers.getRelativeEventPosition(e, gantt.$task_data);
25785 var task = gantt.getTask(id);
25786 var original = gantt.mixin({}, task);
25787 var copy = gantt.mixin({}, task);
25789 gantt.mixin(task, copy, true);
25791 gantt.callEvent("onTaskDrag", [task.id, mode, copy, original, e]);
25792 gantt.mixin(task, copy, true);
25793 gantt.refreshTask(id);
25806 var curr_date = gantt.dateFromPos(pos.x);
25812 var task = gantt.getTask(drag.id);
25818 var selectedTasksIds = gantt.getSelectedTasks();
25823 if (gantt.isSummaryTask(task) && gantt.config.drag_project) {
25842 gantt._update_parents(drag.id);
25855 var id = gantt.locate(e);
25857 if (gantt.isTaskExists(id)) {
25858 task = gantt.getTask(id);
25861 if (gantt.isReadonly(task) || this.drag.mode) return;
25878 …if (gantt.checkEvent("onMouseDown") && gantt.callEvent("onMouseDown", [className.split(" ")[0]])) {
25885 id = gantt.locate(src);
25886 task = gantt.copy(gantt.getTask(id) || {});
25888 if (gantt.isReadonly(task)) {
25893 …if ((gantt.isSummaryTask(task) && !config.drag_project) && drag.mode != config.drag_mode.progress)…
25899 var pos = domHelpers.getRelativeEventPosition(e, gantt.$task_data);
25913 var unit = gantt.getScale().unit,
25914 step = gantt.getScale().step;
25921 if (!gantt.config.correct_work_time)
25924 if (!gantt.isWorkTime(task.start_date, undefined, task))
25925 task.start_date = gantt.calculateEndDate({
25934 if (!gantt.config.correct_work_time)
25937 if (!gantt.isWorkTime(new Date(task.end_date - 1), undefined, task))
25938 task.end_date = gantt.calculateEndDate({
25948 task.start_date = gantt.roundDate({date: task.start_date, unit: unit, step: step});
25951 task.end_date = gantt.roundDate({date: task.end_date, unit: unit, step: step});
25955 task.start_date = gantt.roundDate({date: task.start_date, unit: unit, step: step});
25957 task.end_date = gantt.calculateEndDate(task);
25966 task.start_date = gantt.getClosestWorkTime({date: task.start_date, dir: 'future', task: task});
25968 task.end_date = gantt.getClosestWorkTime({date: task.end_date, dir: 'past', task: task});
25971 gantt.correctTaskWorkTime(task);
25976 var task = gantt.getTask(taskId);
25984 if (!this._fireEvent("before_finish", drag.mode, [taskId, drag.mode, gantt.copy(drag.obj), e])) {
25989 gantt.mixin(task, drag.obj, true);
25993 gantt.refreshTask(task.id);
25997 gantt._init_task_timing(task);
26000 gantt.updateTask(task.id);
26012 var task = gantt.getTask(drag.id);
26016 if ((gantt.isSummaryTask(task) && config.drag_project) || (this._isMultiselect())) {
26070 …if (!cfg["drag_" + drag.mode] || !gantt.callEvent("onBeforeDrag", [id, drag.mode, e]) || !this._fi…
26074 var task = gantt.getTask(id);
26075 if (gantt.isReadonly(task)){
26081 var selectedTasksIds = gantt.getSelectedTasks();
26083 helpers.forEach(selectedTasksIds, gantt.bind(function(taskId) {
26084 var selectedTask = gantt.getTask(taskId);
26085 …if (gantt.isSummaryTask(selectedTask) && gantt.config.drag_project && drag.mode == cfg.drag_mode.m…
26088 this.dragMultiple[taskId] = gantt.mixin({
26090 obj: gantt.copy(selectedTask)
26096 if (gantt.isSummaryTask(task) && gantt.config.drag_project && drag.mode == cfg.drag_mode.move) {
26099 gantt.callEvent("onTaskDragStart", []);
26104 gantt.assert(this._events[stage], "Invalid stage:{" + stage + "}");
26108 gantt.assert(trigger, "Unknown after drop mode:{" + mode + "}");
26109 gantt.assert(params, "Invalid event arguments");
26112 if (!gantt.checkEvent(trigger))
26115 return gantt.callEvent(trigger, params);
26130 …return gantt.config.drag_multiple && !!(gantt.getSelectedTasks && gantt.getSelectedTasks().length …
26133 gantt.eachTask(function(child) {
26134 this.dragMultiple[child.id] = gantt.mixin({
26136 obj: gantt.copy(child)
26152 init: function(timeline, gantt) {
26153 _tasks_dnd = createTaskDND(timeline, gantt);
26156 return _tasks_dnd.init(gantt);
26187 var Timeline = function(parent, config, factory, gantt){ argument
26189 this.$scaleHelper = new ScaleHelper(gantt);
26190 this.$gantt = gantt;
26407 _attachLayers: function(gantt){
26526 _clearLayers: function(gantt){
26886 var gantt = this.$gantt;
26887 this._clearLayers(gantt);
26963 var uiFactory = function createFactory(gantt){ argument
27019 var view = new creator.create(parent, config, this, gantt);
27027 view.$id = config.id || gantt.uid();
27038 view.$id = gantt.uid();
27084 module.exports = function(gantt){
27101 gantt._waiAria = {
27115 return gantt._waiAria.getAttributeString({"aria-label": dateString});
27123 …div.setAttribute("aria-label", stripHTMLLite(gantt.templates.tooltip_text(task.start_date, task.en…
27129 div.setAttribute("aria-selected", gantt.isSelectedTask(task.id) ? "true" : "false");
27135 if(!gantt.isReadonly(task) && gantt.config.drag_move){
27136 if(task.id != gantt.getState().drag_id){
27148 if(!gantt.isReadonly(task) && gantt.config.order_branch){
27156 if(gantt.hasChild(task.id)){
27163 var linkTypes = gantt.config.links;
27168 …var content = gantt.locale.labels.link + " " + gantt.templates.drag_link(link.source, fromStart, …
27171 if(gantt.isReadonly(link)){
27195 …return this.getAttributeString({"role":"button", "aria-label":gantt.locale.labels[buttonName], "ta…
27207 label = gantt.locale.labels.years;
27210 label = gantt.locale.labels.months;
27213 label = gantt.locale.labels.days;
27216 label = gantt.locale.labels.hours + gantt.locale.labels.minutes;
27222 return gantt._waiAria.getAttributeString({"aria-label": label});
27226 …return this.getAttributeString({"aria-label": gantt.locale.labels.column_duration, "aria-valuemin"…
27230 …return [" role='treegrid'", gantt.config.multiselect ? "aria-multiselectable='true'" : "aria-multi…
27241 attrs = this.getAttributeString({"role":"button", "aria-label": gantt.locale.labels.new_task});
27249 if(gantt._sort && gantt._sort.name == column.name){
27250 if(gantt._sort.direction == "asc"){
27268 if(!column.editor || gantt.isReadonly(task)){
27276 return this.getAttributeString({"role":"button", "aria-label": gantt.locale.labels.new_task});
27310 return gantt._waiAria.getAttributeString({"role":"button", "aria-label":label, "tabindex":"0"});
27327 return !gantt.config.wai_aria_attributes;
27330 for(var i in gantt._waiAria){
27331 gantt._waiAria[i] = (function(payload){
27338 })(gantt._waiAria[i]);
27397 var calendarArgumentsHelper = function(gantt){ argument
27410 gantt.assert(false, "Invalid date argument for getWorkHours method");
27436 processedConfig.unit = processedConfig.unit || gantt.config.duration_unit;
27439 gantt.assert(false, "Invalid date argument for isWorkTime method");
27469 processedConfig.unit = config.unit || gantt.config.duration_unit;
27472 gantt.assert(false, "Invalid date argument for getClosestWorkTime method");
27493 config.unit = config.unit || gantt.config.duration_unit;
27494 config.step = config.step || gantt.config.duration_step;
27498 gantt.assert(false, "Invalid start_date argument for getDuration method");
27503 gantt.assert(false, "Invalid end_date argument for getDuration method");
27556 processedConfig.unit = processedConfig.unit || gantt.config.duration_unit;
27557 processedConfig.step = processedConfig.step || gantt.config.duration_step;
27560 gantt.assert(false, "Invalid start_date argument for calculateEndDate method");
27585 function CalendarManager (gantt){ argument
27586 this.$gantt = gantt;
27731 var gantt = this.$gantt;
27732 if (!calendar && gantt.config.inherit_calendar && gantt.isTaskExists(task.parent)){
27734 gantt.eachParent(function(parent){
27736 if(gantt.isSummaryTask(parent)){
27826 function CalendarWorkTimeStrategy(gantt, argumentsHelper){ argument
27828 this.$gantt = gantt;
28421 function CalendarDisabledTimeStrategy(gantt, argumentsHelper){ argument
28423 this.$gantt = gantt;
28750 module.exports = function (gantt) {
28751 var manager = new CalendarManager(gantt),
28754 utils.mixin(gantt, facade);
28767 module.exports = function(gantt) {
28768 gantt.skins.broadway = {
28798 module.exports = function(gantt) {
28799 gantt.skins["contrast_black"] = {
28823 module.exports = function(gantt) {
28824 gantt.skins["contrast_white"] = {
28848 module.exports = function(gantt) {
28849 gantt.skins.material = {
28867 gantt.attachEvent("onAfterTaskDrag", function (id) {
28868 var t = gantt.getTaskNode(id);
28891 module.exports = function(gantt) {
28892 gantt.skins.meadow = {
28916 module.exports = function(gantt) {
28917 gantt.skins.skyblue = {
28941 module.exports = function(gantt) {
28942 gantt.skins.terrace = {
28981 var base = __webpack_require__(/*! ./core/gantt */ "./sources/core/gantt.js");
28982 var gantt = window.gantt = base();
28983 exports.gantt = gantt;
28984 warnings(gantt);
28985 exports.default = gantt;
28999 module.exports = function (gantt) {
29000 gantt.locale = {
29935 function copyLinkIdsArray(gantt, linkIds, targetHash){ argument
29937 if(gantt.isLinkExists(linkIds[i])){
29938 targetHash[linkIds[i]] = gantt.getLink(linkIds[i]);
29943 function copyLinkIds(gantt, task, targetHash){ argument
29944 copyLinkIdsArray(gantt, task.$source, targetHash);
29945 copyLinkIdsArray(gantt, task.$target, targetHash);
29948 function getSubtreeLinks(gantt, rootId){ argument
29951 if(gantt.isTaskExists(rootId)){
29952 copyLinkIds(gantt, gantt.getTask(rootId), res);
29955 gantt.eachTask(function(child){
29956 copyLinkIds(gantt, child, res);
29962 function getSubtreeTasks(gantt, rootId){ argument
29965 gantt.eachTask(function(child){