dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #25035
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 12341: (GIS) Plugin updates.
Merge authors:
Jan Henrik Øverland (janhenrik-overland)
------------------------------------------------------------
revno: 12341 [merge]
committer: Jan Henrik Overland <janhenrik.overland@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2013-09-30 17:44:43 +0200
message:
(GIS) Plugin updates.
modified:
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/plugin.html
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/core.js
dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/plugin.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/plugin.html'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/plugin.html 2013-09-30 13:40:30 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/plugin.html 2013-09-30 15:43:49 +0000
@@ -8,16 +8,16 @@
<style>
body {font-family: sans-serif; margin: 0 0 0 60px;}
- h1 {font-size: 20px; margin: 20px 0;}
+ h1 {font-size: 20px; margin: 30px 0 20px;}
</style>
</head>
<body style="margin:10px 0 0 30px">
- <h1>My map 1</h1>
+ <h1>MAP BY UID</h1>
<div id="map1" style="width:700px; height:400px"></div>
- <h1>My map 2</h1>
+ <h1>MAP BY CONFIG</h1>
<div id="map2" style="width:700px; height:400px"></div>
<script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false"></script>
@@ -43,13 +43,22 @@
GIS.getMap({
url: url,
el: "map1",
- id: "bhmHJ4ZCdCd"
+ id: "ytkZY3ChM6J"
});
GIS.getMap({
url: url,
el: "map2",
- id: "eDlFx0jTtV9"
+ mapViews: [{
+ columns: [{dimension: 'in', items: [{id: 'Uvn6LCg7dVU'}]}], // data
+ rows: [{dimension: 'ou', items: [{id: 'LEVEL-3'}, {id: 'ImspTQPwCqd'}]}], // organisation units
+ filters: [{dimension: 'pe', items: [{id: 'LAST_3_MONTHS'}]}], // period
+ classes: 7,
+ colorLow: '02079c',
+ colorHigh: 'e5ecff',
+ opacity: 0.9
+ //legendSet: {id: 'fqs276KXCXi'}
+ }]
});
});
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/core.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/core.js 2013-09-30 13:40:30 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/core.js 2013-09-30 15:43:49 +0000
@@ -752,8 +752,7 @@
};
setMap = function() {
- var view,
- views = gis.map.mapViews,
+ var views = gis.map.mapViews,
loader;
if (!(Ext.isArray(views) && views.length)) {
@@ -761,6 +760,16 @@
alert(GIS.i18n.favorite_outdated_create_new);
return;
}
+
+ for (var i = 0; i < views.length; i++) {
+ views[i] = gis.api.layout.Layout(views[i]);
+ }
+
+ views = Ext.Array.clean(views);
+
+ if (!views.length) {
+ return;
+ }
if (gis.viewport && gis.viewport.favoriteWindow && gis.viewport.favoriteWindow.isVisible()) {
gis.viewport.favoriteWindow.destroy();
@@ -768,13 +777,13 @@
gis.olmap.closeAllLayers();
- for (var i = 0; i < views.length; i++) {
- view = views[i];
+ for (var i = 0, layout; i < views.length; i++) {
+ layout = views[i];
- loader = gis.layer[view.layer].core.getLoader();
+ loader = gis.layer[layout.layer].core.getLoader();
loader.updateGui = !gis.el;
loader.callBack = callBack;
- loader.load(view);
+ loader.load(layout);
}
};
@@ -2100,10 +2109,24 @@
}
}
- if (!(dxDim && peDim && ouDim)) {
+ if (!dxDim) {
return;
}
+ if (!peDim) {
+ peDim = {
+ dimension: 'pe',
+ items: [{id: 'LAST_MONTH'}]
+ };
+ }
+
+ if (!ouDim) {
+ ouDim = {
+ dimension: 'ou',
+ items: [{id: 'LEVEL-2'}]
+ };
+ }
+
config.columns = [dxDim];
config.rows = [ouDim];
config.filters = [peDim];
@@ -2127,7 +2150,7 @@
// Config must be an object
if (!(config && Ext.isObject(config))) {
- alert(init.el + ': Data, period and organisation unit dimensions required');
+ alert(gis.el + ': Data required');
return;
}
=== modified file 'dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/plugin.js'
--- dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/plugin.js 2013-09-30 14:23:38 +0000
+++ dhis-2/dhis-web/dhis-web-mapping/src/main/webapp/dhis-web-mapping/app/scripts/plugin.js 2013-09-30 14:47:45 +0000
@@ -1,29 +1,4 @@
Ext.onReady( function() {
- /*
- CONFIG TYPE DEFAULT DESCRIPTION
-
- url string (Required) The base url of the DHIS instance.
- el string (Required) The element id to render the map.
- id string (Optional) A map uid. If provided, only 'el' and 'url' are required.
- longitude number <zoom visible> (Optional) Initial map center longitude.
- latitude number <zoom visible> (Optional) Initial map center latitude.
- zoom number <zoom visible> (Optional) Initial zoom level.
- mapViews [object] (Required*) Array of mapViews. *Required if no map id is provided.
-
- layer string 'thematic1' (Optional) 'boundary', 'thematic1', 'thematic2' or 'facility'.
- indicator string (Required*) Indicator uid. *Required if no data element is provided.
- dataelement string (Required*) Data element uid. *Required if no indicator is provided.
- period string (Required) Fixed period ISO.
- level number 2 (Optional) Organisation unit level.
- parent string (Required) Parent organisation unit uid.
- legendSet string (Optional) Legend set uid.
- classes number 5 (Optional) Automatic legend set, number of classes.
- method number 2 (Optional) Automatic legend set, method. 2 = by class range. 3 = by class count.
- colorLow string 'ff0000' (red) (Optional) Automatic legend set, low color.
- colorHigh string '00ff00' (green) (Optional) Automatic legend set, high color.
- radiusLow number 5 (Optional) Automatic legend set, low radius for points.
- radiusHigh number 15 (Optional) Automatic legend set, high radius for points.
- */
// css
var css = 'body { font-family: arial, sans-serif, liberation sans, consolas !important; font-size: 11px; } \n';
@@ -84,56 +59,22 @@
initialize;
validateConfig = function() {
- if (!config.url || !Ext.isString(config.url)) {
+ if (!Ext.isString(config.url)) {
alert('Invalid url (' + config.el + ')');
- return false;
+ return;
}
- if (!config.el || !Ext.isString(config.el)) {
+ if (!Ext.isString(config.el)) {
alert('Invalid html element id (' + config.el + ')');
- return false;
- }
-
- if (config.id) {
- if (Ext.isString(config.id)) {
- return true;
- }
- else {
- alert('Invalid map id (' + config.el + ')');
- return false;
- }
- }
- else {
- if (!config.indicator && !config.dataelement) {
- alert('No indicator or data element (' + config.el + ')');
- return false;
- }
- else {
- if (config.indicator && !Ext.isString(config.indicator)) {
- alert('Invalid indicator id (' + config.el + ')');
- return false;
- }
- if (config.dataelement && !Ext.isString(config.dataelement)) {
- alert('Invalid dataelement id (' + config.el + ')');
- return false;
- }
- }
-
- if (!config.period) {
- alert('No period (' + config.el + ')');
- return false;
- }
-
- if (!config.level || !Ext.isNumber(config.level)) {
- alert('Invalid organisation unit level (' + config.el + ')');
- return false;
- }
-
- if (!config.parent || !Ext.isNumber(config.parent)) {
- alert('Invalid parent organisation unit (' + config.el + ')');
- return false;
- }
- }
+ return;
+ }
+
+ if (config.id && !Ext.isString(config.id)) {
+ alert('Invalid map id (' + config.el + ')');
+ return;
+ }
+
+ return true;
};
afterRender = function(vp) {
@@ -320,13 +261,7 @@
GIS.core.createSelectHandlers(gis, gis.layer.thematic4);
GIS.core.createSelectHandlers(gis, gis.layer.facility);
- gis.map = {
- id: config.id,
- longitude: config.longitude,
- latitude: config.latitude,
- zoom: config.zoom,
- mapViews: getViews()
- };
+ gis.map = config;
gis.viewport = createViewport();