Commit 63c16a6cc749a93983a0456f104f253e774de782

Authored by Benjamin Renard
1 parent ed51c2cd

Fix plot request duplication

js/app/models/PlotObjects/MultiplotRequestObject.js
... ... @@ -57,7 +57,9 @@ Ext.define('amdaPlotObj.MultiplotRequestObject', {
57 57 newPlotNode = Ext.create('amdaModel.PlotNode', {
58 58 leaf : true
59 59 });
60   - newPlotNode.set('object', plotNode.get('object'));
  60 + var data = Ext.apply({}, plotNode.get('object').getData(), plotNode.get('object').getAssociatedData());
  61 + newPlotNode.set('object', Ext.create('amdaPlotObj.PlotRequestObject', data));
  62 + plotNode.get('object').reject();
61 63 me.plots().remove(plotNode);
62 64 me.plots().insert(index, [newPlotNode]);
63 65 return false;
... ...
js/app/views/PlotComponents/PlotTabContent.js
... ... @@ -61,13 +61,13 @@ Ext.define('amdaPlotComp.PlotTabContent', {
61 61 savePlot : function() {
62 62 var me = this;
63 63  
64   - this.updateTimeObject();
65 64 var object = this.plotNode.get('object');
66 65 if (!object)
67 66 return;
68 67  
69 68 if ((object.get('id') != '') && (this.plotNode.get('text') == object.get('name'))) {
70 69 //update existing request
  70 + this.updateTimeObject();
71 71 this.plotNode.update({plot: true, callback: function() {
72 72 me.plotTabPanel.updatePlotTabs();
73 73 }});
... ... @@ -111,6 +111,7 @@ Ext.define('amdaPlotComp.PlotTabContent', {
111 111 saveProcess : function(toRename) {
112 112 var me = this;
113 113 if (toRename) {
  114 + this.updateTimeObject();
114 115 this.plotNode.update({plot: true, callback: function() {
115 116 me.plotTabPanel.updatePlotTabs();
116 117 }});
... ... @@ -123,12 +124,17 @@ Ext.define('amdaPlotComp.PlotTabContent', {
123 124 return;
124 125 var newPlotNode = plotModule.linkedNode.get('object').duplicatePlot(this.plotNode);
125 126 if (newPlotNode) {
  127 + var oldPlotNode = this.plotNode;
126 128 this.plotNode = newPlotNode;
127   - this.updateUI();
  129 + this.updateTimeObject();
  130 + oldPlotNode.reject();
128 131 }
129 132 }
  133 + this.updateTimeObject();
130 134 this.plotNode.create({callback: function() {
  135 + me.plotNode.commit();
131 136 me.plotTabPanel.updatePlotTabs();
  137 + me.updateUI();
132 138 }});
133 139 }
134 140 },
... ... @@ -136,6 +142,7 @@ Ext.define('amdaPlotComp.PlotTabContent', {
136 142 updateUI : function() {
137 143 this.plotOutput.setObject(this.plotNode.get('object'));
138 144 this.timeSelector.intervalSel.setInterval(this.plotNode.get('object').get('startDate'), this.plotNode.get('object').get('stopDate'));
  145 + this.timeSelector.intervalSel.updateStop();
139 146 this.timeSelector.setTTTab(this.plotNode.get('object').get('timeTables'));
140 147 this.treePlot.buildTree(this.plotNode.get('object'));
141 148 },
... ...