Commit 809eab04 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Afina widgets de actividad para observaciones

Implementa widget para recoger los registros observados y configura el
widget de mapa de estaciones para comunicarse con él.

Actualiza traducciones varias.

Actualiza submódulo.
parent 1afc8219
Loading
Loading
Loading
Loading
Compare 4d18c207 to c78a0166
Original line number Diff line number Diff line
Subproject commit 4d18c207a37a9ca4f3e736310c22d9d43bea69ed
Subproject commit c78a01661e797907dde0e20d6bfd0dddaf66921e
+20 −4
Original line number Diff line number Diff line
@@ -4,9 +4,10 @@ define([
	, 'app/designs/details/main/ActivityTrackingMap'
	, 'app/details/views/ActivityAreaMapBase'
	, 'app/details/views/ActivityCitationMapBase'
	, 'app/details/views/ActivityFixedTimeseriesChart'
	, 'src/detail/activity/widget/ActivityFixedObservationSeriesList'
	, 'src/detail/activity/widget/ActivityFixedObservationSeriesMap'
	, 'app/details/views/ActivityFixedTimeseriesMap'
	, 'src/detail/activity/widget/ActivityFixedTimeseriesChart'
	, 'src/detail/activity/widget/ActivityFixedTimeseriesMap'
	, 'app/details/views/ActivityInfrastructureMapBase'
	, 'app/details/views/ActivityLayerMapBase'
	, 'src/util/Credentials'
@@ -30,8 +31,9 @@ define([
	, ActivityTrackingMap
	, ActivityAreaMapBase
	, ActivityCitationMapBase
	, ActivityFixedTimeseriesChart
	, ActivityFixedObservationSeriesList
	, ActivityFixedObservationSeriesMap
	, ActivityFixedTimeseriesChart
	, ActivityFixedTimeseriesMap
	, ActivityInfrastructureMapBase
	, ActivityLayerMapBase
@@ -316,12 +318,26 @@ define([
				height: 6,
				type: ActivityFixedObservationSeriesMap,
				props: {
					title: 'associatedObservationStation',
					title: 'associatedObservationStations',
					pathVariableId: this._activityData.id
				}
			};
		},

		_getActivityFixedObservationSeriesListConfig: function(mapKey, config) {

			return {
				width: 6,
				height: 6,
				type: ActivityFixedObservationSeriesList,
				props: {
					title: 'associatedObservationRegisters',
					pathVariableId: this._activityData.id,
					timeseriesDataChannel: this._getWidgetInstance(mapKey).getChannel('TIMESERIES_DATA')
				}
			};
		},

		_getActivityFixedTimeseriesMapConfig: function(config) {

			return {
+9 −4
Original line number Diff line number Diff line
@@ -230,12 +230,17 @@ define([

		_prepareFixedObservationSeriesActivityWidgets: function(layoutConfig) {

			var key = 'activityFixedObservationSeriesMap',
				config = this._getActivityFixedObservationSeriesMapConfig(layoutConfig);
			var mapKey = 'activityFixedObservationSeriesMap',
				mapConfig = this._getActivityFixedObservationSeriesMapConfig(layoutConfig);

			this._addWidget(key, config);
			this._addWidget(mapKey, mapConfig);

			return key;
			var listKey = 'activityFixedObservationSeriesList',
				listConfig = this._getActivityFixedObservationSeriesListConfig(mapKey, layoutConfig);

			this._addWidget(listKey, listConfig);

			return [mapKey, listKey];
		},

		_prepareFixedTimeseriesActivityWidgets: function(layoutConfig) {
+72 −0
Original line number Diff line number Diff line
define([
	'app/designs/list/Controller'
	, 'app/designs/list/layout/Layout'
	, 'dojo/_base/declare'
	, 'dojo/_base/lang'
	, 'src/component/base/_Store'
	, 'src/redmicConfig'
	, 'templates/ObservationRegisterList'
], function(
	ListController
	, ListLayout
	, declare
	, lang
	, _Store
	, redmicConfig
	, TemplateList
) {

	return declare([ListController, ListLayout, _Store], {
		//	summary:
		//

		constructor: function(args) {

			this.config = {
				targetWithParams: redmicConfig.services.stationObservationSeriesObservations
			};

			lang.mixin(this, this.config, args);
		},

		_afterSetConfigurations: function() {

			this.browserConfig = this._merge([{
				template: TemplateList
			}, this.browserConfig || {}], {
				arrayMergingStrategy: 'concatenate'
			});
		},

		_defineSubscriptions: function() {

			this.subscriptionsConfig.push({
				channel : this.timeseriesDataChannel,
				callback: '_subObservationStationSet'
			});
		},

		_subObservationStationSet: function(data) {

			var stationId = data.id,
				stationName = data.site && data.site.name;

			var target = lang.replace(this.targetWithParams, {
				id: stationId
			});

			this._setTitle(stationName);

			this._publish(this.browser.getChannel('UPDATE_TARGET'), {
				target: target
			});

			this._emitEvt('REQUEST', {
				method: 'POST',
				target: target,
				action: '_search',
				requesterId: this.browser.getOwnChannel()
			});
		}
	});
});
+28 −21
Original line number Diff line number Diff line
define([
	"app/designs/details/main/ActivityMap"
	'app/designs/details/main/ActivityMap'
	, 'dojo/_base/declare'
	, 'dojo/_base/lang'
	, 'dojo/aspect'
	, 'src/redmicConfig'
	, "dojo/_base/declare"
	, "dojo/_base/lang"
	, "dojo/aspect"
	, "templates/InfrastructurePopup"
	, "templates/InfrastructureList"
	, 'templates/ObservationStationPopup'
	, 'templates/ObservationStationList'
], function(
	ActivityMap
	, redmicConfig
	, declare
	, lang
	, aspect
	, redmicConfig
	, TemplatePopup
	, TemplateList
) {

	return declare(ActivityMap, {
		//	summary:
		//
@@ -22,15 +23,17 @@ define([
		constructor: function(args) {

			this.config = {
				actions: {
					TIMESERIES_DATA: 'timeseriesData'
				},
				target: redmicConfig.services.activity,
				templateTargetChange: redmicConfig.services.activityObservationSeriesStations,
				templatePopup: TemplatePopup,
				_activeRadius: false,
				_activeRadius: false
			};

			lang.mixin(this, this.config, args);

			aspect.before(this, "_afterSetConfigurations", lang.hitch(this, this._setBaseConfigurations));
			aspect.before(this, '_afterSetConfigurations', lang.hitch(this, this._setBaseConfigurations));
		},

		_setBaseConfigurations: function() {
@@ -43,7 +46,7 @@ define([
							rowConfig: {
								buttonsConfig: {
									listButton: [{
										icon: 'fa-bar-chart',
										icon: 'fa-database',
										btnId: 'showObservations',
										returnItem: true,
										title: this.i18n.observations
@@ -78,19 +81,23 @@ define([
			var popupNode = res._contentNode,
				popupData = res._source.feature.properties;

			if (popupNode && popupData) {
			if (!popupNode || !popupData) {
				return;
			}

			var showChartsNode = query('.' + this._showChartsButtonClass, popupNode)[0];

			if (!showChartsNode) {
				return;
			}

			showChartsNode.onclick = lang.hitch(this, this._loadObservationSeriesData, popupData);
			}
		},

		_getPopupContent: function(data) {

			return this.templatePopup({
			console.log('popup', data)
			return TemplatePopup({
				i18n: this.i18n,
				feature: data.feature
			});
@@ -105,7 +112,7 @@ define([

		_loadObservationSeriesData: function(item) {

			console.log('cargo los datos de observaciones', item);
			this._publish(this.getChannel('TIMESERIES_DATA'), item);
		}
	});
});
Loading