Commit a0f13ed1f3deb5253af7130f6fc471297dad0799

Authored by Elena.Budnik
1 parent a038d0e2

small format + time selection for Remote

js/app/models/InteractiveNode.js
... ... @@ -464,11 +464,14 @@ Ext.define('amdaModel.InteractiveNode', {
464 464 getTimeFromNode: function(node) {
465 465 var startString = new String(node.get('globalStart'));
466 466 var stopString = new String(node.get('globalStop'));
467   - var startDate = new Date(startString.replace(/\-/g,'\/').replace(/[T|Z]/g,' '));
  467 +
  468 + var startDate = new Date(startString.replace(/\-/g,'\/').replace(/[T|Z]/g,' '));
468 469 var stopDate = new Date(stopString.replace(/\-/g,'\/').replace(/[T|Z]/g,' '));
  470 +
469 471 if (stopDate - startDate > 86400000 ) {
470 472 var startTime = Ext.Date.add(stopDate, Ext.Date.DAY, -1);
471   - var timeObj = {start: Ext.Date.format(startTime, 'Y/m/d H:i:s'), stop: Ext.Date.format(stopDate, 'Y/m/d H:i:s')};
  473 + // var timeObj = {start: Ext.Date.format(startTime, 'Y/m/d H:i:s'), stop: Ext.Date.format(stopDate, 'Y/m/d H:i:s')};
  474 + var timeObj = {start: Ext.Date.format(startTime, 'Y/m/d'), stop: Ext.Date.format(stopDate, 'Y/m/d')};
472 475 }
473 476 else {
474 477 var timeObj = {start: node.get('globalStart'), stop: node.get('globalStop')};
... ... @@ -485,8 +488,7 @@ Ext.define('amdaModel.InteractiveNode', {
485 488 var newNode = Ext.create(amdaModel.PlotNode.$className, { object : request });
486 489 // edit newNode into Plot Module with node as contextNode
487 490 newNode.editInModule();
488   - if((node.get('globalStart') != null) && (node.get('globalStop') != null) && node.get('globalStart') != 'depending on mission' && ( node.get('nodeType') == 'localParam' ||
489   - node.get('nodeType') == 'myDataParam' || node.get('nodeType') == 'remoteSimuParam')) {
  491 + if((node.get('globalStart') != null) && (node.get('globalStop') != null) && node.get('globalStart') != 'depending on mission' && node.get('isParameter')) {
490 492 module.getUiContent().setTimeFromData(node.getTimeFromNode(node));
491 493 }
492 494 }
... ... @@ -509,8 +511,7 @@ Ext.define('amdaModel.InteractiveNode', {
509 511 amdaModel.DownloadNode.set('object',request);
510 512 // singleton!
511 513 amdaModel.DownloadNode.editInModule();
512   - if (node.get('globalStart') != 'depending on mission' && ( node.get('nodeType') == 'localParam' ||
513   - node.get('nodeType') == 'myDataParam' || node.get('nodeType') == 'remoteSimuParam')) {
  514 + if ((node.get('globalStart') != null) && (node.get('globalStop') != null) && node.get('globalStart') != 'depending on mission' && node.get('isParameter')) {
514 515 module.getUiContent().setTimeFromData(node.getTimeFromNode(node));
515 516 }
516 517 }
... ...
js/app/models/LocalParamNode.js
... ... @@ -45,19 +45,19 @@ Ext.define('amdaModel.LocalParamNode',
45 45 if ( this.get('globalStart') > now )
46 46 this.set('cls','predicted');
47 47 }
48   - // time restriction on parameters
49   - if (this.get('timeRestriction')) {
50   - // this.set('cls','predicted');
51   - var id = this.get('id');
52   - var bracketPos = id.indexOf("(");
53   - if (bracketPos > 0) {
54   - id = Ext.String.insert(id, '_restr', bracketPos);
55   - }
56   - else {
57   - id += '_restr';
58   - }
59   - this.set('id', id);
60   - }
  48 +// // time restriction on parameters
  49 +// if (this.get('timeRestriction')) {
  50 +// // this.set('cls','predicted');
  51 +// var id = this.get('id');
  52 +// var bracketPos = id.indexOf("(");
  53 +// if (bracketPos > 0) {
  54 +// id = Ext.String.insert(id, '_restr', bracketPos);
  55 +// }
  56 +// else {
  57 +// id += '_restr';
  58 +// }
  59 +// this.set('id', id);
  60 +// }
61 61  
62 62 if (this.get('rank')) {
63 63 var rank = this.get('rank');
... ...
js/app/views/PlotUI.js
... ... @@ -153,8 +153,7 @@ Ext.define('amdaUI.PlotUI', {
153 153 this.plotTabs.updateTimeObject();
154 154 },
155 155  
156   - addTT : function(newTTName,newTTid,timeSelectorId)
157   - {
  156 + addTT : function(newTTName,newTTid,timeSelectorId) {
158 157 var crtTimeSelector = Ext.getCmp(timeSelectorId);
159 158 if (crtTimeSelector)
160 159 crtTimeSelector.addTT(newTTName,newTTid);
... ... @@ -165,25 +164,23 @@ Ext.define('amdaUI.PlotUI', {
165 164 this.timeSelector.setTTTab(TTarray);
166 165 },
167 166  
168   - /**
169   - * Set Start-Stop from parameter info (Local & MyData)
170   - */
171   - setTimeFromData : function(obj)
172   - {
173   - if (!obj.start || !obj.stop)
174   - return;
175   - var dateStart = new Date(obj.start.replace(/[T|Z]/g,' ').replace(/\-/g,'\/'));
176   - var dateStop = new Date(obj.stop.replace(/[T|Z]/g,' ').replace(/\-/g,'\/'));
  167 + /**
  168 + * Set Start-Stop from parameter info (Local & MyData)
  169 + */
  170 + setTimeFromData : function(obj) {
  171 + if (!obj.start || !obj.stop)
  172 + return;
  173 + var dateStart = new Date(obj.start.replace(/[T|Z]/g,' ').replace(/\-/g,'\/'));
  174 + var dateStop = new Date(obj.stop.replace(/[T|Z]/g,' ').replace(/\-/g,'\/'));
177 175  
178   - for (var i = 0; i < this.plotTabs.items.getCount(); ++i)
179   - {
180   - var plotTab = this.plotTabs.items.getAt(i).items.getAt(0);
181   - plotTab.items.getAt(1).intervalSel.setInterval(dateStart, dateStop);
182   - //TBD plotTab.updateTimeObject();
183   - }
184   -
185   - this.timeSelector.intervalSel.setInterval(dateStart, dateStop);
186   - },
  176 + for (var i = 0; i < this.plotTabs.items.getCount(); ++i) {
  177 + var plotTab = this.plotTabs.items.getAt(i).items.getAt(0);
  178 + plotTab.items.getAt(1).intervalSel.setInterval(dateStart, dateStop);
  179 + //TBD plotTab.updateTimeObject();
  180 + }
  181 +
  182 + this.timeSelector.intervalSel.setInterval(dateStart, dateStop);
  183 + },
187 184  
188 185 updateLinkedToMultiPlotMode : function(isLinkedToMultiPlotMode) {
189 186 this.multiPlotIntervalPanel.setVisible(isLinkedToMultiPlotMode);
... ...
js/app/views/TimeSelectorUI.js
... ... @@ -6,220 +6,201 @@
6 6 * @brief common component to select Time in searchModule, plotModule
7 7 * and downloadModule
8 8 * @author Myriam
9   - * @version $Id: TimeSelectorUI.js 2135 2014-02-25 13:37:18Z elena $
10   - * @todo Validations
  9 + * @version $Id: TimeSelectorUI.js 2135 2014-02-25 13:37:18Z elena $
11 10 */
12 11  
13   -Ext.define('amdaUI.TimeSelectorUI',
14   -{
15   - extend: 'Ext.form.FieldSet',
16   - requires :
17   - [
18   - 'amdaUI.IntervalUI'
19   - ],
  12 +Ext.define('amdaUI.TimeSelectorUI', {
  13 + extend: 'Ext.form.FieldSet',
  14 +
  15 + requires : [ 'amdaUI.IntervalUI' ],
  16 +
  17 + setTTTab: function(arrayTT) {
  18 + var arrayRec = new Array();
  19 + var index = 1;
  20 + if (arrayTT){
  21 + index = 0;
  22 + Ext.Array.each(arrayTT,function(item,index,all){
  23 + // adding the time table to the TTGrid
  24 + if (!item.$className){
  25 + //json case
  26 + var r = Ext.create('amdaModel.TTobject', { id: item.id, name: item.timeTableName });
  27 + arrayRec.push(r);
  28 + }
  29 + else
  30 + //TTobject case
  31 + arrayRec.push(item);
  32 + });
  33 + }
  34 + this.activeTab = amdaModel.AmdaTimeObject.inputTimeSrc[index];
  35 +
  36 + // name of RadioGroup in every TimeSelector object should be UNIQUE:
  37 + // RadioManager is a singleton working with getByName !!!!!
  38 + var obj = new Object();
  39 + obj['timesrc_' + this.id] = this.activeTab;
  40 + this.timeSrc.setActiveTab(this.activeTab);
  41 +
  42 + if (index === 0) this.TTGrid.getStore().loadData(arrayRec);
  43 + },
20 44  
21   - setTTTab: function(arrayTT)
22   - {
23   - var arrayRec = new Array();
24   - var index = 1;
25   - if (arrayTT)
26   - {
27   - index = 0;
28   - Ext.Array.each(arrayTT,function(item,index,all)
29   - {
30   - // adding the time table to the TTGrid
31   - if (!item.$className)
32   - {
33   - //json case
34   - var r = Ext.create('amdaModel.TTobject', { id: item.id, name: item.timeTableName });
35   - arrayRec.push(r);
36   - }
37   - else
38   - //TTobject case
39   - arrayRec.push(item);
40   - });
41   - }
42   - this.activeTab = amdaModel.AmdaTimeObject.inputTimeSrc[index];
43   -
44   - // name of RadioGroup in every TimeSelector object should be UNIQUE:
45   - // RadioManager is a singleton working with getByName !!!!!
46   - var obj = new Object();
47   - obj['timesrc_' + this.id] = this.activeTab;
48   - this.timeSrc.setActiveTab(this.activeTab);
49   -
50   - if (index === 0) this.TTGrid.getStore().loadData(arrayRec);
51   - },
52   -
53   - addTT : function(newTTName,newTTid)
54   - {
55   - // set the TimeTable radio checked
56   - var obj = new Object();
57   - obj['timesrc_'+this.id] = amdaModel.AmdaTimeObject.inputTimeSrc[0]; /*'TimeTable'*/
58   - this.timeSrc.setActiveTab(obj['timesrc_'+this.id]);
59   -
60   - // search for an existing record in store with this unique name
61   - var existingIndex = this.TTGrid.store.findExact( 'name', newTTName);
62   - // if no corresponding TT found
63   - if (existingIndex == -1){
64   - // adding the time table to the TTGrid
65   - var r = Ext.create('amdaModel.TTobject', { id: newTTid, name: newTTName });
66   - this.TTGrid.store.insert(this.TTGrid.store.getCount(),r);
67   - }
68   - },
  45 + addTT : function(newTTName,newTTid) {
  46 + // set the TimeTable radio checked
  47 + var obj = new Object();
  48 + obj['timesrc_'+this.id] = amdaModel.AmdaTimeObject.inputTimeSrc[0]; /*'TimeTable'*/
  49 + this.timeSrc.setActiveTab(obj['timesrc_'+this.id]);
  50 +
  51 + // search for an existing record in store with this unique name
  52 + var existingIndex = this.TTGrid.store.findExact( 'name', newTTName);
  53 + // if no corresponding TT found
  54 + if (existingIndex == -1){
  55 + // adding the time table to the TTGrid
  56 + var r = Ext.create('amdaModel.TTobject', { id: newTTid, name: newTTName });
  57 + this.TTGrid.store.insert(this.TTGrid.store.getCount(),r);
  58 + }
  59 + },
69 60  
70   - getActiveTimeSource: function()
71   - {
72   - return this.timeSrc.getActiveTab().getItemId();
73   - },
  61 + getActiveTimeSource: function() {
  62 + return this.timeSrc.getActiveTab().getItemId();
  63 + },
74 64  
75   - initComponent: function()
76   - {
77   - this.activeField = null;
78   - var store = Ext.create('Ext.data.Store',
79   - {
80   - model: 'amdaModel.TTobject'
81   - });
  65 + initComponent: function() {
  66 + this.activeField = null;
  67 + var store = Ext.create('Ext.data.Store',
  68 + {
  69 + model: 'amdaModel.TTobject'
  70 + });
82 71  
83   - var me = this;
  72 + var me = this;
84 73  
85   - this.TTGrid = Ext.create('Ext.grid.Panel',
86   - {
87   - itemId: 1,
88   - store : store,
89   - columns:
90   - [
91   - Ext.create('Ext.grid.RowNumberer', { width: 20 } ),
92   - { header: "Time Table or Catalog Name", dataIndex: 'name', flex:1, sortable : false, menuDisabled: true },
93   - {
94   - menuDisabled: true, width: 30, renderer: function()
95   - {
96   - return'<div class="icon-remover" style="width: 15px; height: 15px;"></div>';
97   - }
98   - }
99   - ],
100   - listeners : {
101   - render : function(o,op) {
102   -
103   - var el = this.getEl();
104   - var dropTarget = Ext.create('Ext.dd.DropTarget', el, {
105   - ddGroup: 'explorerTree',
106   - notifyOver : function(ddSource, e, data)
107   - {
108   - if ((data.records[0].get('nodeType') == 'timeTable' ||
109   - data.records[0].get('nodeType') == 'sharedtimeTable' ||
110   - data.records[0].get('nodeType') == 'catalog' ||
111   - data.records[0].get('nodeType') == 'sharedcatalog') && (data.records[0].get('leaf')))
112   - {
113   - this.valid = true;
114   - return this.dropAllowed;
115   - }
116   - this.valid = false;
117   - return this.dropNotAllowed;
118   - },
119   - notifyDrop : function(ddSource, e, data)
120   - {
121   - if (!this.valid) return false;
122   -
123   - var explorerModule = myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.explorer.id);
124   - if (!explorerModule)
125   - return false;
126   - var targetModuleId = explorerModule.getPinedModule();
127   - var targetModule = myDesktopApp.getLoadedModule(targetModuleId);
128   - if (targetModule)
129   - targetModule.getUiContent().addTT(data.records[0].get('text'),data.records[0].get('id'), me.getId());
130   - return true;
131   - }
132   - });
133   - }
134   - }
135   - });
  74 + this.TTGrid = Ext.create('Ext.grid.Panel',
  75 + {
  76 + itemId: 1,
  77 + store : store,
  78 + columns:
  79 + [
  80 + Ext.create('Ext.grid.RowNumberer', { width: 20 } ),
  81 + { header: "Time Table or Catalog Name", dataIndex: 'name', flex:1, sortable : false, menuDisabled: true },
  82 + {
  83 + menuDisabled: true, width: 30, renderer: function()
  84 + {
  85 + return'<div class="icon-remover" style="width: 15px; height: 15px;"></div>';
  86 + }
  87 + }
  88 + ],
  89 + listeners : {
  90 + render : function(o,op) {
  91 + var el = this.getEl();
  92 + var dropTarget = Ext.create('Ext.dd.DropTarget', el, {
  93 + ddGroup: 'explorerTree',
  94 + notifyOver : function(ddSource, e, data)
  95 + {
  96 + if ((data.records[0].get('nodeType') == 'timeTable' ||
  97 + data.records[0].get('nodeType') == 'sharedtimeTable' ||
  98 + data.records[0].get('nodeType') == 'catalog' ||
  99 + data.records[0].get('nodeType') == 'sharedcatalog') && (data.records[0].get('leaf')))
  100 + {
  101 + this.valid = true;
  102 + return this.dropAllowed;
  103 + }
  104 + this.valid = false;
  105 + return this.dropNotAllowed;
  106 + },
  107 + notifyDrop : function(ddSource, e, data)
  108 + {
  109 + if (!this.valid) return false;
  110 +
  111 + var explorerModule = myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.explorer.id);
  112 + if (!explorerModule)
  113 + return false;
  114 + var targetModuleId = explorerModule.getPinedModule();
  115 + var targetModule = myDesktopApp.getLoadedModule(targetModuleId);
  116 + if (targetModule)
  117 + targetModule.getUiContent().addTT(data.records[0].get('text'),data.records[0].get('id'), me.getId());
  118 + return true;
  119 + }
  120 + });
  121 + }
  122 + }
  123 + });
136 124  
137   - this.TTGrid.on('cellclick', function(view, cell, cellIndex, record, row, recordIndex, e)
138   - {
139   - if (cellIndex == 2)
140   - this.TTGrid.getStore().remove(record);
141   - }, this);
  125 + this.TTGrid.on('cellclick', function(view, cell, cellIndex, record, row, recordIndex, e)
  126 + {
  127 + if (cellIndex == 2)
  128 + this.TTGrid.getStore().remove(record);
  129 + }, this);
142 130  
143   - this.intervalSel = Ext.create('amdaUI.IntervalUI',
144   - {
145   - itemId: 2,
146   - listeners :
147   - {
148   - render : function(o,op)
149   - {
150   - var me = this;
151   - var el = me.getEl();
152   - var dropTarget = Ext.create('Ext.dd.DropTarget', el, {
153   - ddGroup: 'explorerTree',
154   - notifyOver : function(ddSource, e, data)
155   - {
156   - if ((data.records[0].get('nodeType') == 'myDataParam' || data.records[0].get('nodeType') == 'localParam')
157   - && data.records[0].get('isParameter'))
158   - {
159   - this.valid = true;
160   - return this.dropAllowed;
161   - }
162   - this.valid = false;
163   - return this.dropNotAllowed;
164   - },
165   - notifyDrop : function(ddSource, e, data)
166   - {
167   - if (!this.valid) return false;
168   -
169   - var explorerModule = myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.explorer.id);
170   - if (!explorerModule)
171   - return false;
172   - var targetModuleId = explorerModule.getPinedModule();
173   - var targetModule = myDesktopApp.getLoadedModule(targetModuleId);
174   - targetModule.getUiContent().setTimeFromData({ start : data.records[0].get('globalStart'),
175   - stop : data.records[0].get('globalStop')});
176   - me.updateDuration();
177   - return true;
178   - }
179   - });
180   - }
181   - }
182   -
183   - });
  131 + this.intervalSel = Ext.create('amdaUI.IntervalUI',
  132 + {
  133 + itemId: 2,
  134 + listeners :
  135 + {
  136 + render : function(o,op)
  137 + {
  138 + var me = this;
  139 + var el = me.getEl();
  140 + var dropTarget = Ext.create('Ext.dd.DropTarget', el, {
  141 + ddGroup: 'explorerTree',
  142 + notifyOver : function(ddSource, e, data)
  143 + {
  144 + if ((data.records[0].get('globalStart') != null) && (data.records[0].get('globalStop') != null)
  145 + && data.records[0].get('globalStart') != 'depending on mission' && data.records[0].get('isParameter'))
  146 + // if ((data.records[0].get('nodeType') == 'myDataParam' || data.records[0].get('nodeType') == 'localParam')
  147 + // && data.records[0].get('isParameter'))
  148 + {
  149 + this.valid = true;
  150 + return this.dropAllowed;
  151 + }
  152 + this.valid = false;
  153 + return this.dropNotAllowed;
  154 + },
  155 + notifyDrop : function(ddSource, e, data)
  156 + {
  157 + if (!this.valid) return false;
  158 +
  159 + var explorerModule = myDesktopApp.getLoadedModule(myDesktopApp.dynamicModules.explorer.id);
  160 + if (!explorerModule)
  161 + return false;
  162 + var targetModuleId = explorerModule.getPinedModule();
  163 + var targetModule = myDesktopApp.getLoadedModule(targetModuleId);
  164 +
  165 + targetModule.getUiContent().setTimeFromData({ start : data.records[0].get('globalStart'),
  166 + stop : data.records[0].get('globalStop')});
  167 + me.updateDuration();
  168 + return true;
  169 + }
  170 + });
  171 + }
  172 + }
  173 + });
184 174  
185   - this.timeSrc = new Ext.tab.Panel(
186   - {
187   - layout: 'fit',
188   - plain: true,
189   - bodyStyle: 'background: none',
190   - items:
191   - [
192   - {
193   - title: 'Interval',
194   - layout: 'fit',
195   - bodyStyle: 'background: none',
196   - itemId: amdaModel.AmdaTimeObject.inputTimeSrc[1],//'Interval'
197   - items: [
198   - this.intervalSel
199   - ]
200   - },
201   - {
202   - title: 'Time Table or Catalog',
203   - layout: 'fit',
204   - itemId: amdaModel.AmdaTimeObject.inputTimeSrc[0],//'TimeTable'
205   - items: [
206   - this.TTGrid
207   - ]
208   - }
209   - ]
210   - });
  175 + this.timeSrc = new Ext.tab.Panel(
  176 + {
  177 + layout: 'fit',
  178 + plain: true,
  179 + bodyStyle: 'background: none',
  180 + items: [
  181 + {
  182 + title: 'Interval',
  183 + layout: 'fit',
  184 + bodyStyle: 'background: none',
  185 + itemId: amdaModel.AmdaTimeObject.inputTimeSrc[1],//'Interval'
  186 + items: [ this.intervalSel ]
  187 + },
  188 + {
  189 + title: 'Time Table or Catalog',
  190 + layout: 'fit',
  191 + itemId: amdaModel.AmdaTimeObject.inputTimeSrc[0],//'TimeTable'
  192 + items: [ this.TTGrid ]
  193 + }]
  194 + });
211 195  
212   - var config =
213   - {
214   - title: (!this.title) ? 'Time Selection' : this.title,
215   - layout: 'fit',
216   - items:
217   - [
218   - this.timeSrc
219   - ]
220   - };
  196 + var config =
  197 + {
  198 + title: (!this.title) ? 'Time Selection' : this.title,
  199 + layout: 'fit',
  200 + items: [ this.timeSrc ]
  201 + };
221 202  
222   - Ext.apply(this, config);
223   - this.callParent(arguments);
224   - }
  203 + Ext.apply(this, config);
  204 + this.callParent(arguments);
  205 + }
225 206 });
... ...
php/classes/AmdaAction.php
... ... @@ -63,13 +63,8 @@ class AmdaAction
63 63  
64 64 $node = $obj->node;
65 65  
66   - // to correct 'restricted' parameters
67   - if (strpos($node, restricted) !== false)
68   - {
69   - $node = str_replace(restricted,"",$node);
70   - }
71   -
72 66 $nodeType = $obj->nodeType;
  67 +
73 68 $remoteBase = false;
74 69 $isRemoteDataSet = false;
75 70  
... ... @@ -111,15 +106,13 @@ class AmdaAction
111 106 $xmlName = USERWSDIR.$this->xmlFiles[$nodeType];
112 107 }
113 108  
114   - if ($remoteBase)
115   - {
  109 + if ($remoteBase){
116 110 $nodeType = 'remoteParam';
117 111 }
118 112  
119 113 $Dom->load($xmlName);
120 114  
121   - if ($node == "myRemoteSimuData-treeRootNode")
122   - $node = "myRemoteData-treeRootNode";
  115 + if ($node == "myRemoteSimuData-treeRootNode") $node = "myRemoteData-treeRootNode";
123 116  
124 117 $nodeToOpen = $Dom->getElementById($node);
125 118 $children = $nodeToOpen->childNodes;
... ... @@ -305,15 +298,6 @@ class AmdaAction
305 298  
306 299 if ($isParameter)
307 300 {
308   - if ($child->tagName == 'parameter' && $child->childNodes->length == 1)
309   - {
310   - $needsArgs = true;
311   - }
312   - if (substr($id,0,4) == 'bt96' || substr($id,0,6) == 'ba2000'|| substr($id,0,5) == 'bcain' || substr($id,0,7) == 'bmorsch' )
313   - {
314   - $needsArgs = true;
315   - }
316   -
317 301 $objectMgr = new AliasMgr();
318 302 $alias = $objectMgr->getAlias($id);
319 303  
... ... @@ -383,10 +367,10 @@ class AmdaAction
383 367  
384 368 if ( $child->tagName == 'parameter')
385 369 {
386   - if ($child->parentNode->hasAttribute('globalStart'))
  370 + if ($child->parentNode->hasAttribute('dataStart'))
387 371 {
388   - $globalStart = $child->parentNode->getAttribute('globalStart');
389   - $globalStop = $child->parentNode->getAttribute('globalStop');
  372 + $globalStart = $child->parentNode->getAttribute('dataStart');
  373 + $globalStop = $child->parentNode->getAttribute('dataStop');
390 374 }
391 375 }
392 376  
... ... @@ -416,9 +400,6 @@ class AmdaAction
416 400 switch ($id)
417 401 {
418 402 case 'CDAWEB' :
419   - case 'OMNIWEB' :
420   - $isLeaf = false;
421   - break;
422 403 case 'THEMIS' :
423 404 $rank = 5;
424 405 break;
... ... @@ -449,7 +430,21 @@ class AmdaAction
449 430 {
450 431 if ($child->tagName == 'dataset') $isRemoteDataSet = true;
451 432 }
  433 +
  434 + if ($child->tagName == 'parameter'){
  435 + if ($child->parentNode->hasAttribute('dataStart')){
  436 + $globalStart = date('Y-m-d\TH:i:s\Z', strtotime($child->parentNode->getAttribute('dataStart')));
  437 + $globalStop = date('Y-m-d\TH:i:s\Z', strtotime($child->parentNode->getAttribute('dataStop')));
  438 + }
  439 + }
452 440  
  441 + if ( $child->tagName == 'component'){
  442 + if ($child->parentNode->parentNode->hasAttribute('dataStart')){
  443 + $globalStart = date('Y-m-d\TH:i:s\Z', strtotime($child->parentNode->getAttribute('dataStart')));
  444 + $globalStop = date('Y-m-d\TH:i:s\Z', strtotime($child->parentNode->getAttribute('dataStop')));
  445 + }
  446 + }
  447 +
453 448 if ($isParameter)
454 449 {
455 450 $disable = $child->parentNode->getAttribute('disabled');
... ...