From de9b257886fba5949c8d2e03414c75451f388f58 Mon Sep 17 00:00:00 2001 From: Benjamin Renard <benjamin.renard@akka.eu> Date: Wed, 12 Aug 2015 08:44:01 +0200 Subject: [PATCH] Update TimeSelectorUI for catalog selection --- js/app/views/DownloadUI.js | 2 +- js/app/views/SearchUI.js | 2 +- js/app/views/StatisticsUI.js | 2 +- js/app/views/TimeSelectorUI.js | 91 +++++++++++++++++++------------------------------------------------------------------------ 4 files changed, 22 insertions(+), 75 deletions(-) diff --git a/js/app/views/DownloadUI.js b/js/app/views/DownloadUI.js index b1d2379..327b667 100644 --- a/js/app/views/DownloadUI.js +++ b/js/app/views/DownloadUI.js @@ -145,7 +145,7 @@ Ext.define('amdaUI.DownloadUI', { if (downloadSrc === 0) { var timeformat = basicForm.findField('timeformat').getRawValue(); - var timeSource = values.timesrc_downloadTimeSelector; + var timeSource = this.timeSelector.getActiveTimeSource(); var structure = values.filestructure; var sampling = values.sampling ? values.sampling : 600; var refparamSampling = values.refparamsampling == 'on'; diff --git a/js/app/views/SearchUI.js b/js/app/views/SearchUI.js index 5aff84c..770a13e 100755 --- a/js/app/views/SearchUI.js +++ b/js/app/views/SearchUI.js @@ -68,7 +68,7 @@ Ext.define('amdaUI.SearchUI', { // get the basic form var basicForm = this.formPanel.getForm(); // get the timeSource selected - var timeSource = basicForm.findField('timesrc_'+this.timeSelector.id).getGroupValue(); + var timeSource = this.timeSelector.getActiveTimeSource(); var updateStatus = true; var fieldsWithoutName = basicForm.getFields().items; diff --git a/js/app/views/StatisticsUI.js b/js/app/views/StatisticsUI.js index f338733..e8868ba 100644 --- a/js/app/views/StatisticsUI.js +++ b/js/app/views/StatisticsUI.js @@ -68,7 +68,7 @@ Ext.define('amdaUI.StatisticsUI', { }); this.object.set('parameter', paramArr); - var timeSource = formValues.timesrc_statisticsTimeSelector; + var timeSource = this.timeSelector.getActiveTimeSource(); if (timeSource === amdaModel.AmdaTimeObject.inputTimeSrc[0] // timeSource 'TimeTable' && this.timeSelector.TTGrid.getStore().count() == 0) { diff --git a/js/app/views/TimeSelectorUI.js b/js/app/views/TimeSelectorUI.js index b30f09d..3f134e6 100644 --- a/js/app/views/TimeSelectorUI.js +++ b/js/app/views/TimeSelectorUI.js @@ -20,7 +20,7 @@ Ext.define('amdaUI.TimeSelectorUI', setTTTab: function(arrayTT) { - /*var arrayRec = new Array(); + var arrayRec = new Array(); var index = 1; if (arrayTT) { @@ -45,9 +45,9 @@ Ext.define('amdaUI.TimeSelectorUI', // RadioManager is a singleton working with getByName !!!!! var obj = new Object(); obj['timesrc_' + this.id] = this.activeTab; - this.timeSrc.setValue(obj); + this.timeSrc.setActiveTab(this.activeTab); - if (index === 0) this.TTGrid.getStore().loadData(arrayRec); */ + if (index === 0) this.TTGrid.getStore().loadData(arrayRec); }, addTT : function(newTTName,newTTid) @@ -55,10 +55,8 @@ Ext.define('amdaUI.TimeSelectorUI', // set the TimeTable radio checked var obj = new Object(); obj['timesrc_'+this.id] = amdaModel.AmdaTimeObject.inputTimeSrc[0]; /*'TimeTable'*/ - this.timeSrc.setValue(obj); + this.timeSrc.setActiveTab(obj['timesrc_'+this.id]); - // fireEvent to show the corresponding panel - this.timeSrc.fireEvent('change', this.timeSrc, this.timeSrc.getValue()); // search for an existing record in store with this unique name var existingIndex = this.TTGrid.store.findExact( 'name', newTTName); // if no corresponding TT found @@ -69,6 +67,11 @@ Ext.define('amdaUI.TimeSelectorUI', } }, + getActiveTimeSource: function() + { + return this.timeSrc.getActiveTab().getItemId(); + }, + initComponent: function() { this.activeField = null; @@ -84,7 +87,7 @@ Ext.define('amdaUI.TimeSelectorUI', columns: [ Ext.create('Ext.grid.RowNumberer', { width: 20 } ), - { header: "Time Table Name", dataIndex: 'name', flex:1, sortable : false, menuDisabled: true }, + { header: "Time Table or Catalog Name", dataIndex: 'name', flex:1, sortable : false, menuDisabled: true }, { menuDisabled: true, width: 30, renderer: function() { @@ -100,7 +103,10 @@ Ext.define('amdaUI.TimeSelectorUI', ddGroup: 'explorerTree', notifyOver : function(ddSource, e, data) { - if ((data.records[0].get('nodeType') == 'timeTable' || data.records[0].get('nodeType') == 'sharedtimeTable') && (data.records[0].get('leaf'))) + if ((data.records[0].get('nodeType') == 'timeTable' || + data.records[0].get('nodeType') == 'sharedtimeTable' || + data.records[0].get('nodeType') == 'catalog' || + data.records[0].get('nodeType') == 'sharedcatalog') && (data.records[0].get('leaf'))) { this.valid = true; return this.dropAllowed; @@ -193,28 +199,6 @@ Ext.define('amdaUI.TimeSelectorUI', } }); - - this.cardContainer = - { - xtype: 'container', - flex: 4, - width: '99%', - layout: 'card', - border: false, - activeItem: 1, - items: - [ - this.TTGrid, - this.intervalSel - ], - listeners: - { - afterrender: function (container,opt) - { - this.layout.setActiveItem(this.initialConfig.activeItem); - } - } - }; this.timeSrc = new Ext.tab.Panel( { @@ -227,66 +211,29 @@ Ext.define('amdaUI.TimeSelectorUI', title: 'Interval', layout: 'fit', bodyStyle: 'background: none', + itemId: amdaModel.AmdaTimeObject.inputTimeSrc[1],//'Interval' items: [ this.intervalSel ] }, { - title: 'Time Table', + title: 'Time Table or Catalog', layout: 'fit', + itemId: amdaModel.AmdaTimeObject.inputTimeSrc[0],//'TimeTable' items: [ this.TTGrid ] - }, - { - title: 'Catalog', - items: [ - ] } - /*{ - boxLabel: 'Time Table', - name: 'timesrc_'+this.id, - inputValue: amdaModel.AmdaTimeObject.inputTimeSrc[0]//'TimeTable', - }, - { - boxLabel: 'Interval', - name: 'timesrc_'+this.id, - inputValue: amdaModel.AmdaTimeObject.inputTimeSrc[1],//'Interval', - checked: true - }, - { - boxLabel: 'Catalog', - name: 'timesrc_'+this.id, - inputValue: amdaModel.AmdaTimeObject.inputTimeSrc[2],//'Catalog' - }*/ - ]/*, - listeners: - { - scope: this, - change: function(radio, newValue, oldValue, options) - { - var ttIndex = newValue['timesrc_'+this.id] === amdaModel.AmdaTimeObject.inputTimeSrc[0] ? 0 : 1 ; - if (this.rendered) - { - radio.nextSibling().layout.setActiveItem(ttIndex); - } - else - { - this.cardContainer.activeItem = ttIndex; - } - } - } */ + ] }); var config = { - //style: { borderColor: '#98c0f4', borderWidth: '2px' }, title: 'Time Selection', layout: 'fit', items: [ - this.timeSrc/*, - this.cardContainer*/ + this.timeSrc ] }; -- libgit2 0.21.2