← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 19143: DV EV plugin fixes.

 

Merge authors:
  Jan Henrik Øverland (janhenrik-overland)
------------------------------------------------------------
revno: 19143 [merge]
committer: Jan Henrik Overland <janhenrik.overland@xxxxxxxxx>
branch nick: dhis2
timestamp: Wed 2015-05-13 02:53:01 +0200
message:
  DV EV plugin fixes.
modified:
  dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-reports/scripts/eventreport.js
  dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/plugin.html
  dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/scripts/eventchart.js
  dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/plugin.html
  dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/scripts/chart.js
  dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/chart.js
  dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/eventchart.js
  dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js
  dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/chart.js
  dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/eventchart.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-apps/src/main/webapp/dhis-web-event-reports/scripts/eventreport.js'
--- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-reports/scripts/eventreport.js	2015-05-11 18:25:57 +0000
+++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-reports/scripts/eventreport.js	2015-05-13 00:51:19 +0000
@@ -4208,7 +4208,7 @@
 				};
 
                 if (!response.rows.length) {
-                    ns.app.centerRegion.update('<div style="padding:20px; border:0 none; background:transparent; color:#555">No values found for the current selection.</div>');
+                    ns.app.centerRegion.update('<div style="padding:20px; border:0 none; background:transparent; color:#555; font-size:11px">No values found for the current selection.</div>');
 
                     web.mask.hide(ns.app.centerRegion);
 

=== modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/plugin.html'
--- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/plugin.html	2015-05-12 12:08:19 +0000
+++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/plugin.html	2015-05-13 00:51:19 +0000
@@ -28,7 +28,7 @@
 			DHIS.getEventChart({
 				url: url,
 				el: 'report1',
-				id: 'CktahCZqrH6'
+				id: 'kSFCt1c5TQ7'
 			});
             
 			//DHIS.getEventChart({

=== modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/scripts/eventchart.js'
--- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/scripts/eventchart.js	2015-05-12 12:17:53 +0000
+++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-event-visualizer/scripts/eventchart.js	2015-05-13 00:51:19 +0000
@@ -5087,6 +5087,7 @@
                     xRowAxis,
                     chart,
                     getOptionSets,
+                    success,
                     getReport,
                     getSXLayout,
                     getXResponse;
@@ -5134,17 +5135,34 @@
                     }
                 };
 
-                getReport = function() {
-                    if (!xLayout && !ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                        return;
-                    }
-
+                success = function() {
                     ns.app.layout = layout;
                     ns.app.xLayout = xLayout;
                     ns.app.response = response;
                     ns.app.xResponse = xResponse;
 
+                    ns.app.chart = chart;
+
+                    if (!ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                    }
+
+                    if (EV.isDebug) {
+                        console.log("layout", layout);
+                        console.log("response", response);
+                        console.log("xResponse", xResponse);
+                        console.log("xLayout", xLayout);
+                        console.log("core", ns.core);
+                        console.log("app", ns.app);
+                    }
+                };
+                
+                getReport = function() {
+                    if (!xLayout && !ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                        return;
+                    }
+
                     chart = web.report.aggregate.createChart(layout, xLayout, xResponse, ns.app.centerRegion);
 
                     // fade
@@ -5165,21 +5183,7 @@
                     ns.app.centerRegion.removeAll();
                     ns.app.centerRegion.add(chart);
 
-                    // after render
-                    ns.app.chart = chart;
-
-                    if (!ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                    }
-
-                    if (EV.isDebug) {
-                        console.log("layout", layout);
-                        console.log("response", response);
-                        console.log("xResponse", xResponse);
-                        console.log("xLayout", xLayout);
-                        console.log("core", ns.core);
-                        console.log("app", ns.app);
-                    }
+                    success();
                 };
 
                 getSXLayout = function() {
@@ -5196,9 +5200,19 @@
                 };
 
                 // execute
-                response = response || ns.app.response;
+                if (!response.rows.length) {
+                    ns.app.centerRegion.removeAll(true);
+                    ns.app.centerRegion.update('');
+                    ns.app.centerRegion.add({
+                        bodyStyle: 'padding:20px; border:0 none; background:transparent; color: #555',
+                        html: 'No values found for the current selection.'
+                    });
 
-                getXResponse();
+                    success();
+                }
+                else {
+                    getXResponse();
+                }
 			};
         };
 

=== modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/plugin.html'
--- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/plugin.html	2015-02-05 11:45:48 +0000
+++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/plugin.html	2015-05-13 00:51:19 +0000
@@ -22,7 +22,7 @@
 			DHIS.getChart({
 				url: url,
 				el: 'chart1',
-				uid: 'ovB8VvUoydp',
+				uid: 'NHH1Y29Y6KZ',
                 crossDomain: false
 			});
 

=== modified file 'dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/scripts/chart.js'
--- dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/scripts/chart.js	2015-05-12 12:08:19 +0000
+++ dhis-2/dhis-web/dhis-web-apps/src/main/webapp/dhis-web-visualizer/scripts/chart.js	2015-05-13 00:51:19 +0000
@@ -4294,12 +4294,35 @@
 					config,
                     ind = ns.core.conf.finals.dimension.indicator.objectName,
                     legendSet,
-                    fn;
-
-                fn = function() {
+                    getReport,
+                    success,
+                    chart;
+
+                success = function() {
+                    
+                    ns.app.layout = layout;
+                    ns.app.xLayout = xLayout;
+                    ns.app.response = response;
+                    ns.app.xResponse = xResponse;
+
+                    ns.app.chart = chart;
+
+                    if (!ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                    }
+
+                    if (DV.isDebug) {
+                        console.log('layout', ns.app.layout);
+                        console.log('xLayout', ns.app.xLayout);
+                        console.log('response', ns.app.response);
+                        console.log('xResponse', ns.app.xResponse);
+                    }
+                };
+
+                getReport = function() {
 
                     // create chart
-                    ns.app.chart = ns.core.web.chart.createChart(ns, legendSet);
+                    chart = ns.core.web.chart.createChart(ns, legendSet);
 
                     // fade
                     //if (!ns.skipFade) {
@@ -4320,47 +4343,48 @@
                     ns.app.centerRegion.removeAll();
                     ns.app.centerRegion.add(ns.app.chart);
 
-                    if (!ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                    }
-
-                    if (DV.isDebug) {
-                        console.log('layout', ns.app.layout);
-                        console.log('xLayout', ns.app.xLayout);
-                        console.log('response', ns.app.response);
-                        console.log('xResponse', ns.app.xResponse);
-                    }
+                    success();
                 };
 
-				if (!xLayout) {
-					xLayout = service.layout.getExtendedLayout(layout);
-				}
-
-				// extend response
-				xResponse = service.response.getExtendedResponse(xLayout, response);
-
-				// references
-				ns.app.layout = layout;
-				ns.app.xLayout = xLayout;
-				ns.app.response = response;
-				ns.app.xResponse = xResponse;
-
-                // legend set
-                if (xLayout.type === 'gauge' && Ext.Array.contains(xLayout.axisObjectNames, ind) && xLayout.objectNameIdsMap[ind].length) {
-                    Ext.Ajax.request({
-                        url: ns.core.init.contextPath + '/api/indicators/' + xLayout.objectNameIdsMap[ind][0] + '.json?fields=legendSet[legends[id,name,startValue,endValue,color]]',
-                        disableCaching: false,
-                        success: function(r) {
-                            legendSet = Ext.decode(r.responseText).legendSet;
-                        },
-                        callback: function() {
-                            fn();
-                        }
+                // execute
+                if (!response.rows.length) {
+                    ns.app.centerRegion.removeAll(true);
+                    ns.app.centerRegion.update('');
+                    ns.app.centerRegion.add({
+                        bodyStyle: 'padding:20px; border:0 none; background:transparent; color: #555',
+                        html: 'No values found for the current selection.'
                     });
+
+                    success();
                 }
                 else {
-                    fn();
+                    if (!xLayout) {
+                        xLayout = service.layout.getExtendedLayout(layout);
+                    }
+
+                    // extend response
+                    xResponse = service.response.getExtendedResponse(xLayout, response);
+
+                    // legend set
+                    if (xLayout.type === 'gauge' && Ext.Array.contains(xLayout.axisObjectNames, ind) && xLayout.objectNameIdsMap[ind].length) {
+                        Ext.Ajax.request({
+                            url: ns.core.init.contextPath + '/api/indicators/' + xLayout.objectNameIdsMap[ind][0] + '.json?fields=legendSet[legends[id,name,startValue,endValue,color]]',
+                            disableCaching: false,
+                            success: function(r) {
+                                legendSet = Ext.decode(r.responseText).legendSet;
+                            },
+                            callback: function() {
+                                getReport();
+                            }
+                        });
+                    }
+                    else {
+                        getReport();
+                    }
                 }
+
+                
+
 			};
 
             // ns

=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/chart.js'
--- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/chart.js	2015-05-12 12:08:19 +0000
+++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/chart.js	2015-05-13 00:51:19 +0000
@@ -4294,12 +4294,35 @@
 					config,
                     ind = ns.core.conf.finals.dimension.indicator.objectName,
                     legendSet,
-                    fn;
-
-                fn = function() {
+                    getReport,
+                    success,
+                    chart;
+
+                success = function() {
+                    
+                    ns.app.layout = layout;
+                    ns.app.xLayout = xLayout;
+                    ns.app.response = response;
+                    ns.app.xResponse = xResponse;
+
+                    ns.app.chart = chart;
+
+                    if (!ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                    }
+
+                    if (DV.isDebug) {
+                        console.log('layout', ns.app.layout);
+                        console.log('xLayout', ns.app.xLayout);
+                        console.log('response', ns.app.response);
+                        console.log('xResponse', ns.app.xResponse);
+                    }
+                };
+
+                getReport = function() {
 
                     // create chart
-                    ns.app.chart = ns.core.web.chart.createChart(ns, legendSet);
+                    chart = ns.core.web.chart.createChart(ns, legendSet);
 
                     // fade
                     //if (!ns.skipFade) {
@@ -4320,47 +4343,48 @@
                     ns.app.centerRegion.removeAll();
                     ns.app.centerRegion.add(ns.app.chart);
 
-                    if (!ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                    }
-
-                    if (DV.isDebug) {
-                        console.log('layout', ns.app.layout);
-                        console.log('xLayout', ns.app.xLayout);
-                        console.log('response', ns.app.response);
-                        console.log('xResponse', ns.app.xResponse);
-                    }
+                    success();
                 };
 
-				if (!xLayout) {
-					xLayout = service.layout.getExtendedLayout(layout);
-				}
-
-				// extend response
-				xResponse = service.response.getExtendedResponse(xLayout, response);
-
-				// references
-				ns.app.layout = layout;
-				ns.app.xLayout = xLayout;
-				ns.app.response = response;
-				ns.app.xResponse = xResponse;
-
-                // legend set
-                if (xLayout.type === 'gauge' && Ext.Array.contains(xLayout.axisObjectNames, ind) && xLayout.objectNameIdsMap[ind].length) {
-                    Ext.Ajax.request({
-                        url: ns.core.init.contextPath + '/api/indicators/' + xLayout.objectNameIdsMap[ind][0] + '.json?fields=legendSet[legends[id,name,startValue,endValue,color]]',
-                        disableCaching: false,
-                        success: function(r) {
-                            legendSet = Ext.decode(r.responseText).legendSet;
-                        },
-                        callback: function() {
-                            fn();
-                        }
+                // execute
+                if (!response.rows.length) {
+                    ns.app.centerRegion.removeAll(true);
+                    ns.app.centerRegion.update('');
+                    ns.app.centerRegion.add({
+                        bodyStyle: 'padding:20px; border:0 none; background:transparent; color: #555',
+                        html: 'No values found for the current selection.'
                     });
+
+                    success();
                 }
                 else {
-                    fn();
+                    if (!xLayout) {
+                        xLayout = service.layout.getExtendedLayout(layout);
+                    }
+
+                    // extend response
+                    xResponse = service.response.getExtendedResponse(xLayout, response);
+
+                    // legend set
+                    if (xLayout.type === 'gauge' && Ext.Array.contains(xLayout.axisObjectNames, ind) && xLayout.objectNameIdsMap[ind].length) {
+                        Ext.Ajax.request({
+                            url: ns.core.init.contextPath + '/api/indicators/' + xLayout.objectNameIdsMap[ind][0] + '.json?fields=legendSet[legends[id,name,startValue,endValue,color]]',
+                            disableCaching: false,
+                            success: function(r) {
+                                legendSet = Ext.decode(r.responseText).legendSet;
+                            },
+                            callback: function() {
+                                getReport();
+                            }
+                        });
+                    }
+                    else {
+                        getReport();
+                    }
                 }
+
+                
+
 			};
 
             // ns

=== modified file 'dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/eventchart.js'
--- dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/eventchart.js	2015-05-12 12:17:53 +0000
+++ dhis-2/dhis-web/dhis-web-commons-resources/src/main/webapp/dhis-web-commons/javascripts/plugin/eventchart.js	2015-05-13 00:51:19 +0000
@@ -5087,6 +5087,7 @@
                     xRowAxis,
                     chart,
                     getOptionSets,
+                    success,
                     getReport,
                     getSXLayout,
                     getXResponse;
@@ -5134,17 +5135,34 @@
                     }
                 };
 
-                getReport = function() {
-                    if (!xLayout && !ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                        return;
-                    }
-
+                success = function() {
                     ns.app.layout = layout;
                     ns.app.xLayout = xLayout;
                     ns.app.response = response;
                     ns.app.xResponse = xResponse;
 
+                    ns.app.chart = chart;
+
+                    if (!ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                    }
+
+                    if (EV.isDebug) {
+                        console.log("layout", layout);
+                        console.log("response", response);
+                        console.log("xResponse", xResponse);
+                        console.log("xLayout", xLayout);
+                        console.log("core", ns.core);
+                        console.log("app", ns.app);
+                    }
+                };
+                
+                getReport = function() {
+                    if (!xLayout && !ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                        return;
+                    }
+
                     chart = web.report.aggregate.createChart(layout, xLayout, xResponse, ns.app.centerRegion);
 
                     // fade
@@ -5165,21 +5183,7 @@
                     ns.app.centerRegion.removeAll();
                     ns.app.centerRegion.add(chart);
 
-                    // after render
-                    ns.app.chart = chart;
-
-                    if (!ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                    }
-
-                    if (EV.isDebug) {
-                        console.log("layout", layout);
-                        console.log("response", response);
-                        console.log("xResponse", xResponse);
-                        console.log("xLayout", xLayout);
-                        console.log("core", ns.core);
-                        console.log("app", ns.app);
-                    }
+                    success();
                 };
 
                 getSXLayout = function() {
@@ -5196,9 +5200,19 @@
                 };
 
                 // execute
-                response = response || ns.app.response;
+                if (!response.rows.length) {
+                    ns.app.centerRegion.removeAll(true);
+                    ns.app.centerRegion.update('');
+                    ns.app.centerRegion.add({
+                        bodyStyle: 'padding:20px; border:0 none; background:transparent; color: #555',
+                        html: 'No values found for the current selection.'
+                    });
 
-                getXResponse();
+                    success();
+                }
+                else {
+                    getXResponse();
+                }
 			};
         };
 

=== modified file 'dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js'
--- dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js	2015-05-12 12:17:53 +0000
+++ dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js	2015-05-12 12:56:31 +0000
@@ -612,7 +612,6 @@
                 labelFont: '9px sans-serif'
             },
             legendStyle: {
-                //labelMaxLength: 10,
                 labelFont: 'normal 10px sans-serif',
                 labelColor: '#222',
                 labelMarkerSize: 10,

=== modified file 'dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/chart.js'
--- dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/chart.js	2015-05-12 12:08:19 +0000
+++ dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/chart.js	2015-05-13 00:51:19 +0000
@@ -4294,12 +4294,35 @@
 					config,
                     ind = ns.core.conf.finals.dimension.indicator.objectName,
                     legendSet,
-                    fn;
-
-                fn = function() {
+                    getReport,
+                    success,
+                    chart;
+
+                success = function() {
+                    
+                    ns.app.layout = layout;
+                    ns.app.xLayout = xLayout;
+                    ns.app.response = response;
+                    ns.app.xResponse = xResponse;
+
+                    ns.app.chart = chart;
+
+                    if (!ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                    }
+
+                    if (DV.isDebug) {
+                        console.log('layout', ns.app.layout);
+                        console.log('xLayout', ns.app.xLayout);
+                        console.log('response', ns.app.response);
+                        console.log('xResponse', ns.app.xResponse);
+                    }
+                };
+
+                getReport = function() {
 
                     // create chart
-                    ns.app.chart = ns.core.web.chart.createChart(ns, legendSet);
+                    chart = ns.core.web.chart.createChart(ns, legendSet);
 
                     // fade
                     //if (!ns.skipFade) {
@@ -4320,47 +4343,48 @@
                     ns.app.centerRegion.removeAll();
                     ns.app.centerRegion.add(ns.app.chart);
 
-                    if (!ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                    }
-
-                    if (DV.isDebug) {
-                        console.log('layout', ns.app.layout);
-                        console.log('xLayout', ns.app.xLayout);
-                        console.log('response', ns.app.response);
-                        console.log('xResponse', ns.app.xResponse);
-                    }
+                    success();
                 };
 
-				if (!xLayout) {
-					xLayout = service.layout.getExtendedLayout(layout);
-				}
-
-				// extend response
-				xResponse = service.response.getExtendedResponse(xLayout, response);
-
-				// references
-				ns.app.layout = layout;
-				ns.app.xLayout = xLayout;
-				ns.app.response = response;
-				ns.app.xResponse = xResponse;
-
-                // legend set
-                if (xLayout.type === 'gauge' && Ext.Array.contains(xLayout.axisObjectNames, ind) && xLayout.objectNameIdsMap[ind].length) {
-                    Ext.Ajax.request({
-                        url: ns.core.init.contextPath + '/api/indicators/' + xLayout.objectNameIdsMap[ind][0] + '.json?fields=legendSet[legends[id,name,startValue,endValue,color]]',
-                        disableCaching: false,
-                        success: function(r) {
-                            legendSet = Ext.decode(r.responseText).legendSet;
-                        },
-                        callback: function() {
-                            fn();
-                        }
+                // execute
+                if (!response.rows.length) {
+                    ns.app.centerRegion.removeAll(true);
+                    ns.app.centerRegion.update('');
+                    ns.app.centerRegion.add({
+                        bodyStyle: 'padding:20px; border:0 none; background:transparent; color: #555',
+                        html: 'No values found for the current selection.'
                     });
+
+                    success();
                 }
                 else {
-                    fn();
+                    if (!xLayout) {
+                        xLayout = service.layout.getExtendedLayout(layout);
+                    }
+
+                    // extend response
+                    xResponse = service.response.getExtendedResponse(xLayout, response);
+
+                    // legend set
+                    if (xLayout.type === 'gauge' && Ext.Array.contains(xLayout.axisObjectNames, ind) && xLayout.objectNameIdsMap[ind].length) {
+                        Ext.Ajax.request({
+                            url: ns.core.init.contextPath + '/api/indicators/' + xLayout.objectNameIdsMap[ind][0] + '.json?fields=legendSet[legends[id,name,startValue,endValue,color]]',
+                            disableCaching: false,
+                            success: function(r) {
+                                legendSet = Ext.decode(r.responseText).legendSet;
+                            },
+                            callback: function() {
+                                getReport();
+                            }
+                        });
+                    }
+                    else {
+                        getReport();
+                    }
                 }
+
+                
+
 			};
 
             // ns

=== modified file 'dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/eventchart.js'
--- dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/eventchart.js	2015-05-12 12:17:53 +0000
+++ dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/plugin/eventchart.js	2015-05-13 00:51:19 +0000
@@ -5087,6 +5087,7 @@
                     xRowAxis,
                     chart,
                     getOptionSets,
+                    success,
                     getReport,
                     getSXLayout,
                     getXResponse;
@@ -5134,17 +5135,34 @@
                     }
                 };
 
-                getReport = function() {
-                    if (!xLayout && !ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                        return;
-                    }
-
+                success = function() {
                     ns.app.layout = layout;
                     ns.app.xLayout = xLayout;
                     ns.app.response = response;
                     ns.app.xResponse = xResponse;
 
+                    ns.app.chart = chart;
+
+                    if (!ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                    }
+
+                    if (EV.isDebug) {
+                        console.log("layout", layout);
+                        console.log("response", response);
+                        console.log("xResponse", xResponse);
+                        console.log("xLayout", xLayout);
+                        console.log("core", ns.core);
+                        console.log("app", ns.app);
+                    }
+                };
+                
+                getReport = function() {
+                    if (!xLayout && !ns.skipMask) {
+                        web.mask.hide(ns.app.centerRegion);
+                        return;
+                    }
+
                     chart = web.report.aggregate.createChart(layout, xLayout, xResponse, ns.app.centerRegion);
 
                     // fade
@@ -5165,21 +5183,7 @@
                     ns.app.centerRegion.removeAll();
                     ns.app.centerRegion.add(chart);
 
-                    // after render
-                    ns.app.chart = chart;
-
-                    if (!ns.skipMask) {
-                        web.mask.hide(ns.app.centerRegion);
-                    }
-
-                    if (EV.isDebug) {
-                        console.log("layout", layout);
-                        console.log("response", response);
-                        console.log("xResponse", xResponse);
-                        console.log("xLayout", xLayout);
-                        console.log("core", ns.core);
-                        console.log("app", ns.app);
-                    }
+                    success();
                 };
 
                 getSXLayout = function() {
@@ -5196,9 +5200,19 @@
                 };
 
                 // execute
-                response = response || ns.app.response;
+                if (!response.rows.length) {
+                    ns.app.centerRegion.removeAll(true);
+                    ns.app.centerRegion.update('');
+                    ns.app.centerRegion.add({
+                        bodyStyle: 'padding:20px; border:0 none; background:transparent; color: #555',
+                        html: 'No values found for the current selection.'
+                    });
 
-                getXResponse();
+                    success();
+                }
+                else {
+                    getXResponse();
+                }
 			};
         };