I’m currently trying to include projects in my gantt chart, but I think they might have some issues.
First of all, I’m using the build from this topic because I was facing the same issues with IE.
When a new project is created, I can still drag and drop the start and end dates on the chart and it still behaves as a normal task (meaning that subtasks/child tasks do not affect the start and end of the project) until the page is refreshed or the chart data reloaded. This behavior is the same in this sample.
I’m trying to chain tasks when a link is created from one’s end to another’s start (meaning that task2.start_date = task1.end_date when “task1—>task2”) and I have to make it work if a task is chained with a project. My code seems to be working since the subtasks of the project are actually shifted in time correctly, but sometimes the project just disappears from the display and I have to reload the page or at least the gantt data to get it back on screen. Note that after the reload, all the changes are taken into account correctly.
I have tried to call refreshTask() in many different events to try to fix these problems, but I’m beginning to get stuck… Is there anything else I can try? Or anything you could do on your side?
There also seems to be an issue when updating projects via a call to updateTask or when changing the progress of a project (which internally calls updateTask I think):
After the first update of the project, the start_date and end_date are set to an empty string and any further action on the project causes errors. For instance, if I try to change the progress of a project or if I change a subtask of the project, the project disappears from the chart or I get errors such as “Invalid day index”.
The problems seems indeed to be fixed, but now if a project doesn’t have any child and is itself child of the root node, I get a “Task not found id=0” in the upper right corner of the screen.
I think the problem comes from the gantt._update_parents which calls gantt._default_task_date with wrong parameters
Also, I figured out that with this new build, the task order is updated automatically regardless of the client’s config (after each update, one “update” and one “order” requests are sent). Is this the expected behavior? I don’t remember whether the client behaved this way with the older release or not.
Anyway, I was forced to allow reording on the server side ($gantt->enable_order(true); in the php page) to make updates work fine again, otherwise the updates were sometimes not correctly saved on the server.
One last thing I noticed was that one of my “root” projects behaved strangely when its branch was closed: the end_date was correctly displayed but the start_date and duration were wrong. My chart was set as follows :
Only one root project with only one sub-project. In this sub-project, only one task. The root project, when closed, was about twice the expected length.
(And sorry for all these posts in a row, I didn’t find any option to edit my previous posts)
Yes, we’ve confirmed the bug, should be fixed in the attached version.
Currently the gantt sends the order if the task has been moved using UI or gantt.moveTask method, the previously attached build has bug caused order to be send always.
You can try the attached build of the codebase