dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #19923
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 8897: (GIS) Legend sorting bug fixed + er bugs fixed + In/de -> legend set.
Merge authors:
Jan Henrik Øverland (janhenrik-overland)
------------------------------------------------------------
revno: 8897 [merge]
committer: Jan Henrik Overland <janhenrik.overland@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2012-11-06 11:02:35 +0300
message:
(GIS) Legend sorting bug fixed + er bugs fixed + In/de -> legend set.
modified:
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/app.js
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Boundary.js
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Facility.js
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic1.js
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic2.js
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/app.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/app.js 2012-11-05 09:24:07 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/app.js 2012-11-06 06:05:58 +0000
@@ -2704,6 +2704,11 @@
hidden: true,
handler: function() {
if (legendSetName.getValue() && validateLegends()) {
+ if (legendSetStore.findExact('name', legendSetName.getValue()) !== -1) {
+ alert('Name already in use');
+ return;
+ }
+
var body = Ext.encode(getRequestBody());
Ext.Ajax.request({
@@ -2725,6 +2730,10 @@
hidden: true,
handler: function() {
if (legendSetName.getValue() && validateLegends()) {
+ if (legendSetStore.findExact('name', legendSetName.getValue()) !== -1) {
+ alert('Name already in use');
+ return;
+ }
var body = getRequestBody(),
id = legendPanel.legendSetId;
body.id = id;
@@ -2857,7 +2866,7 @@
panel = Ext.create('Ext.panel.Panel', {
cls: 'gis-container-inner',
- html: '<b>Direct link: </b>' + GIS.init.contextPath + '/dhis-web-mapping/app/index.html?id=' + GIS.map.mapLoader.id,
+ html: '<b>Link: </b>' + GIS.init.contextPath + '/dhis-web-mapping/app/index.html?id=' + GIS.map.mapLoader.id,
style: 'padding-top: 9px; padding-bottom: 2px'
});
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Boundary.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Boundary.js 2012-11-05 19:23:01 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Boundary.js 2012-11-06 07:41:32 +0000
@@ -570,6 +570,8 @@
return;
}
+ this.features = this.layer.features.slice(0);
+
this.loadData(features);
}
});
@@ -586,8 +588,10 @@
this.layer.removeFeatures(this.layer.features);
this.layer.addFeatures(features);
- this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
- this.features = this.layer.features.slice(0);
+
+ if (this.tmpView.extended.updateOrganisationUnit) {
+ this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
+ }
this.loadLegend();
},
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Facility.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Facility.js 2012-11-05 19:23:01 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Facility.js 2012-11-06 07:41:32 +0000
@@ -846,6 +846,8 @@
return;
}
+ this.features = this.layer.features.slice(0);
+
this.loadData(features);
}
});
@@ -861,8 +863,10 @@
this.layer.removeFeatures(this.layer.features);
this.layer.addFeatures(features);
- this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
- this.features = this.layer.features.slice(0);
+
+ if (this.tmpView.extended.updateOrganisationUnit) {
+ this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
+ }
this.loadLegend();
},
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic1.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic1.js 2012-11-05 19:23:01 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic1.js 2012-11-06 07:41:32 +0000
@@ -59,7 +59,7 @@
store: {
indicatorsByGroup: Ext.create('Ext.data.Store', {
- fields: ['id', 'name'],
+ fields: ['id', 'name', 'legendSet'],
proxy: {
type: 'ajax',
url: '',
@@ -319,12 +319,7 @@
var store = this.cmp.indicator.store;
store.proxy.url = GIS.conf.url.path_api + 'indicatorGroups/' + cb.getValue() + '.json?links=false&paging=false';
- store.load({
- scope: this,
- callback: function() {
- this.cmp.indicator.selectFirst();
- }
- });
+ store.load();
}
}
}
@@ -341,16 +336,35 @@
labelWidth: GIS.conf.layout.widget.itemlabel_width,
listConfig: {loadMask: false},
scope: this,
- selectFirst: function() {
- if (this.store.getCount() > 0) {
- this.setValue(this.store.getAt(0).data.id);
- }
- this.scope.config.extended.updateData = true;
- },
store: this.store.indicatorsByGroup,
listeners: {
select: function() {
- this.scope.config.extended.updateData = true;
+ var that = this.scope;
+ that.config.extended.updateData = true;
+
+ Ext.Ajax.request({
+ url: GIS.conf.url.path_api + 'indicators/' + this.getValue() + '.json?links=false',
+ scope: this,
+ success: function(r) {
+ r = Ext.decode(r.responseText);
+ if (Ext.isDefined(r.legendSet) && r.legendSet && r.legendSet.id) {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_predefined);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_predefined);
+ if (GIS.store.legendSets.isLoaded) {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ }
+ else {
+ GIS.store.legendSets.loadFn( function() {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ });
+ }
+ }
+ else {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_automatic);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_automatic);
+ }
+ }
+ });
}
}
});
@@ -399,16 +413,35 @@
listConfig: {loadMask: false},
hidden: true,
scope: this,
- selectFirst: function() {
- if (this.store.getCount() > 0) {
- this.setValue(this.store.getAt(0).data.id);
- }
- this.scope.config.extended.updateData = true;
- },
store: this.store.dataElementsByGroup,
listeners: {
select: function() {
- this.scope.config.extended.updateData = true;
+ var that = this.scope;
+ that.config.extended.updateData = true;
+
+ Ext.Ajax.request({
+ url: GIS.conf.url.path_api + 'dataElements/' + this.getValue() + '.json?links=false',
+ scope: this,
+ success: function(r) {
+ r = Ext.decode(r.responseText);
+ if (Ext.isDefined(r.legendSet) && r.legendSet && r.legendSet.id) {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_predefined);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_predefined);
+ if (GIS.store.legendSets.isLoaded) {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ }
+ else {
+ GIS.store.legendSets.loadFn( function() {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ });
+ }
+ }
+ else {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_automatic);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_automatic);
+ }
+ }
+ });
}
}
});
@@ -1238,6 +1271,10 @@
success: function(r) {
legends = Ext.decode(r.responseText).mapLegends;
+ Ext.Array.sort(legends, function (a, b) {
+ return a.startValue - b.startValue;
+ });
+
for (var i = 0; i < legends.length; i++) {
if (bounds[bounds.length-1] !== legends[i].startValue) {
if (bounds.length !== 0) {
@@ -1474,7 +1511,7 @@
updateLegend: Ext.isDefined(conf.extended.updateLegend) ? conf.extended.updateLegend : false,
updateGui: Ext.isDefined(conf.extended.updateGui) ? conf.extended.updateGui : false
};
-
+console.log(view);
return view;
},
@@ -1629,6 +1666,8 @@
return;
}
+ this.features = this.layer.features.slice(0);
+
this.loadData(features);
}
});
@@ -1693,8 +1732,10 @@
this.layer.removeFeatures(this.layer.features);
this.layer.addFeatures(newFeatures);
- this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
- this.features = this.layer.features.slice(0);
+
+ if (this.tmpView.extended.updateOrganisationUnit) {
+ this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
+ }
this.loadLegend();
}
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic2.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic2.js 2012-11-05 19:23:01 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/mapfish/widgets/geostat/Thematic2.js 2012-11-06 07:41:32 +0000
@@ -59,7 +59,7 @@
store: {
indicatorsByGroup: Ext.create('Ext.data.Store', {
- fields: ['id', 'name'],
+ fields: ['id', 'name', 'legendSet'],
proxy: {
type: 'ajax',
url: '',
@@ -319,12 +319,7 @@
var store = this.cmp.indicator.store;
store.proxy.url = GIS.conf.url.path_api + 'indicatorGroups/' + cb.getValue() + '.json?links=false&paging=false';
- store.load({
- scope: this,
- callback: function() {
- this.cmp.indicator.selectFirst();
- }
- });
+ store.load();
}
}
}
@@ -341,16 +336,35 @@
labelWidth: GIS.conf.layout.widget.itemlabel_width,
listConfig: {loadMask: false},
scope: this,
- selectFirst: function() {
- if (this.store.getCount() > 0) {
- this.setValue(this.store.getAt(0).data.id);
- }
- this.scope.config.extended.updateData = true;
- },
store: this.store.indicatorsByGroup,
listeners: {
select: function() {
- this.scope.config.extended.updateData = true;
+ var that = this.scope;
+ that.config.extended.updateData = true;
+
+ Ext.Ajax.request({
+ url: GIS.conf.url.path_api + 'indicators/' + this.getValue() + '.json?links=false',
+ scope: this,
+ success: function(r) {
+ r = Ext.decode(r.responseText);
+ if (Ext.isDefined(r.legendSet) && r.legendSet && r.legendSet.id) {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_predefined);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_predefined);
+ if (GIS.store.legendSets.isLoaded) {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ }
+ else {
+ GIS.store.legendSets.loadFn( function() {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ });
+ }
+ }
+ else {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_automatic);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_automatic);
+ }
+ }
+ });
}
}
});
@@ -399,16 +413,35 @@
listConfig: {loadMask: false},
hidden: true,
scope: this,
- selectFirst: function() {
- if (this.store.getCount() > 0) {
- this.setValue(this.store.getAt(0).data.id);
- }
- this.scope.config.extended.updateData = true;
- },
store: this.store.dataElementsByGroup,
listeners: {
select: function() {
- this.scope.config.extended.updateData = true;
+ var that = this.scope;
+ that.config.extended.updateData = true;
+
+ Ext.Ajax.request({
+ url: GIS.conf.url.path_api + 'dataElements/' + this.getValue() + '.json?links=false',
+ scope: this,
+ success: function(r) {
+ r = Ext.decode(r.responseText);
+ if (Ext.isDefined(r.legendSet) && r.legendSet && r.legendSet.id) {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_predefined);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_predefined);
+ if (GIS.store.legendSets.isLoaded) {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ }
+ else {
+ GIS.store.legendSets.loadFn( function() {
+ that.cmp.legendSet.setValue(r.legendSet.id);
+ });
+ }
+ }
+ else {
+ that.cmp.legendType.setValue(GIS.conf.finals.widget.legendtype_automatic);
+ that.toggler.legendType(GIS.conf.finals.widget.legendtype_automatic);
+ }
+ }
+ });
}
}
});
@@ -1238,6 +1271,10 @@
success: function(r) {
legends = Ext.decode(r.responseText).mapLegends;
+ Ext.Array.sort(legends, function (a, b) {
+ return a.startValue - b.startValue;
+ });
+
for (var i = 0; i < legends.length; i++) {
if (bounds[bounds.length-1] !== legends[i].startValue) {
if (bounds.length !== 0) {
@@ -1474,7 +1511,7 @@
updateLegend: Ext.isDefined(conf.extended.updateLegend) ? conf.extended.updateLegend : false,
updateGui: Ext.isDefined(conf.extended.updateGui) ? conf.extended.updateGui : false
};
-
+console.log(view);
return view;
},
@@ -1629,6 +1666,8 @@
return;
}
+ this.features = this.layer.features.slice(0);
+
this.loadData(features);
}
});
@@ -1693,8 +1732,10 @@
this.layer.removeFeatures(this.layer.features);
this.layer.addFeatures(newFeatures);
- this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
- this.features = this.layer.features.slice(0);
+
+ if (this.tmpView.extended.updateOrganisationUnit) {
+ this.layer.features = GIS.util.vector.getTransformedFeatureArray(this.layer.features);
+ }
this.loadLegend();
}
@@ -1784,7 +1825,7 @@
this.store.features.loadFeatures(this.layer.features);
// Update filter window
- if (this.cmp.filterWindow && this.cmp.filterWindow.isVisible()) {
+ if (this.cmp.filterWindow && this.cmp.filterWindow.isVisible()) {
this.cmp.filterWindow.filter();
}