Chirag Patel (OpenERP) has proposed merging 
lp:~openerp-dev/openerp-web/6.1-opw-576040-cpa into lp:openerp-web/6.1.

Requested reviews:
  OpenERP Core Team (openerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openerp-web/6.1-opw-576040-cpa/+merge/112550

Hello,

Gantt chart not show right duration when date_delay provide.

Demo: Sales > Meetings > Meetings
1) Switch to Gantt view.

Observed: Event bar show wrong duration.
Observed: Tooltip not show when mouse hover on event bar and event duration < 4 
hours

For tooltip

Add event description (displayed right after the event bar).
Tooltip show when mouse hover on event description.

Thanks
-- 
https://code.launchpad.net/~openerp-dev/openerp-web/6.1-opw-576040-cpa/+merge/112550
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openerp-web/6.1-opw-576040-cpa.
=== modified file 'addons/web_gantt/static/src/js/gantt.js'
--- addons/web_gantt/static/src/js/gantt.js	2012-01-27 16:06:45 +0000
+++ addons/web_gantt/static/src/js/gantt.js	2012-06-28 12:18:21 +0000
@@ -147,16 +147,18 @@
                     task_stop = openerp.web.auto_str_to_date(task[self.fields_view.arch.attrs.date_stop]);
                     if (!task_stop)
                         return;
+                    var duration = (task_stop.getTime() - task_start.getTime()) / (1000 * 60 * 60);
+                    duration = ((duration / 24) * 8);
                 } else { // we assume date_duration is defined
                     var tmp = openerp.web.format_value(task[self.fields_view.arch.attrs.date_delay],
                         self.fields[self.fields_view.arch.attrs.date_delay]);
                     if (!tmp)
                         return;
                     task_stop = task_start.clone().addMilliseconds(tmp * 60 * 60 * 1000);
+                    var duration = tmp;
                 }
-                var duration = (task_stop.getTime() - task_start.getTime()) / (1000 * 60 * 60);
                 var id = _.uniqueId("gantt_task_");
-                var task_info = new GanttTaskInfo(id, task_name, task_start, ((duration / 24) * 8), 100);
+                var task_info = new GanttTaskInfo(id, task_name, task_start, duration, 100);
                 task_info.internal_task = task;
                 task_ids[id] = task_info;
                 return {task_info: task_info, task_start: task_start, task_stop: task_stop};
@@ -167,6 +169,7 @@
             gantt.addProject(project);
         });
         gantt.setEditable(true);
+        gantt.showDescTask(true,'s-f');
         gantt.setImagePath("/web_gantt/static/lib/dhtmlxGantt/codebase/imgs/");
         gantt.attachEvent("onTaskEndDrag", function(task) {
             self.on_task_changed(task);
@@ -194,15 +197,16 @@
         var self = this;
         var itask = task_obj.TaskInfo.internal_task;
         var start = task_obj.getEST();
-        var duration = (task_obj.getDuration() / 8) * 24;
-        var end = start.clone().addMilliseconds(duration * 60 * 60 * 1000);
         var data = {};
         data[self.fields_view.arch.attrs.date_start] =
             openerp.web.auto_date_to_str(start, self.fields[self.fields_view.arch.attrs.date_start].type);
         if (self.fields_view.arch.attrs.date_stop) {
+            var duration = (task_obj.getDuration() / 8) * 24;
+            var end = start.clone().addMilliseconds(duration * 60 * 60 * 1000);
             data[self.fields_view.arch.attrs.date_stop] = 
                 openerp.web.auto_date_to_str(end, self.fields[self.fields_view.arch.attrs.date_stop].type);
         } else { // we assume date_duration is defined
+            var duration = task_obj.getDuration();
             data[self.fields_view.arch.attrs.date_delay] = duration;
         }
         this.dataset.write(itask.id, data).then(function() {

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to