Loading public/javascript/app/details/views/_ActivityTimeSeriesDataManagement.js +76 −26 Original line number Diff line number Diff line define([ 'app/viewers/views/_SeriesSelectionManagement' , 'app/viewers/views/_TimeSeriesDataManagement' 'app/viewers/views/_TimeSeriesDataManagement' , 'dojo/_base/declare' , 'dojo/_base/lang' , 'dojo/aspect' ], function( _SeriesSelectionManagement , _TimeSeriesDataManagement _TimeSeriesDataManagement , declare , lang , aspect ) { return declare([_TimeSeriesDataManagement, _SeriesSelectionManagement], { return declare(_TimeSeriesDataManagement, { // summary: // Extensión para la vista de detalle de actividad para el manejo de series temporales. constructor: function(args) { this.config = { _insertedInTimeSeriesData: {}, emptySeriesData: { data: { stations: {}, parameters: {}, definitions: {} }, stationIndex: {}, parameterIndex: {}, definitionIndex: {} }, pathSeparator: '.' }; Loading @@ -32,28 +37,26 @@ define([ this._indexDataList = {}; var parsedData = this._parseData(sourceData); this._generateTimeSeriesData(parsedData); this._generateTimeSeriesDataFromParsedData(parsedData); }, _generateTimeSeriesData: function(listData) { _generateTimeSeriesDataFromParsedData: function(parsedData) { this._clear(); for (var i = 0; i < listData.length; i++) { var item = listData[i], for (var i = 0; i < parsedData.length; i++) { var item = parsedData[i], path = item.path; if (path.split(this.pathSeparator).length > 2) { this._insertItemInDataChart(path); } } }, _insertItemInDataChart: function(path) { if (this._indexDataList[path] !== undefined && !this._insertedInTimeSeriesData[path]) { this._updateDataChart = true; this._insertedInTimeSeriesData[path] = true; if (this._indexDataList[path] === undefined || path.split(this.pathSeparator).length < 3) { return false; } var item = this._dataList[this._indexDataList[path]], stationId = this._insertStation(this._dataList[this._indexDataList[this._getParentPath(path)]]), Loading @@ -61,7 +64,8 @@ define([ dataDefinitionIds = this._insertDataDefinitions(item); this._insertOrUpdateIndex(stationId, parameterId, dataDefinitionIds); } return true; }, _getParentPath: function(path) { Loading @@ -71,6 +75,26 @@ define([ return path.replace(regex, '$1'); }, _insertStation: function(itemStation) { if (itemStation && !this.seriesData.data.stations[itemStation.id]) { this.seriesData.data.stations[itemStation.id] = itemStation; } return itemStation.id; }, _insertParameter: function(item) { var parameter = lang.clone(item); if (!this.seriesData.data.parameters[item.id]) { delete parameter.id; this.seriesData.data.parameters[item.id] = parameter; } return item.id; }, _insertDataDefinitions: function(item) { var ids = {}, Loading @@ -95,11 +119,37 @@ define([ return ids; }, _clear: function() { _insertOrUpdateIndex: function(stationId, parameterId, dataDefinitionIds) { if (!this.seriesData.stationIndex[stationId]) { this.seriesData.stationIndex[stationId] = [parameterId]; } else { this.seriesData.stationIndex[stationId].push(parameterId); } if (!this.seriesData.parameterIndex[parameterId]) { this.seriesData.parameterIndex[parameterId] = [stationId]; } else { this.seriesData.parameterIndex[parameterId].push(stationId); } for (var z in dataDefinitionIds) { var dataDefinitionIdsJoined = dataDefinitionIds[z].join(this.idSeparator); if (!this.seriesData.definitionIndex[dataDefinitionIdsJoined]) { this._insertedInTimeSeriesData = {}; this.seriesData.definitionIndex[dataDefinitionIdsJoined] = { sIds: stationId, pIds: parameterId }; } } }, _clear: function() { this.inherited(arguments); this.seriesData = lang.clone(this.emptySeriesData); } }); }); public/javascript/app/viewers/views/ChartsView.js +5 −1 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ define([ , "app/designs/dynamicDualContent/main/FacetsWithDynamicRightContent" , "app/designs/list/Controller" , "app/designs/list/layout/Layout" , 'app/details/views/_ActivityTimeSeriesDataManagement' , "app/viewers/views/_TimeSeriesSelectionManagement" , "app/redmicConfig" , "dojo/_base/declare" Loading Loading @@ -34,6 +35,7 @@ define([ , FacetsWithDynamicRightContent , ListController , ListLayout , _ActivityTimeSeriesDataManagement , _TimeSeriesSelectionManagement , redmicConfig , declare Loading @@ -55,7 +57,9 @@ define([ , _Selectable , ListTemplate ){ return declare([EmbeddedContentSelectionInTopbar, _TimeSeriesSelectionManagement], { return declare([ EmbeddedContentSelectionInTopbar, _ActivityTimeSeriesDataManagement, _TimeSeriesSelectionManagement ], { // summary: // Vista de ChartsView. Loading public/javascript/app/viewers/views/_SeriesSelectionManagement.jsdeleted 100644 → 0 +0 −93 Original line number Diff line number Diff line define([ "dojo/_base/declare" , "dojo/_base/lang" ], function( declare , lang ){ return declare(null, { // summary: // Extensión para la vista de para el manejo de seleccionados. // description: // Añade funcionalidades de manejo de seleccionados a la vista. constructor: function(args) { this.config = { seriesData: { data: { stations: {}, parameters: {}, definitions: {} }, stationIndex: {}, parameterIndex: {}, definitionIndex: {} } }; lang.mixin(this, this.config); }, _insertStation: function(itemStation) { if (itemStation && !this.seriesData.data.stations[itemStation.id]) { this.seriesData.data.stations[itemStation.id] = itemStation; } return itemStation.id; }, _insertParameter: function(item) { var parameter = lang.clone(item); if (!this.seriesData.data.parameters[item.id]) { delete parameter.id; this.seriesData.data.parameters[item.id] = parameter; } return item.id; }, _insertOrUpdateIndex: function(stationId, parameterId, dataDefinitionIds) { if (!this.seriesData.stationIndex[stationId]) { this.seriesData.stationIndex[stationId] = [parameterId]; } else { this.seriesData.stationIndex[stationId].push(parameterId); } if (!this.seriesData.parameterIndex[parameterId]) { this.seriesData.parameterIndex[parameterId] = [stationId]; } else { this.seriesData.parameterIndex[parameterId].push(stationId); } for (var z in dataDefinitionIds) { var dataDefinitionIdsJoined = dataDefinitionIds[z].join(this.idSeparator); if (!this.seriesData.definitionIndex[dataDefinitionIdsJoined]) { this.seriesData.definitionIndex[dataDefinitionIdsJoined] = { sIds: stationId, pIds: parameterId }; } } }, _clear: function() { if (this.seriesData) { this.seriesData.stationIndex = {}; this.seriesData.parameterIndex = {}; this.seriesData.definitionIndex = {}; if (this.seriesData.data) { this.seriesData.data.stations = {}; this.seriesData.data.parameters = {}; this.seriesData.data.definitions = {}; } } } }); }); public/javascript/app/viewers/views/_TimeSeriesDataManagement.js +2 −2 Original line number Diff line number Diff line Loading @@ -87,7 +87,7 @@ define([ } if (this._getListDataDfd && !this._getListDataDfd.isFulfilled()) { this._generateTimeSeriesData(); this._generateTimeSeriesDataFromSelectedData(); this._getListDataDfd.resolve(); this._getListDataDfd = null; } Loading Loading @@ -202,7 +202,7 @@ define([ this._getListDataDfd = new Deferred(); this._getListData(); } else { this._generateTimeSeriesData(); this._generateTimeSeriesDataFromSelectedData(); } }, Loading public/javascript/app/viewers/views/_TimeSeriesSelectionManagement.js +22 −69 Original line number Diff line number Diff line define([ 'alertify/alertify.min' , "app/viewers/views/_SeriesSelectionManagement" , "app/viewers/views/_TimeSeriesDataManagement" , "dojo/_base/declare" , "dojo/_base/lang" , "dojo/aspect" , "redmic/modules/base/_Selection" , 'dojo/_base/declare' , 'dojo/_base/lang' , 'dojo/aspect' , 'redmic/modules/base/_Selection' ], function( alertify , _SeriesSelectionManagement , _TimeSeriesDataManagement , declare , lang , aspect , _Selection ) { return declare([_TimeSeriesDataManagement, _SeriesSelectionManagement, _Selection], { return declare(_Selection, { // summary: // Extensión para la vista de para el manejo de seleccionados. // Extensión para la vista de gráficas para el manejo de seleccionados. // description: // Añade funcionalidades de manejo de seleccionados a la vista. Loading @@ -26,7 +23,6 @@ define([ this.config = { _selected: {}, _insertedInTimeSeriesData: {}, pathSeparator: '.', maxParams: 10 }; Loading @@ -35,8 +31,8 @@ define([ aspect.after(this, '_setOwnCallbacksForEvents', lang.hitch(this, this._setTimeSeriesSelectionManagementOwnCallbacksForEvents)); aspect.before(this, "_select", lang.hitch(this, this._selectTimeSeriesSelectionManagement)); aspect.before(this, "_deselect", lang.hitch(this, this._deselectTimeSeriesSelectionManagement)); aspect.before(this, '_select', lang.hitch(this, this._selectTimeSeriesSelectionManagement)); aspect.before(this, '_deselect', lang.hitch(this, this._deselectTimeSeriesSelectionManagement)); }, _setTimeSeriesSelectionManagementOwnCallbacksForEvents: function() { Loading @@ -48,7 +44,7 @@ define([ this.inherited(arguments); this._emitEvt("GROUP_SELECTED"); this._emitEvt('GROUP_SELECTED'); }, _selectTimeSeriesSelectionManagement: function(path) { Loading @@ -63,7 +59,7 @@ define([ this._insertedInTimeSeriesData = {}; }, _generateTimeSeriesData: function() { _generateTimeSeriesDataFromSelectedData: function() { this._clear(); Loading @@ -77,56 +73,13 @@ define([ for (var i = 0; i < selectedCount; i++) { var path = selectedKeys[i]; if (path.split(this.pathSeparator).length > 2) { this._insertItemInDataChart(path); } } }, _insertItemInDataChart: function(path) { if (this._indexDataList[path] !== undefined && !this._insertedInTimeSeriesData[path]) { if (!this._insertedInTimeSeriesData[path]) { if (this._insertItemInDataChart(path)) { this._updateDataChart = true; this._insertedInTimeSeriesData[path] = true; var item = this._dataList[this._indexDataList[path]], stationId = this._insertStation(this._dataList[this._indexDataList[this._pathParent(path)]]), parameterId = this._insertParameter(item), dataDefinitionIds = this._insertDataDefinitions(item); this._insertOrUpdateIndex(stationId, parameterId, dataDefinitionIds); } }, _pathParent: function(path) { var regex = /(.+)\.[0-9]+$/; return path.replace(regex, "$1"); }, _insertDataDefinitions: function(item) { var ids = {}, dataDefinitions = item.dataDefinitions; for (var n = 0; n < dataDefinitions.length; n++) { if (!ids[dataDefinitions[n].z]) { ids[dataDefinitions[n].z] = []; } ids[dataDefinitions[n].z].push(dataDefinitions[n].id); if (!this.seriesData.data.definitions[dataDefinitions[n].id]) { var dataDef = lang.clone(dataDefinitions[n]); delete dataDef.id; delete dataDef.unit; this.seriesData.data.definitions[dataDefinitions[n].id] = dataDef; } } return ids; }, _showChartIsValid: function() { Loading @@ -134,16 +87,16 @@ define([ return !!Object.keys(this._insertedInTimeSeriesData).length; }, _clear: function() { this._insertedInTimeSeriesData = {}; _onTimeSeriesSelectionManagementHidden: function() { this.inherited(arguments); this._selectionTooBigAlertify && this._selectionTooBigAlertify.dismiss(); }, _onTimeSeriesSelectionManagementHidden: function() { _clear: function() { this._selectionTooBigAlertify && this._selectionTooBigAlertify.dismiss(); this.inherited(arguments); this._insertedInTimeSeriesData = {}; } }); }); Loading
public/javascript/app/details/views/_ActivityTimeSeriesDataManagement.js +76 −26 Original line number Diff line number Diff line define([ 'app/viewers/views/_SeriesSelectionManagement' , 'app/viewers/views/_TimeSeriesDataManagement' 'app/viewers/views/_TimeSeriesDataManagement' , 'dojo/_base/declare' , 'dojo/_base/lang' , 'dojo/aspect' ], function( _SeriesSelectionManagement , _TimeSeriesDataManagement _TimeSeriesDataManagement , declare , lang , aspect ) { return declare([_TimeSeriesDataManagement, _SeriesSelectionManagement], { return declare(_TimeSeriesDataManagement, { // summary: // Extensión para la vista de detalle de actividad para el manejo de series temporales. constructor: function(args) { this.config = { _insertedInTimeSeriesData: {}, emptySeriesData: { data: { stations: {}, parameters: {}, definitions: {} }, stationIndex: {}, parameterIndex: {}, definitionIndex: {} }, pathSeparator: '.' }; Loading @@ -32,28 +37,26 @@ define([ this._indexDataList = {}; var parsedData = this._parseData(sourceData); this._generateTimeSeriesData(parsedData); this._generateTimeSeriesDataFromParsedData(parsedData); }, _generateTimeSeriesData: function(listData) { _generateTimeSeriesDataFromParsedData: function(parsedData) { this._clear(); for (var i = 0; i < listData.length; i++) { var item = listData[i], for (var i = 0; i < parsedData.length; i++) { var item = parsedData[i], path = item.path; if (path.split(this.pathSeparator).length > 2) { this._insertItemInDataChart(path); } } }, _insertItemInDataChart: function(path) { if (this._indexDataList[path] !== undefined && !this._insertedInTimeSeriesData[path]) { this._updateDataChart = true; this._insertedInTimeSeriesData[path] = true; if (this._indexDataList[path] === undefined || path.split(this.pathSeparator).length < 3) { return false; } var item = this._dataList[this._indexDataList[path]], stationId = this._insertStation(this._dataList[this._indexDataList[this._getParentPath(path)]]), Loading @@ -61,7 +64,8 @@ define([ dataDefinitionIds = this._insertDataDefinitions(item); this._insertOrUpdateIndex(stationId, parameterId, dataDefinitionIds); } return true; }, _getParentPath: function(path) { Loading @@ -71,6 +75,26 @@ define([ return path.replace(regex, '$1'); }, _insertStation: function(itemStation) { if (itemStation && !this.seriesData.data.stations[itemStation.id]) { this.seriesData.data.stations[itemStation.id] = itemStation; } return itemStation.id; }, _insertParameter: function(item) { var parameter = lang.clone(item); if (!this.seriesData.data.parameters[item.id]) { delete parameter.id; this.seriesData.data.parameters[item.id] = parameter; } return item.id; }, _insertDataDefinitions: function(item) { var ids = {}, Loading @@ -95,11 +119,37 @@ define([ return ids; }, _clear: function() { _insertOrUpdateIndex: function(stationId, parameterId, dataDefinitionIds) { if (!this.seriesData.stationIndex[stationId]) { this.seriesData.stationIndex[stationId] = [parameterId]; } else { this.seriesData.stationIndex[stationId].push(parameterId); } if (!this.seriesData.parameterIndex[parameterId]) { this.seriesData.parameterIndex[parameterId] = [stationId]; } else { this.seriesData.parameterIndex[parameterId].push(stationId); } for (var z in dataDefinitionIds) { var dataDefinitionIdsJoined = dataDefinitionIds[z].join(this.idSeparator); if (!this.seriesData.definitionIndex[dataDefinitionIdsJoined]) { this._insertedInTimeSeriesData = {}; this.seriesData.definitionIndex[dataDefinitionIdsJoined] = { sIds: stationId, pIds: parameterId }; } } }, _clear: function() { this.inherited(arguments); this.seriesData = lang.clone(this.emptySeriesData); } }); });
public/javascript/app/viewers/views/ChartsView.js +5 −1 Original line number Diff line number Diff line Loading @@ -6,6 +6,7 @@ define([ , "app/designs/dynamicDualContent/main/FacetsWithDynamicRightContent" , "app/designs/list/Controller" , "app/designs/list/layout/Layout" , 'app/details/views/_ActivityTimeSeriesDataManagement' , "app/viewers/views/_TimeSeriesSelectionManagement" , "app/redmicConfig" , "dojo/_base/declare" Loading Loading @@ -34,6 +35,7 @@ define([ , FacetsWithDynamicRightContent , ListController , ListLayout , _ActivityTimeSeriesDataManagement , _TimeSeriesSelectionManagement , redmicConfig , declare Loading @@ -55,7 +57,9 @@ define([ , _Selectable , ListTemplate ){ return declare([EmbeddedContentSelectionInTopbar, _TimeSeriesSelectionManagement], { return declare([ EmbeddedContentSelectionInTopbar, _ActivityTimeSeriesDataManagement, _TimeSeriesSelectionManagement ], { // summary: // Vista de ChartsView. Loading
public/javascript/app/viewers/views/_SeriesSelectionManagement.jsdeleted 100644 → 0 +0 −93 Original line number Diff line number Diff line define([ "dojo/_base/declare" , "dojo/_base/lang" ], function( declare , lang ){ return declare(null, { // summary: // Extensión para la vista de para el manejo de seleccionados. // description: // Añade funcionalidades de manejo de seleccionados a la vista. constructor: function(args) { this.config = { seriesData: { data: { stations: {}, parameters: {}, definitions: {} }, stationIndex: {}, parameterIndex: {}, definitionIndex: {} } }; lang.mixin(this, this.config); }, _insertStation: function(itemStation) { if (itemStation && !this.seriesData.data.stations[itemStation.id]) { this.seriesData.data.stations[itemStation.id] = itemStation; } return itemStation.id; }, _insertParameter: function(item) { var parameter = lang.clone(item); if (!this.seriesData.data.parameters[item.id]) { delete parameter.id; this.seriesData.data.parameters[item.id] = parameter; } return item.id; }, _insertOrUpdateIndex: function(stationId, parameterId, dataDefinitionIds) { if (!this.seriesData.stationIndex[stationId]) { this.seriesData.stationIndex[stationId] = [parameterId]; } else { this.seriesData.stationIndex[stationId].push(parameterId); } if (!this.seriesData.parameterIndex[parameterId]) { this.seriesData.parameterIndex[parameterId] = [stationId]; } else { this.seriesData.parameterIndex[parameterId].push(stationId); } for (var z in dataDefinitionIds) { var dataDefinitionIdsJoined = dataDefinitionIds[z].join(this.idSeparator); if (!this.seriesData.definitionIndex[dataDefinitionIdsJoined]) { this.seriesData.definitionIndex[dataDefinitionIdsJoined] = { sIds: stationId, pIds: parameterId }; } } }, _clear: function() { if (this.seriesData) { this.seriesData.stationIndex = {}; this.seriesData.parameterIndex = {}; this.seriesData.definitionIndex = {}; if (this.seriesData.data) { this.seriesData.data.stations = {}; this.seriesData.data.parameters = {}; this.seriesData.data.definitions = {}; } } } }); });
public/javascript/app/viewers/views/_TimeSeriesDataManagement.js +2 −2 Original line number Diff line number Diff line Loading @@ -87,7 +87,7 @@ define([ } if (this._getListDataDfd && !this._getListDataDfd.isFulfilled()) { this._generateTimeSeriesData(); this._generateTimeSeriesDataFromSelectedData(); this._getListDataDfd.resolve(); this._getListDataDfd = null; } Loading Loading @@ -202,7 +202,7 @@ define([ this._getListDataDfd = new Deferred(); this._getListData(); } else { this._generateTimeSeriesData(); this._generateTimeSeriesDataFromSelectedData(); } }, Loading
public/javascript/app/viewers/views/_TimeSeriesSelectionManagement.js +22 −69 Original line number Diff line number Diff line define([ 'alertify/alertify.min' , "app/viewers/views/_SeriesSelectionManagement" , "app/viewers/views/_TimeSeriesDataManagement" , "dojo/_base/declare" , "dojo/_base/lang" , "dojo/aspect" , "redmic/modules/base/_Selection" , 'dojo/_base/declare' , 'dojo/_base/lang' , 'dojo/aspect' , 'redmic/modules/base/_Selection' ], function( alertify , _SeriesSelectionManagement , _TimeSeriesDataManagement , declare , lang , aspect , _Selection ) { return declare([_TimeSeriesDataManagement, _SeriesSelectionManagement, _Selection], { return declare(_Selection, { // summary: // Extensión para la vista de para el manejo de seleccionados. // Extensión para la vista de gráficas para el manejo de seleccionados. // description: // Añade funcionalidades de manejo de seleccionados a la vista. Loading @@ -26,7 +23,6 @@ define([ this.config = { _selected: {}, _insertedInTimeSeriesData: {}, pathSeparator: '.', maxParams: 10 }; Loading @@ -35,8 +31,8 @@ define([ aspect.after(this, '_setOwnCallbacksForEvents', lang.hitch(this, this._setTimeSeriesSelectionManagementOwnCallbacksForEvents)); aspect.before(this, "_select", lang.hitch(this, this._selectTimeSeriesSelectionManagement)); aspect.before(this, "_deselect", lang.hitch(this, this._deselectTimeSeriesSelectionManagement)); aspect.before(this, '_select', lang.hitch(this, this._selectTimeSeriesSelectionManagement)); aspect.before(this, '_deselect', lang.hitch(this, this._deselectTimeSeriesSelectionManagement)); }, _setTimeSeriesSelectionManagementOwnCallbacksForEvents: function() { Loading @@ -48,7 +44,7 @@ define([ this.inherited(arguments); this._emitEvt("GROUP_SELECTED"); this._emitEvt('GROUP_SELECTED'); }, _selectTimeSeriesSelectionManagement: function(path) { Loading @@ -63,7 +59,7 @@ define([ this._insertedInTimeSeriesData = {}; }, _generateTimeSeriesData: function() { _generateTimeSeriesDataFromSelectedData: function() { this._clear(); Loading @@ -77,56 +73,13 @@ define([ for (var i = 0; i < selectedCount; i++) { var path = selectedKeys[i]; if (path.split(this.pathSeparator).length > 2) { this._insertItemInDataChart(path); } } }, _insertItemInDataChart: function(path) { if (this._indexDataList[path] !== undefined && !this._insertedInTimeSeriesData[path]) { if (!this._insertedInTimeSeriesData[path]) { if (this._insertItemInDataChart(path)) { this._updateDataChart = true; this._insertedInTimeSeriesData[path] = true; var item = this._dataList[this._indexDataList[path]], stationId = this._insertStation(this._dataList[this._indexDataList[this._pathParent(path)]]), parameterId = this._insertParameter(item), dataDefinitionIds = this._insertDataDefinitions(item); this._insertOrUpdateIndex(stationId, parameterId, dataDefinitionIds); } }, _pathParent: function(path) { var regex = /(.+)\.[0-9]+$/; return path.replace(regex, "$1"); }, _insertDataDefinitions: function(item) { var ids = {}, dataDefinitions = item.dataDefinitions; for (var n = 0; n < dataDefinitions.length; n++) { if (!ids[dataDefinitions[n].z]) { ids[dataDefinitions[n].z] = []; } ids[dataDefinitions[n].z].push(dataDefinitions[n].id); if (!this.seriesData.data.definitions[dataDefinitions[n].id]) { var dataDef = lang.clone(dataDefinitions[n]); delete dataDef.id; delete dataDef.unit; this.seriesData.data.definitions[dataDefinitions[n].id] = dataDef; } } return ids; }, _showChartIsValid: function() { Loading @@ -134,16 +87,16 @@ define([ return !!Object.keys(this._insertedInTimeSeriesData).length; }, _clear: function() { this._insertedInTimeSeriesData = {}; _onTimeSeriesSelectionManagementHidden: function() { this.inherited(arguments); this._selectionTooBigAlertify && this._selectionTooBigAlertify.dismiss(); }, _onTimeSeriesSelectionManagementHidden: function() { _clear: function() { this._selectionTooBigAlertify && this._selectionTooBigAlertify.dismiss(); this.inherited(arguments); this._insertedInTimeSeriesData = {}; } }); });