Project

General

Profile

Actions

Feature #2024

open

gantt chart editing

Added by Hiroyuki Yoshioka almost 16 years ago. Updated 6 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Gantt
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Resolution:

Description

This is a patch to edit gantt chart.
You can move a bar and change start or due date.


Files

gantt-editting-r1928.patch (13.3 KB) gantt-editting-r1928.patch against revision 1928 Hiroyuki Yoshioka, 2008-10-12 01:54
gantt-editting-r2478.patch (17.7 KB) gantt-editting-r2478.patch Hiroyuki Yoshioka, 2009-02-18 03:17
gantt-editting-r2645.patch (17.3 KB) gantt-editting-r2645.patch Hiroyuki Yoshioka, 2009-04-04 10:09
gantt-editting-r2671.patch (21.5 KB) gantt-editting-r2671.patch Hiroyuki Yoshioka, 2009-04-18 09:20
gantt-editting-r2671-2.patch (21.7 KB) gantt-editting-r2671-2.patch Hiroyuki Yoshioka, 2009-04-19 11:39
pb-gantt-edit-r2671.PNG (89.7 KB) pb-gantt-edit-r2671.PNG gantt chart edition problem loic Le Gallou, 2009-04-29 18:26
pb-gantt-edit_404err.jpg (20.7 KB) pb-gantt-edit_404err.jpg Gannt edit error when moving a bar Andrey Kostrov, 2009-08-12 13:38
gantt-editting-fixed-display-trouble.patch (21.7 KB) gantt-editting-fixed-display-trouble.patch Hiroyuki Yoshioka, 2009-10-17 18:37
gantt-editting-r2924.patch (20.7 KB) gantt-editting-r2924.patch Hiroyuki Yoshioka, 2009-10-17 18:46
gantt_edit_0.9.3_stable_3671.patch (20.7 KB) gantt_edit_0.9.3_stable_3671.patch gantt editting patch for v0.9.3 (r_3671) Carlos Calvo, 2010-04-15 14:54
gantt_edit_r3764.patch (20.7 KB) gantt_edit_r3764.patch Hiroyuki Yoshioka, 2010-05-29 17:57
gantt_edit_v1-1-0.patch (33.1 KB) gantt_edit_v1-1-0.patch Hiroyuki Yoshioka, 2011-02-13 16:08
gantt_edit_v1-1-1.patch (33.7 KB) gantt_edit_v1-1-1.patch Hiroyuki Yoshioka, 2011-02-26 17:16
gantt_edit_v1-1-1_error.png (79.5 KB) gantt_edit_v1-1-1_error.png Chris Darts, 2011-02-28 13:30
gantt_edit_2_v1-1-1.patch (34.5 KB) gantt_edit_2_v1-1-1.patch Hiroyuki Yoshioka, 2011-03-05 16:16
gantt.rb (48.6 KB) gantt.rb Masayuki Shibata, 2011-04-22 13:57
gantt-display.png (171 KB) gantt-display.png Gantt Render Issue steve borgelt, 2011-05-18 00:29
gantt_edit_5_v1-1-1.patch (35.5 KB) gantt_edit_5_v1-1-1.patch Chris Darts, 2011-05-20 10:49
gantt_edit_v1-1-2.patch (53.9 KB) gantt_edit_v1-1-2.patch Hiroyuki Yoshioka, 2011-05-29 13:13
gantt-chart-editing-v1-2-1-src.zip (51.6 KB) gantt-chart-editing-v1-2-1-src.zip This is NOT a patch file! Mitsuo Ohtsuka, 2011-10-20 21:57
gantt_edit_v1-3-3.patch (37.9 KB) gantt_edit_v1-3-3.patch Jun NAITOH, 2012-06-16 02:34
gantt_edit_v1.4.3.patch (39.4 KB) gantt_edit_v1.4.3.patch Toshi MARUYAMA, 2012-06-16 07:06
gantt_edit-trunk-r9835.diff (39.1 KB) gantt_edit-trunk-r9835.diff Toshi MARUYAMA, 2012-06-16 07:56
gantt_edit_v1.4.4-ts.patch (42 KB) gantt_edit_v1.4.4-ts.patch Anonymous, 2012-07-20 13:32
gantt_edit.trunk-r10055.diff (45.6 KB) gantt_edit.trunk-r10055.diff Toshi MARUYAMA, 2012-07-20 15:39
trunk-r10066.diff (43 KB) trunk-r10066.diff Toshi MARUYAMA, 2012-07-21 17:36
stay.png (25.7 KB) stay.png Toshi MARUYAMA, 2012-07-21 17:36
not-change-color.png (20.8 KB) not-change-color.png Toshi MARUYAMA, 2012-07-21 17:36
2024-moving-gantt-bar.patch (39 KB) 2024-moving-gantt-bar.patch Yuichi HARADA, 2020-11-27 07:20
test-2024-moving-gantt-bar-patch.gif (563 KB) test-2024-moving-gantt-bar-patch.gif Mizuki ISHIKAWA, 2021-01-19 07:12
2024-moving-gantt-bar-v2.patch (42.2 KB) 2024-moving-gantt-bar-v2.patch Yuichi HARADA, 2021-02-16 08:19
0001-Moving-gantt-bar.patch (38 KB) 0001-Moving-gantt-bar.patch Yuichi HARADA, 2021-02-18 02:41
0002-Delete-unused-PNG-images.patch (5.04 KB) 0002-Delete-unused-PNG-images.patch Yuichi HARADA, 2021-02-18 02:41
0003-Identify-the-subject-and-taskbar-line.patch (4.59 KB) 0003-Identify-the-subject-and-taskbar-line.patch Yuichi HARADA, 2021-02-18 02:41
0001-refs-2024-integrate-gantt-change_duration.patch (44.5 KB) 0001-refs-2024-integrate-gantt-change_duration.patch Taro Matsuzawa, 2024-03-26 07:49

Related issues

Related to Redmine - Feature #15396: Move related tasks in GanttNew

Actions
Has duplicate Redmine - Feature #1806: Gantt EditingClosed2008-08-23

Actions
Has duplicate Redmine - Feature #3062: Interactive gantt chart featureClosed2009-03-27

Actions
Follows Redmine - Feature #6276: Gantt Chart rewriteClosedEric Davis2010-09-03

Actions
Actions #1

Updated by Ludovic Gasc almost 16 years ago

+1

Actions #2

Updated by Markus Knittig almost 16 years ago

+1

Actions #3

Updated by Mischa The Evil almost 16 years ago

I've been experimenting with this patch on a checkout of Redmine trunk r2167. It seems like it could be a great improvement, though this patch is not yet feature complete:
  • the view doesn't handle issues which have been assigned to a target version (which itself has a set due date) but are missing a specific start- and/or due date. Such results in an error like this:
    Processing IssuesController#gantt (for 192.168.1.2 at 2008-12-25 01:30:30) [GET]
      Session ID: a8fdc48242b0d8a394ae19afefca3730
      Parameters: {"project_id"=>"test1", "action"=>"gantt", "controller"=>"issues"}
    Rendering template within layouts/base
    Rendering issues/gantt.rhtml
    
    ActionView::TemplateError (You have a nil object when you didn't expect it!
    The error occurred while evaluating nil.<=) on line #271 of issues/gantt.rhtml:
    268: top = headers_height + 10
    269: @gantt.events.each do |i| 
    270:   if i.is_a? Issue 
    271:        i_left, i_width, l_width, d_width = get_position(i, @gantt.date_from, @gantt.date_to, zoom)
    272:     %>
    273:   <div id="ev_<%=i.id%>" style="position:absolute;left:<%= i_left %>px;top:<%= top %>px;padding-top:3px;height:18px;width:<%= i_width+100 %>px;" class="handle">
    274:     <div id="task_todo_<%=i.id%>" style="float:left; width:<%= i_width %>px;" class="task task_todo"> </div>
    

    which (for the due date only) can be fixed by using i.due_before instead of i.due_date in the view for these issues (see changes in r1455).
  • followup of above: the view should handle issues with an assigned target version (which itself has a set due date) by using the due date from the targetted version as the fixed due date of the issue (so without calendar link).
  • the gantt-objects shouldn't be draggable (to the right) when the issue due date is fixed by an assigned target version's due date. Only the start date should be changable by dragging it to the left.
  • issue's due dates should be marked when it's linked against a target version's due date.

Looking at the above sum I'm guessing that I am probably able to implement the changes myself in some time. Probably most needed enhancements could be made by adding some nested if i.due_date?-structures. I'll see what I can do...

Greetings...

Actions #4

Updated by Hiroyuki Yoshioka over 15 years ago

I'm sorry for the delay in my reply.
I overlooked your comment.

How about this patch?

The changes are below:
  • The view can handle issues which have been assigned to a target version (which itself has a set due date).
  • Issue's version is displayed when it's linked against a target version's due date.
  • Check issue's dependencies and update other bar when the date is changed.
Actions #5

Updated by Mischa The Evil over 15 years ago

Hiroyuki Yoshioka wrote:

I'm sorry for the delay in my reply.
I overlooked your comment.

Never mind. Appreciate your efforts on this issue already... ;)

How about this patch?

The changes are below:
  • The view can handle issues which have been assigned to a target version (which itself has a set due date).
  • Issue's version is displayed when it's linked against a target version's due date.
  • Check issue's dependencies and update other bar when the date is changed.

This seems to be solving most (or all) issues I've ran into when testing this. As soon as I have my devel-deployment updated to current trunk (currently stuck at r2167) I'll start some more tests on this patch...

Actions #6

Updated by Enderson Maia over 15 years ago

+1

Maybe you should get some ideas from the ClokingIT code, if the license permits it.

Code : http://wiki.clockingit.com/wiki:source
Screenshots : http://www.clockingit.com/screenshots

There's a video showing the interactive gantt chart.

Actions #7

Updated by Mischa The Evil over 15 years ago

Mischa The Evil wrote:

Hiroyuki Yoshioka wrote:

How about this patch?

The changes are below:
  • The view can handle issues which have been assigned to a target version (which itself has a set due date).
  • Issue's version is displayed when it's linked against a target version's due date.
  • Check issue's dependencies and update other bar when the date is changed.

This seems to be solving most (or all) issues I've ran into when testing this. As soon as I have my devel-deployment updated to current trunk (currently stuck at r2167) I'll start some more tests on this patch...

I've tested the updated patch against trunk at r2641 and it seems to work (very) fine by now. All the mentioned issues are handled.
Only one last thing that comes up by now: the changes in the issue's start-/due-dates aren't reflected as issue-journals [ - sic - ] project-activity.

HTH... ;-)

Actions #8

Updated by Hiroyuki Yoshioka over 15 years ago

Mischa The Evil wrote:

I've tested the updated patch against trunk at r2641 and it seems to work (very) fine by now. All the mentioned issues are handled.
Only one last thing that comes up by now: the changes in the issue's start-/due-dates aren't reflected as issue-journals [ - sic - ] project-activity.

Hi, thank you for your test!
How about this patch?

Actions #9

Updated by loic Le Gallou over 15 years ago

great feature ! one small bug : after moving an issue, dates are correctly updated (in the second column), but in the calendar the date is the previous value (not the new one).

It would be also nice to be able to change the start and end of an issue directly with the mouse.

Actions #10

Updated by Hiroyuki Yoshioka over 15 years ago

loic Le Gallou wrote:

great feature ! one small bug : after moving an issue, dates are correctly updated (in the second column), but in the calendar the date is the previous value (not the new one).

It would be also nice to be able to change the start and end of an issue directly with the mouse.

Thank you for the bug report.
Could you try this new patch?

Actions #11

Updated by Hiroyuki Yoshioka over 15 years ago

Hiroyuki Yoshioka wrote:

Thank you for the bug report.
Could you try this new patch?

The patch has some bugs...
  • It does't show error messages.
  • It observes version objects.

Here is the new patch.

Actions #12

Updated by Harold Uribe over 15 years ago

Hello, how to install this patch in a Bitnami Redmine Stack in Windows??? I download a GNU Patch Utility but fail.

Actions #13

Updated by loic Le Gallou over 15 years ago

Hi,

I've tried this new version (on redmine trunk revision r2671) but I face some display troubles of the gantt chart (see screenshot)

Actions #14

Updated by Yohann Monnier over 15 years ago

The same for me.

All design is broken in the gantt view.

Actions #15

Updated by Hans Kazan over 15 years ago

Yohann Monnier wrote:

The same for me.

All design is broken in the gantt view.

I love the idea and the possibilities but it lacks stability on r2671 it works.
On other versions its broken by updates and other plugins.

Is there a chance that this would make it to the core? Or a plugin if that is not feasible?

Actions #16

Updated by Hiroyuki Yoshioka over 15 years ago

Yohann Monnier wrote:

The same for me.

All design is broken in the gantt view.

Hmm..
I tested gantt-editting-r2671-2.patch on redmine trunk revision r2671 and r2819, but it works for me.
What kind of issues do you create?
And could you send a html source when the gantt chart is broken?

Actions #17

Updated by Andrey Kostrov about 15 years ago

Hiroyuki Yoshioka wrote:

This is a patch to edit gantt chart.
You can move a bar and change start or due date.

The feature is really great,
but when I use the patch on Redmine 0.8.4 (Bitnami Redmine Stack 0.8.4-0), and try to move a bar, I get this:

Gannt edit error when moving a bar

I did try to remove all the plugins, but it's the same.
Additionally, on Bitnami Redmine Stack 0.8.4-1 the chart is broken as on pb-gantt-edit-r2671.PNG.

Is there any solution?

Actions #18

Updated by Andrew Rudenko about 15 years ago

any news for the latest r2904?
It would be great to have the patch for the latest revision.

thanks in advance!

Actions #19

Updated by Hiroyuki Yoshioka almost 15 years ago

Andrey Kostrov wrote:

I did try to remove all the plugins, but it's the same.
Additionally, on Bitnami Redmine Stack 0.8.4-1 the chart is broken as on pb-gantt-edit-r2671.PNG.

Is there any solution?

I'm sorry for the delay in my reply.
I found a bug finally.
Could you try this new patch?
I tested on Bitnami Redmine 0.8.5.

Actions #20

Updated by Hiroyuki Yoshioka almost 15 years ago

Andrew Rudenko wrote:

any news for the latest r2904?
It would be great to have the patch for the latest revision.

thanks in advance!

Hi, I made a patch for the r2924.
See the file gantt-editting-r2924.patch.

Actions #21

Updated by Andrew Rudenko almost 15 years ago

Hiroyuki Yoshioka wrote:

Hi, I made a patch for the r2924.
See the file gantt-editting-r2924.patch.

Thanks a lot! It is I needed for.

Actions #22

Updated by Eric Davis almost 15 years ago

Just wanted to let everyone here know, I have a huge rewrite of the Gantt chart I'm working on. It has a bunch of new features and I removed a lot of duplicated code (HTML, PDF, and PNG rendering where duplicated). It's still being tested and could use some optimization but I'm hoping to have it ready in the next month or two.

Actions #23

Updated by Hiroyuki Yoshioka almost 15 years ago

Eric Davis wrote:

Just wanted to let everyone here know, I have a huge rewrite of the Gantt chart I'm working on. It has a bunch of new features and I removed a lot of duplicated code (HTML, PDF, and PNG rendering where duplicated). It's still being tested and could use some optimization but I'm hoping to have it ready in the next month or two.

It sounds great.
I'm looking forward to the release.
:)

Actions #24

Updated by Andrew Rudenko almost 15 years ago

Eric Davis wrote:

Just wanted to let everyone here know, I have a huge rewrite of the Gantt chart I'm working on. It has a bunch of new features and I removed a lot of duplicated code (HTML, PDF, and PNG rendering where duplicated). It's still being tested and could use some optimization but I'm hoping to have it ready in the next month or two.

sure, sounds very good,
waiting for the release :)

as for patch, it stopped to redraw chart when changed due_date from calendar element, and it is redrawn after refreshing the page with F5.

Actions #25

Updated by loic Le Gallou over 14 years ago

Eric Davis wrote:

Just wanted to let everyone here know, I have a huge rewrite of the Gantt chart I'm working on. It has a bunch of new features and I removed a lot of duplicated code (HTML, PDF, and PNG rendering where duplicated). It's still being tested and could use some optimization but I'm hoping to have it ready in the next month or two.

One remark about the (nice) plugin initialised by Hiroyuki Yoshioka : when moving an issue with the mouse, the modification is done immediately, so the issue's history is updated. This is fine if you are sure of what you are doing (for example task planning is already fixed and you just apply it in redmine). My point of view is that the gantt char edition feature using the mouse is especially usefull when you are trying to find the best planning for your tasks. In that case, you'll probably have to move each issue several times before reaching a satisfying planning. This will cause a huge list of "date changement" in the history, which is not relevant. My suggestion is to have a "validate" button which will apply the Gantt Chart modifications when we are satisfied with the planning.

This is a user feedback, I don't know if it easy to do ;-)

Actions #26

Updated by Guillaume Pellegrin over 14 years ago

Eric Davis wrote:

Just wanted to let everyone here know, I have a huge rewrite of the Gantt chart I'm working on. It has a bunch of new features and I removed a lot of duplicated code (HTML, PDF, and PNG rendering where duplicated). It's still being tested and could use some optimization but I'm hoping to have it ready in the next month or two.

Hi Eric,
I hope you are doing well and successfully handle your multiple redmine projects...
Did you manage to move forward on this one? Hiroyuki's patch is now a vital feature for my team but I struggle each time I want to upgrade Redmine trunk, so your support in this (especially in including it in the trunk?) would be great...
Thanks for feedback!

Actions #27

Updated by Andrew Rudenko over 14 years ago

Guillaume Pellegrin wrote:

Eric Davis wrote:

Just wanted to let everyone here know, I have a huge rewrite of the Gantt chart I'm working on. It has a bunch of new features and I removed a lot of duplicated code (HTML, PDF, and PNG rendering where duplicated). It's still being tested and could use some optimization but I'm hoping to have it ready in the next month or two.

Hi Eric,
I hope you are doing well and successfully handle your multiple redmine projects...
Did you manage to move forward on this one? Hiroyuki's patch is now a vital feature for my team but I struggle each time I want to upgrade Redmine trunk, so your support in this (especially in including it in the trunk?) would be great...
Thanks for feedback!

sure Eric, it would be very appreciated.
--andrew

Actions #28

Updated by Eric Voisard over 14 years ago

I just realized how useful this feature would be during the planning of a project, especially if, as Loic suggested, it was possible to commit all changes at once when we're happy with actual plan. Hiroyuki, would it be possible to include this feature?

As for Eric's rewrite vs Hiroyuki's patch: would both be compatible, mutually-exclusive or redundant?

As always, thanks for all your work, guys!

Eric

Actions #29

Updated by Hiroyuki Yoshioka over 14 years ago

loic Le Gallou wrote:

One remark about the (nice) plugin initialised by Hiroyuki Yoshioka : when moving an issue with the mouse, the modification >is done immediately, so the issue's history is updated. This is fine if you are sure of what you are doing (for example >task planning is already fixed and you just apply it in redmine). My point of view is that the gantt char edition feature >using the mouse is especially usefull when you are trying to find the best planning for your tasks. In that case, you'll >probably have to move each issue several times before reaching a satisfying planning. This will cause a huge list of "date >changement" in the history, which is not relevant. My suggestion is to have a "validate" button which will apply the Gantt >Chart modifications when we are satisfied with the planning.

Thank you for your suggestion.
It is good idea.

Eric Voisard wrote:

I just realized how useful this feature would be during the planning of a project, especially if, as Loic suggested, it was possible to commit all changes at once when we're happy with actual plan. Hiroyuki, would it be possible to include this feature?

It wouble be possible, but I think I should wait for Eric's rewrite.

Actions #30

Updated by Eric Davis over 14 years ago

Eric Voisard wrote:

As for Eric's rewrite vs Hiroyuki's patch: would both be compatible, mutually-exclusive or redundant?

They would probably work together but I've rearranged so much of the Gantt chart that there will be some merging needed.

Actions #31

Updated by Yohann Monnier over 14 years ago

Eric Hulser Davis : Where can i find your rewrite ? is this plugin will be integrated to the core of redmine ?

Actions #32

Updated by S Reid over 14 years ago

Eric Hulser Davis : Any news on the likely date of the new gantt chart and what the features will be ?

Actions #33

Updated by Eric Davis over 14 years ago

  • Category set to Issues

Yohann Monnier wrote:

Eric Hulser Davis : Where can i find your rewrite ? is this plugin will be integrated to the core of redmine ?

It's in a client's Redmine so I can easily extract it. It is a core modification, there isn't any way to do this from a plugin except for rewriting the core classes.

Sandy Reid wrote:

Eric Hulser Davis : Any news on the likely date of the new gantt chart and what the features will be ?

No likely date but I think we are going to extract some of their private features in March so I can try to include the gantt changes with them. (We have a bunch of new LDAP features coming in too)

Actions #34

Updated by Carlos Calvo over 14 years ago

Here it goes an update of the patch for the latest stable version, 0.9.3.
Kind of useful this gantt editting specially for PM!

Actions #35

Updated by Andrew Rudenko over 14 years ago

what about development (trunk) branch?
starting from r3695 gantts moved into the separated controller.
can anyone help to adopt the latest patch for trunk?

I tried but had no success. I have a leak of skills.

Any help will be appreciated.

Regards,
--andrew

Actions #36

Updated by Andrew Rudenko over 14 years ago

any lucks so far?

Actions #37

Updated by Ben Senior over 14 years ago

Hi, I'm also very interested in this :-) I've moved my team over to redmine, using the redmine-sprints plugin... but the lack of Gantt chart planning means I'm still dependent on GanttProject :( Looking forward to hearing new news!

Actions #38

Updated by Hiroyuki Yoshioka over 14 years ago

Andrew Rudenko wrote:

any lucks so far?

Hi, Andrew.
Try this patch.
See the file gantt-editting-r3764.patch.

Actions #39

Updated by Andrew Rudenko over 14 years ago

Hiroyuki Yoshioka wrote:

Hi, Andrew.
Try this patch.
See the file gantt-editting-r3764.patch.

Hi, Hiroyuki.

Your patch is perfect! It has been easily applied and tested. Your help appreciated much.

Thanks,
--andrew

Mood: thankful & happy

Actions #40

Updated by Eric Davis about 14 years ago

Did a quick review of gantt_edit_r3764.patch:

  • missing tests
  • logic in the controller should be moved to the moved
  • javascript assumes Redmine is running at the domain root and uses a hardcoded url to '/issues'. Should use the Rails url helpers
  • routing doesn't follow the REST patterns
Actions #41

Updated by Mischa The Evil about 14 years ago

  • Category changed from Issues to Gantt
Actions #42

Updated by seunghyun yi over 13 years ago

Hi, Hiroyuki. and Eric

I want this Patch in Version 1.0.2 or 1.1.0.

How do this Patch?

and using want forever this Patch in next version
(ex : 1.2.x, 1.3.x, 2.0.x etc...)

Actions #43

Updated by seunghyun yi over 13 years ago

  • Assignee set to Hiroyuki Yoshioka

Let me ask you one more thing.
When I modify Work schedules on Gantt Chart it updates the whole Redmine schedule real time. Is there an way to throw in an 'apply' button so the schdule only updates when I click it?

Actions #44

Updated by Hiroyuki Yoshioka over 13 years ago

Hi, seunghyun.

I will try to create a patch for 1.1.0.
Wait for several days.

Hi, Eric.

Thank you for your review.

I'm looking your new code.
Your rewrite is very good :)

Actions #45

Updated by Lars P. over 13 years ago

Oh,damn
I so want to see this asa a part of the core of Redmine.
One of the few things RM lacks before beeing a complete project management web application.

Actions #46

Updated by Yohann Monnier over 13 years ago

I agree. This should be completed by some features (arrow between tasks for dependencies) and inserted in the core of redmine. This is a must have !

Thank you for your work !

Actions #47

Updated by Hiroyuki Yoshioka over 13 years ago

I made a patch for version 1.1.0.
See the file gantt_edit_v1-1-0.patch.

There are many changes internally.
Bug reports will be appreciated.

I agree. This should be completed by some features (arrow between tasks for dependencies) and inserted in the core of redmine. This is a must have !

Thank you, Yohann.
I hope it will be someday.

Actions #48

Updated by Hiroyuki Yoshioka over 13 years ago

seunghyun yi wrote:

Let me ask you one more thing.
When I modify Work schedules on Gantt Chart it updates the whole Redmine schedule real time. Is there an way to throw in an 'apply' button so the schdule only updates when I click it?

I'll think about it.
But it is a little bit difficult.
The problem is the method of caching data before apply without updating database,
and the collision with other users operation.

Actions #49

Updated by Chris Darts over 13 years ago

I've just run this patch against v1.1.1 as it works perfectly. Great addition to include show the start and due date as columns in the Gantt chart as well.

My only other recommendation would be to have a column to show Assignee (there may be a plugin or patch already that I'm not aware of).

The other outstanding improvement would be to allow administrators to specify the working week + holidays to avoid tasks getting scheduled on weekends or other non-working days. I see this is being suggested with feature #2161.

Thanks again for this great patch!

Actions #50

Updated by Chris Darts over 13 years ago

I've just looked through the roadmap for v1.1.2 and v1.2 and don't see this being incorporated into the core Redmine system. For me I feel this is a must have for anyone wishing to replace their existing project scheduling system and move over to Redmine and would strongly recommend it becoming part of the core application.

I'm fairly new to Redmine and these forums so can anyone explain how this review and incorporation process works.

Thanks.

Actions #51

Updated by Luis Serrano Aranda over 13 years ago

If any task don't have due data this patch don't show the next dates, I test with redmine 1.1.1

Actions #52

Updated by Luis Serrano Aranda over 13 years ago

In brief I put 2 new taks in the first In the two issues I write only the start date, and looking the Gantt I only look the start date of the first issue

Actions #53

Updated by Luis Serrano Aranda over 13 years ago

If I try to move a bar and the task has not been created by me, the error message shows nothing and the task does not return to its position.

Tanks for your work

Actions #54

Updated by Hiroyuki Yoshioka over 13 years ago

Luis Serrano Aranda wrote:

If I try to move a bar and the task has not been created by me, the error message shows nothing and the task does not return to its position.

Thank you for your reports.
It's a bug. Permission error occurs internally.
Try the new patch.
You can change dates only if you have permission to edit issues.

Actions #55

Updated by Chris Darts over 13 years ago

I've just applied the latest patch (v1-1-1), but it seems there are still a few issues with it.

When changing the start or due date on the Gantt interface it displays a warning pop-up with a blank message (see screenshot attached). After clicking the 'OK' button, the Gantt chart then moves the bar to the wrong place in time. If you then refresh the screen it accepts the change of date and moves it back to the correct position. However, if you then click on the start or due date (depending which one you just changed) then it has the previous, incorrect date highlighted.

In short, it seems the change of date is being saved correctly, but you need to do a manual browser refresh in order for it to be accepted and even then it's not displaying the correct date in the pop-up calendar.

I really feel this patch is a major addition to Redmine and would love to see these minor issues ironed out if possible.

My other request would be to reduce the width of the column with the start and end date and also include a column with the 'Assignee'.

Actions #56

Updated by Hiroyuki Yoshioka over 13 years ago

Chris Darts wrote:

I've just applied the latest patch (v1-1-1), but it seems there are still a few issues with it.

Thank you for you report.
An error occurred when due date of project was out of range for display.

I made the new patch.

My other request would be to reduce the width of the column with the start and end date and also include a column with the 'Assignee'.

Thank you for your suggestion.
I will consider about it.

Actions #57

Updated by Chris Darts over 13 years ago

I have applied the latest patch 'gantt_edit_2_v1-1-1.patch' and completed some initial testing.

It has fixed the problem with the pop up error box, which is good. However, when changing either a start or due date it automatically
refreshes the screen and displays the dates incorrectly on the gantt chart. If I then manually refresh then it moves them to the correct date, so obviously it's saving it to the database OK.

The other problem is that I have a number of inter related tasks, which precede and follow one another. When changing the due date through the gantt interface, it doesn't re-adjust the dates on the related issues correctly. However, when changing the start date it does re-adjust the related issues correctly. In the previous version both changing the start date or the due would work fine, so it seems this last bug is something introduced in the latest version.

I have just tried the new 'Better Gantt Chart' plugin in conjunction with this patch and it seems to have resolved the problem with re-calculating dates for related issues. However, there are some compatibility issues between the plugin and this patch (see http://www.redmine.org/boards/3/topics/22288).

I hope this helps. I'm happy to give further feedback if you need. I am currently running 'Redmine 1.1.2.stable.5022 (MySQL)'

I really like this plugin and I can see it adds a huge improvement to Redmine. Please let me know if there is anything else I can do to assist the development of this plugin. As I mentioned in my forum post (22288) it would be great if the authors of this patch and the 'Better Gantt Chart' plugin could join forces somehow.

Actions #58

Updated by Alexey Kuleshov over 13 years ago

Chris Darts wrote:

I have just tried the new 'Better Gantt Chart' plugin in conjunction with this patch and it seems to have resolved the problem with re-calculating dates for related issues. However, there are some compatibility issues between the plugin and this patch (see http://www.redmine.org/boards/3/topics/22288).

Chris, as I replied to the forum post I have released a new version of the plugin which hopefully solves most compatibility issues.

As I mentioned in my forum post (22288) it would be great if the authors of this patch and the 'Better Gantt Chart' plugin could join forces somehow.

I'm all for it. I will continue update the plugin for compatibility with new versions of the patch.

Actions #59

Updated by Chris Darts over 13 years ago

Thanks for your quick response on this Alexey. As reported in the plugin forum post (http://www.redmine.org/boards/3/topics/22288) the new version of the plugin has resolved a number of the bugs, which is great.

Hiroyuki,

When using patch #2024 with the 'Better Gantt Chart' plugin, the current outstanding issues with the patch are as follows:

  1. when changing either a start or due date it automatically refreshes the screen and displays the dates incorrectly on the gantt chart. If I then manually refresh then it moves them to the correct date, so obviously it's saving it to the database OK.
  2. when you try to change the start or due date through the Gantt chart interface using the date picker, it automatically updates the date value (and therefore the bars on the Gantt chart) when you move between months, even if you haven't actually selected a date.

It would be great if it is possible to fix these 2 outstanding issues. I really feel that this patch, combined with the plugin greatly improve the standard functionality of the Gantt chart in Redmine. As Ivan Cenov added (http://www.redmine.org/boards/3/topics/22288?r=22292#message-22292) it would be great to see this functionality incorporated into the core Redmine system at some point in the future.

Thanks,

Chris

Actions #60

Updated by Luis Serrano Aranda over 13 years ago

Is is possible to make this in a plugin, i think is better to update redmine.

Thanks

Actions #61

Updated by Masayuki Shibata over 13 years ago

Yoshioka-san,

When using gantt_edit_2_v1-1-1.patch, the PNG export function with clicking right-under "PNG" link in gantt chart gives us "Internal Error".

The function this patch itself works fine. greeeeat!

Just I want to know, this is our own problem or not?

Would you tell me its OK or not in your environment.

Regards,

Actions #62

Updated by Masayuki Shibata over 13 years ago

For the time being...

I made change to \lib\redmine\helpers\gantt.rb.

Sorry, but the code is rather redundant.

Anyway, the PNG export function for Gantt chart works now.

Attention:
line 460-461 was changed to fix another problem to show Japanese letter correctly.

Actions #63

Updated by Toshi MARUYAMA over 13 years ago

  • Due date deleted (2010-09-04)
  • Start date deleted (2010-09-04)
Actions #64

Updated by Masayuki Shibata over 13 years ago

I have done small changes to avoid getting illegal html format output.

like following...

I am not sure everybody knows this problem or not.

Anyway, in {redmine}\lib\redmine\helpers\gantt.rb

def calendar_for_issue(issue, options)
  # Skip issues that don't have a due_before (due_date or version's due_date)
  if issue.is_a?(Issue) && issue.due_before

    case options[:format]
    when :html
+     @calendars << "<div style='position: absolute;line-height:1.2em;height:16px;top:#{options[:top]}px;left:4px;overflow:hidden;'>" 
      start_date = issue.start_date
      if start_date
-       @calendars << "<div style='position: absolute;line-height:1.2em;height:16px;top:#{options[:top]}px;left:4px;overflow:hidden;'>" 
        @calendars << "<span id='i#{issue.id}_start_date_str'>" 
        @calendars << format_date(start_date)
        @calendars << "</span>" 
        @calendars << "<input type='hidden' size='12' id='i#{issue.id}_hidden_start_date' value='#{start_date}' />" 
-       @calendars << "<input type='hidden' size='12' id='i#{issue.id}_start_date' value='#{start_date}'>#{view.g_calendar_for('i' + issue.id.to_s + '_start_date')}" 
+       @calendars << "<input type='hidden' size='12' id='i#{issue.id}_start_date' value='#{start_date}' />#{view.g_calendar_for('i' + issue.id.to_s + '_start_date')}" 
        @calendars << observe_date_field("i#{issue.id}", 'start')
      end
      due_date = issue.due_date
      if due_date
        @calendars << "<span id='i#{issue.id}_due_date_str'>" 
        @calendars << format_date(due_date)
        @calendars << "</span>" 
        @calendars << "<input type='hidden' size='12' id='i#{issue.id}_hidden_due_date' value='#{due_date}' />" 
-       @calendars << "<input type='hidden' size='12' id='i#{issue.id}_due_date' value='#{due_date}'>#{view.g_calendar_for('i' + issue.id.to_s + '_due_date')}" 
+       @calendars << "<input type='hidden' size='12' id='i#{issue.id}_due_date' value='#{due_date}' />#{view.g_calendar_for('i' + issue.id.to_s + '_due_date')}" 
        @calendars << observe_date_field("i#{issue.id}", 'due')
-       @calendars << "</div>" 
      end
+     @calendars << "</div>" 
    when :image
      #nop
    when :pdf
      #nop
    end
  else
    ActiveRecord::Base.logger.debug "GanttHelper#line_for_issue was not given an issue with a due_before" 
    ''
  end
end

Actions #65

Updated by steve borgelt over 13 years ago

I have applied patched gantt_edit_2_v1-1-1.patch to my 1.1.2 redmine, however I do not see any changes on the http://localhost:3000/projects/test/issues/gantt page, nor any arrows to adjust on the bar.
Do I need to wait for a 1.1.2 patch? Is there anything else that needs to be done on a vanilla 1.1.2 redmine besides the patch file?

Actions #66

Updated by steve borgelt over 13 years ago

steve borgelt wrote:

I have applied patched gantt_edit_2_v1-1-1.patch to my 1.1.2 redmine, however I do not see any changes on the http://localhost:3000/projects/test/issues/gantt page, nor any arrows to adjust on the bar.

Nevermind, I'm thinking of being able the start and ends of the bar :P I see that the entire bar slides and now there is a start and end calender picker.

Couple of Issues/Bugs
#1. The Gantt Project/Issue line items don't render properly in IE9, not sure if your issue or general redmine gantt issue. See attachment.
It seem that by default, IE9 renders the page in IE 9 Compaibility view. Although the Titles are missing, I can properly slide the gantt bar.

#2. When in regular IE9 rendering, the line items display properly, however the bar no longer slides. This must be why IE9 tries to render using Compatability view by default.

Actions #67

Updated by Etienne Massip over 13 years ago

See #7807.

Actions #68

Updated by Chris Darts over 13 years ago

I have attached is a newer version (v5) of this patch file from the developer. This resolves a few small bugs found in previous versions.

This patch can also work in conjunction with the Better Gantt Chart plugin (http://www.redmine.org/plugins/redmine_better_gantt_chart) for additional functionality. If you are using both the patch and the plugin then you will need the 'patch #2024' branch of the plugin.

I have tested both of these on Redmine v1.1.3 and they seem to work fine.

Actions #69

Updated by Hiroyuki Yoshioka over 13 years ago

Thank you, Chris.

The patch solves the below issues.
  • A popup dialog is displayed when due date of a project is out of range.
  • When changing either a start or due date, it automatically refreshes the screen and displays the dates incorrectly in some cases.
  • It tries to automatically change the start or due date when changing months on the date picker,
    without selecting a specific date.

I couldn't have made the patch without your cooperation.

Actions #70

Updated by Hiroyuki Yoshioka over 13 years ago

I made a new patch.
This patch solves the following problem.

  • When changing a start or due date of a sub-task, it doesn't correctly show the adjusted start or due date for the parent task.

I have tested on version 1.1.2.

Actions #71

Updated by Hiroyuki Yoshioka over 13 years ago

  • When changing a start or due date of a sub-task, it doesn't correctly show the adjusted start or due date for the parent task.
And the patch solves the following problem, too.
  • the PNG export function with clicking right-under "PNG" link in gantt chart gives us "Internal Error".

Shibata-san,
thank you for your cooperation.

Actions #72

Updated by Wesley Buchanan about 13 years ago

Hi,

Are there any plans to update this to work with version 1.2? Currently we are using the patch with version 1.1.3 and it works very well and I would like to update Redmine to 1.2 however we don't want to lose this functionality.

Actions #73

Updated by Aleksey Dubov about 13 years ago

+1

Actions #74

Updated by alan blount about 13 years ago

+1 - I'd love to get this updated too

Actions #75

Updated by Alex Voronko about 13 years ago

+1 too

Actions #76

Updated by Ian Wojtowicz about 13 years ago

+1 This one feature alone would push Redmine far ahead of the pack. This would really make it an awesome software development tracking system. And open source to boot!

Actions #77

Updated by Sebastian Lüdtke almost 13 years ago

+1 too
This feature working for new version would be very nice!

Actions #78

Updated by Mitsuo Ohtsuka almost 13 years ago

+1 This should be a great feature for the future release of Redmine!

I've just tried making this patch work with Redmine 1.2.1 on Windows Vista and it seems to work fine so far.
I attached the source files of Redmine 1.2.1 which I modified, just for reference. (Sorry it's NOT a patch file...)

Good luck!

Actions #79

Updated by Siegfried Vogel almost 13 years ago

+1

Actions #80

Updated by Anonymous almost 13 years ago

To fix the PNG export 500 error:

1. Open \lib\redmine\helpers\gantt.rb
2. Line 579 gc.line(x, headers_heigth, x, headers_heigth + g_height-1)
3. Update to gc.line(x, headers_height, x, headers_height + g_height-1)

Is there any plan to include relationships between issues? Haven't been able to get this working yet.

Thank you

Actions #81

Updated by Jop van Raaij almost 13 years ago

+1 Looking for this feature!

Actions #82

Updated by Support IBITEK over 12 years ago

Hello,
I saw sources is that they are functional or is even the development period? Demand is still at 0% ?
What is the procedure for testing and installation?

Actions #83

Updated by Humberto Roca over 12 years ago

+1

Really, to have and editable GANTT chart is something that would make REDMINE one of the best tools for Project management. It would be very appreciated to have this within the release version soon. I don't know if there is a better way for pushing for this idea.

Actions #84

Updated by Gauthier Delamarre over 12 years ago

same for me - drag'n drop support for Gantt charts is THE killer feature Redmine is currently missing... for my day to day work, it's really frustrating having to edit manually n tasks when I need to postpone one or another task in a project...

unfortunately, as a PHP specialist, I cannot help working on this, but I wish I could!

Actions #85

Updated by Jacq Jacq over 12 years ago

+1 !

Actions #86

Updated by Ton Nguyen over 12 years ago

This is really such a great function! I tried to patch 'gantt_edit_v1-1-2.patch' on both Redmine v1.3.2 & v1.4.3, but it seems not work, could you please have a check? Thank you so much!

Actions #87

Updated by Jun NAITOH over 12 years ago

+1

I've just tried making this patch work with Redmine 1.3.3 on CentOS 6 and it seems to work fine so far.
I attached the patch files of Redmine 1.3.3 from note-78 and note-80 without config/routes.rb.

I can not understand the necessity of correcting config/routes.rb, sorry.

Actions #88

Updated by Toshi MARUYAMA over 12 years ago

  • Assignee deleted (Hiroyuki Yoshioka)
Actions #89

Updated by Toshi MARUYAMA over 12 years ago

  • Tracker changed from Patch to Feature
Actions #90

Updated by Toshi MARUYAMA over 12 years ago

This is a patch for 1.4.3.

Actions #91

Updated by Toshi MARUYAMA over 12 years ago

This is a patch for trunk r9835.

Actions #93

Updated by Anonymous about 12 years ago

Thank you very much for this great patch.

We have added few small fixes:
  • Fixed CSS to remove double borders
  • Lowered width of the dates column (180px), however long dates will not fit now. We are using YYYY-MM-DD format so it's very good for us and does not take a lot of screen space.
  • Aligned dates in the date column
  • If issue does not have a Due date set now it shows "Not set" and a calendar button - no need to open issue details page to set a due date.
  • For some reason day of week in the columns was printed twice on Redmine 1.4.4, fixed

I've attached a resulting patch for Redmine 1.4.4.

Actions #94

Updated by Cassiano Monteiro about 12 years ago

+1!
Nice patch! Can´t it be included on the next revision of Redmine?

Actions #95

Updated by Toshi MARUYAMA about 12 years ago

This is a patch for trunk r10055 merged note 93 patch.

Cassiano Monteiro wrote:

+1!
Nice patch! Can´t it be included on the next revision of Redmine?

If you want to include this feature to next major version,
you need to create a patch for trunk and add tests for this feature described at note 92.

Actions #96

Updated by Terence Mill about 12 years ago

+1

Actions #97

Updated by Toshi MARUYAMA about 12 years ago

This is a patch for trunk r10066.

If user who has no right to edit issue move bar,
bar stays and does not return original position.

If user move bar, "Bug #4" color does not change.

Actions #98

Updated by Luis Serrano Aranda about 12 years ago

It is possible add this function to the core ?

Actions #99

Updated by Yoav HaCohen almost 12 years ago

+1, This function should be in the core.

Actions #100

Updated by Daniel Felix almost 12 years ago

+1 from me to add this to the core.

Actions #101

Updated by Sebastian Hucke almost 12 years ago

+1, changing due dates for many tickets (e.g. in case of sickness or some new, prioritized customer requirements) is a huge pain in the current version.

It is definately a "must have" feature! A perfect complement to the excludation of weekends as described in #2161.

Actions #102

Updated by aud dog almost 12 years ago

I've just updated to Redmine 2.1.4.stable on rails version 3.2.8 and I'm having the troubles with the gantt charts not recalculating to the correct end dates. I see that the dates seems to be correct within the actual issue but not when viewing via the gantt chart. Is there a fix or patch for this version to get the gantt chart to work correctly?

Actions #103

Updated by Frédéric Houbart almost 12 years ago

Im working on 1.1.1, with Edit V5 1.1.1 patch, and better gantt patch for this version. Im also using Advanced roadmap, but when I add a version, roadmap work, but not gantt (all tab). If I delete version off my project, gantt appear.

Any help?

Actions #104

Updated by Daniel Felix over 11 years ago

  • Subject changed from gantt chart editting to gantt chart editing

An implementation of this would greatly improve the gantt. It would get more importance in Redmine. Hopefully the patches could be ported to 2.3 and finally find their way to the core.

Actions #105

Updated by Dipan Mehta over 11 years ago

+1. Yes this is a great work. Hoping to see this.

Actions #106

Updated by Alex Voronko over 11 years ago

+1

Actions #107

Updated by Mischa The Evil over 11 years ago

Daniel Felix wrote:

Hopefully the patches could be ported to 2.3 and finally find their way to the core.

The most important thing that is missing in the patches are the tests. They aren't there and with a feature like this that wouldn't be good...

Actions #108

Updated by Daniel Felix over 11 years ago

This is clear to me. :-)
But first, the functionality must be ensured. After that, we could try to add some tests to it.

Actions #109

Updated by Babak Khorrami about 11 years ago

any plan/news for this feature?

Actions #110

Updated by Mark Zalavari about 11 years ago

Babak Khorrami wrote:

any plan/news for this feature?

I think it is dead already.
Wish to be wrong, but the guys at EasyRedmine already implemented the feature: http://www.redmine.org/plugins/advanced-drag-drop-gantt
It seems to be awesome, but it is very expensive... it is too much for startup teams...
This is the only reason our team still using Redmine 1.4.7

However we can offer some donation for this project, if somebody can complete it. (And maybe we are not the only one...)

Actions #111

Updated by olivier musse almost 11 years ago

Hi

Why not try our redmine client http://www.mana-sys.fr/en/redmineclient. This is an application, not a web plugin, but we include a first version of gantt chart editing. This is not as powerfull as easy redmine for sure and need some improvement but it works. It is not free but not so expensive. Have a look.

Olivier

Actions #112

Updated by Toshi MARUYAMA almost 11 years ago

Actions #113

Updated by Roman Lukmanov over 10 years ago

Babak Khorrami wrote:

any plan/news for this feature?

+1

Actions #114

Updated by Luis Serrano Aranda over 10 years ago

+1

Actions #115

Updated by Toshi MARUYAMA over 10 years ago

  • Has duplicate Feature #3062: Interactive gantt chart feature added
Actions #116

Updated by aem34 - about 10 years ago

hello,

is there any news for this feature please ?

Actions #117

Updated by aem34 - about 10 years ago

forgive me, but those patches are against which redmine version please ?
are they working with the current 2.4 or 2.5 version ?

Actions #118

Updated by Ribald Drobens over 9 years ago

+1! Good for intuitively rearrange work packages etc

Actions #119

Updated by Sergio Vitale over 9 years ago

Hi everybody, are there any news about this feature? It would be awesome to have it.
Thanks.

Actions #120

Updated by Vlad Vor over 8 years ago

1000+
This is very important feature.
All modern project systems supporting it.
It's a reason to move from redmine to something else.

Actions #121

Updated by Anonymous over 6 years ago

I would still love to have this feature. Can someone organise to have some developers come together and create a kickstarter or similiar for a shared funding ?
I would certainly contribute in a meaningful way.

Actions #122

Updated by michel p over 4 years ago

+1000

Actions #123

Updated by Yuichi HARADA almost 4 years ago

I created a patch that can dynamically change the start date and due date by moving the bar.
You can drag and drop the bar under the following conditions.

  1. The only bars that can be moved is the leaf issues.
  2. When you move the bar, the parent issues, version, project, related issues, etc. will move in tandem.
  3. You can move the bar only when you are displaying a Gantt that can recognize the date by zooming.
Actions #124

Updated by Mizuki ISHIKAWA over 3 years ago

I applied the patch of #2024#note-123 and tried to make it work.

Actions #125

Updated by Yuichi HARADA over 3 years ago

Mizuki ISHIKAWA wrote:

I applied the patch of #2024#note-123 and tried to make it work.

Thank you for giving it a try.


Yuichi HARADA wrote:

I created a patch that can dynamically change the start date and due date by moving the bar.

I incorporated a patch created with #34694#note-3.

Actions #126

Updated by Yuichi HARADA over 3 years ago

Yuichi HARADA wrote:

Yuichi HARADA wrote:

I created a patch that can dynamically change the start date and due date by moving the bar.

I incorporated a patch created with #34694#note-3.

I recreated patch 2024-moving-gantt-bar-v2.patch with git format-patch command.

Actions #127

Updated by Holger Just over 3 years ago

Thank you for your effort in providing and updating this patch! This feature and its UI implementation looks very promising and I would be happy to see this feature in Redmine soon.

After a quick review, I found some potential issues (in 0001-Moving-gantt-bar.patch however, which may need to be addressed:

  • The new route is inconsistent with the rest of the routes. It should be under /issues/gantt, i.e.
      put '/issues/gantt/:id/change_duration', :to => 'gantts#change_duration', :as => 'gantt_change_duration'
    
  • You allow to set any parameter or custom fields to the issue, not just duration related parameters. While the given params appear to be checked by safe_attributes (which thus probably doesn't cause security issues), this might still be surprising. Maybe it's useful to filter the allowed parameters?
  • The view contains A LOT of code which mixes complex Ruby logic and Javascript template generation. It might be helpful to extract the Ruby parts into a helper and separate the generation of the Javascript response from the Ruby logic. This would also allow to actually test this logic.
  • In the view, you appear to parse and update generated HTML response code of the Redmine::Helpers::Gantt object as well as directly access private method and instance variables. This is rather brittle (and slow and potentially insecure). Instead, it's likely a better path to update the class and add appropriate render methods directly.

Apart from that, it would be very helpful if you could include some tests:

  • For the controller action, we should at least verify the happy path as well as handling of permissions, conflict handling, and validation errors
  • The view / helpers should be tested in order to describe the desired behavior (which I find very hard to follow right now).
Actions #128

Updated by Markus Boremski over 3 years ago

+1000

Actions #129

Updated by Taro Matsuzawa 7 months ago

I try re-write patch for 5.1 branch.

  • fix route to /issues/gantt/:id/change_duration
  • use permit params
  • separate ruby logic from view to helper, and fix direct access private method and instance variable

Please give me a feedback!

Actions #130

Updated by Taro Matsuzawa 6 months ago

Holger Just Mizuki ISHIKAWA Can you review my patch?

Actions

Also available in: Atom PDF