← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 16005: ER orgunit group sets, attributes, work in progress.

 

Merge authors:
  Jan Henrik Øverland (janhenrik-overland)
------------------------------------------------------------
revno: 16005 [merge]
committer: Jan Henrik Overland <janhenrik.overland@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2014-07-07 21:11:52 +0200
message:
  ER orgunit group sets, attributes, work in progress.
modified:
  dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/app.js
  dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/core.js
  dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/styles/style.css


--
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-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/app.js'
--- dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/app.js	2014-06-26 14:37:15 +0000
+++ dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/app.js	2014-07-07 19:06:50 +0000
@@ -3041,7 +3041,7 @@
             dataElementSelected,
             addUxFromDataElement,
             selectDataElements,
-            dataElement,
+            data,
 
             periodMode,
             onPeriodModeSelect,
@@ -3086,6 +3086,11 @@
 			tool,
 			toolPanel,
             organisationUnit,
+			dimensionIdAvailableStoreMap = {},
+			dimensionIdSelectedStoreMap = {},
+
+			getDimensionPanel,
+			getDimensionPanels,
 
             accordionBody,
 			accordionPanels = [],
@@ -3375,7 +3380,7 @@
                         }
 
                         stages = program.programStages;
-                        attributes = Ext.Array.pluck(program.programTrackedEntityAttributes, 'attribute');
+                        attributes = Ext.Array.pluck(program.programTrackedEntityAttributes, 'trackedEntityAttribute');
 
                         // attributes cache
                         if (Ext.isArray(attributes) && attributes.length) {
@@ -3443,7 +3448,7 @@
                 var attributes = attributeStorage[programId],
                     data = Ext.Array.clean([].concat(attributes || [], dataElements || []));
 
-				dataElementsByStageStore.loadData(dataElements);
+				dataElementsByStageStore.loadData(data);
 
                 if (layout) {
                     var dataDimensions = ns.core.service.layout.getDataDimensionsFromLayout(layout),
@@ -3756,23 +3761,43 @@
 			}
         };
 
-        dataElement = Ext.create('Ext.panel.Panel', {
+        programStagePanel = Ext.create('Ext.panel.Panel', {
+            layout: 'column',
+            bodyStyle: 'border:0 none',
+            style: 'margin-top:2px',
+            items: [
+                program,
+                stage
+            ]
+        });
+
+        data = Ext.create('Ext.panel.Panel', {
             title: '<div class="ns-panel-title-data">Data</div>',
             bodyStyle: 'padding:1px',
             hideCollapseTool: true,
             items: [
-                {
-					layout: 'column',
-                    bodyStyle: 'border:0 none',
-					style: 'margin-top:2px',
-					items: [
-						program,
-						stage
-					]
-				},
+                programStagePanel,
                 dataElementAvailable,
                 dataElementSelected
             ],
+            onExpand: function() {
+				var h = ns.app.westRegion.hasScrollbar ?
+					ns.core.conf.layout.west_scrollbarheight_accordion_indicator : ns.core.conf.layout.west_maxheight_accordion_indicator;
+
+				accordion.setThisHeight(h);
+
+				//ns.core.web.multiSelect.setHeight(
+					//[dataElementAvailable, dataElementSelected],
+					//this,
+					//ns.core.conf.layout.west_fill_accordion_indicator
+				//);
+
+                var msHeight = this.getHeight() - 28 - programStagePanel.getHeight() - 6;
+
+                dataElementAvailable.setHeight(msHeight * 0.4);
+                dataElementSelected.setHeight(msHeight * 0.6);
+
+            },
             listeners: {
 				added: function(cmp) {
 					accordionPanels.push(cmp);
@@ -4360,6 +4385,16 @@
             bodyStyle: 'padding:1px',
             hideCollapseTool: true,
             width: accBaseWidth,
+			onExpand: function() {
+				var h = ns.app.westRegion.hasScrollbar ?
+					ns.core.conf.layout.west_scrollbarheight_accordion_period : ns.core.conf.layout.west_maxheight_accordion_period;
+				accordion.setThisHeight(h);
+				ns.core.web.multiSelect.setHeight(
+					[fixedPeriodAvailable, fixedPeriodSelected],
+					this,
+					ns.core.conf.layout.west_fill_accordion_period
+				);
+			},
             reset: function() {
 				this.resetRelativePeriods();
 				this.resetFixedPeriods();
@@ -4879,7 +4914,6 @@
 
         organisationUnit = Ext.create('Ext.panel.Panel', {
             title: '<div class="ns-panel-title-organisationunit">' + NS.i18n.organisation_units + '</div>',
-            cls: 'ns-accordion-last',
             bodyStyle: 'padding:1px',
             hideCollapseTool: true,
             items: [
@@ -4894,6 +4928,12 @@
                 },
                 treePanel
             ],
+            onExpand: function() {
+                var h = ns.app.westRegion.hasScrollbar ?
+                    ns.core.conf.layout.west_scrollbarheight_accordion_organisationunit : ns.core.conf.layout.west_maxheight_accordion_organisationunit;
+                accordion.setThisHeight(h);
+                treePanel.setHeight(this.getHeight() - ns.core.conf.layout.west_fill_accordion_organisationunit);
+            },
             listeners: {
 				added: function(cmp) {
 					accordionPanels.push(cmp);
@@ -4901,23 +4941,299 @@
 			}
         });
 
+		// dimensions
+
+		getDimensionPanel = function(dimension, iconCls) {
+			var	onSelect,
+                availableStore,
+				selectedStore,
+				available,
+				selected,
+				panel,
+
+				createPanel,
+				getPanels;
+
+            onSelect = function() {
+                var win = ns.app.viewport.getLayoutWindow();
+
+                if (selectedStore.getRange().length) {
+                    win.addDimension({id: dimension.id, name: dimension.name});
+                }
+                else if (!selectedStore.getRange().length && win.hasDimension(dimension.id)) {
+                    win.removeDimension(dimension.id);
+                }
+            };
+
+			availableStore = Ext.create('Ext.data.Store', {
+				fields: ['id', 'name'],
+				lastPage: null,
+				nextPage: 1,
+				isPending: false,
+				isLoaded: false,
+				reset: function() {
+					this.removeAll();
+					this.lastPage = null;
+					this.nextPage = 1;
+					this.isPending = false;
+					//indicatorSearch.hideFilter();
+				},
+				loadPage: function(filter, append) {
+					var store = this,
+						path;
+
+					filter = filter || null;
+
+					if (!append) {
+						this.lastPage = null;
+						this.nextPage = 1;
+					}
+
+					if (store.nextPage === store.lastPage) {
+						return;
+					}
+
+					path = '/organisationUnitGroups.json?fields=id,name&filter=organisationUnitGroupSet.id:eq:' + dimension.id + (filter ? '&filter=name:like:' + filter : '');
+
+					store.isPending = true;
+
+					Ext.Ajax.request({
+						url: ns.core.init.contextPath + '/api' + path,
+						params: {
+							page: store.nextPage,
+							pageSize: 50
+						},
+						failure: function() {
+							store.isPending = false;
+						},
+						success: function(r) {
+							var response = Ext.decode(r.responseText),
+								data = response.organisationUnitGroups || [],
+								pager = response.pager;
+
+							store.loadStore(data, pager, append);
+						}
+					});
+				},
+				loadStore: function(data, pager, append) {
+					this.loadData(data, append);
+					this.lastPage = this.nextPage;
+
+					if (pager.pageCount > this.nextPage) {
+						this.nextPage++;
+					}
+
+					this.isPending = false;
+					ns.core.web.multiSelect.filterAvailable({store: availableStore}, {store: selectedStore});
+				},
+				sortStore: function() {
+					this.sort('name', 'ASC');
+				}
+			});
+
+			selectedStore = Ext.create('Ext.data.Store', {
+				fields: ['id', 'name'],
+				data: [],
+                listeners: {
+                    add: function() {
+                        onSelect();
+                    },
+                    remove: function() {
+                        onSelect();
+                    },
+                    clear: function() {
+                        onSelect();
+                    }
+                }
+			});
+
+			available = Ext.create('Ext.ux.form.MultiSelect', {
+				cls: 'ns-toolbar-multiselect-left',
+                width: accBaseWidth / 2,
+				valueField: 'id',
+				displayField: 'name',
+				store: availableStore,
+				tbar: [
+					{
+						xtype: 'label',
+						text: NS.i18n.available,
+						cls: 'ns-toolbar-multiselect-left-label'
+					},
+					'->',
+					{
+						xtype: 'button',
+						icon: 'images/arrowright.png',
+						width: 22,
+						handler: function() {
+							ns.core.web.multiSelect.select(available, selected);
+						}
+					},
+					{
+						xtype: 'button',
+						icon: 'images/arrowrightdouble.png',
+						width: 22,
+						handler: function() {
+							ns.core.web.multiSelect.selectAll(available, selected);
+						}
+					}
+				],
+				listeners: {
+					render: function(ms) {
+						var el = Ext.get(ms.boundList.getEl().id + '-listEl').dom;
+
+						el.addEventListener('scroll', function(e) {
+							if (isScrolled(e) && !availableStore.isPending) {
+								availableStore.loadPage(null, true);
+							}
+						});
+
+						ms.boundList.on('itemdblclick', function() {
+							ns.core.web.multiSelect.select(available, selected);
+						}, ms);
+					}
+				}
+			});
+
+			selected = Ext.create('Ext.ux.form.MultiSelect', {
+				cls: 'ns-toolbar-multiselect-right',
+                width: accBaseWidth / 2,
+				valueField: 'id',
+				displayField: 'name',
+				ddReorder: true,
+				store: selectedStore,
+				tbar: [
+					{
+						xtype: 'button',
+						icon: 'images/arrowleftdouble.png',
+						width: 22,
+						handler: function() {
+							ns.core.web.multiSelect.unselectAll(available, selected);
+						}
+					},
+					{
+						xtype: 'button',
+						icon: 'images/arrowleft.png',
+						width: 22,
+						handler: function() {
+							ns.core.web.multiSelect.unselect(available, selected);
+						}
+					},
+					'->',
+					{
+						xtype: 'label',
+						text: NS.i18n.selected,
+						cls: 'ns-toolbar-multiselect-right-label'
+					}
+				],
+				listeners: {
+					afterrender: function() {
+						this.boundList.on('itemdblclick', function() {
+							ns.core.web.multiSelect.unselect(available, selected);
+						}, this);
+					}
+				}
+			});
+
+			dimensionIdAvailableStoreMap[dimension.id] = availableStore;
+			dimensionIdSelectedStoreMap[dimension.id] = selectedStore;
+
+			//availableStore.on('load', function() {
+				//ns.core.web.multiSelect.filterAvailable(available, selected);
+			//});
+
+			panel = {
+				xtype: 'panel',
+				title: '<div class="' + iconCls + '">' + dimension.name + '</div>',
+				hideCollapseTool: true,
+				availableStore: availableStore,
+				selectedStore: selectedStore,
+				getDimension: function() {
+					var config = {
+						dimension: dimension.id,
+						items: []
+					};
+
+					selectedStore.each( function(r) {
+						config.items.push({id: r.data.id});
+					});
+
+					return config.items.length ? config : null;
+				},
+				onExpand: function() {
+					if (!availableStore.isLoaded) {
+						availableStore.loadPage();
+					}
+
+					var h = ns.app.westRegion.hasScrollbar ?
+						ns.core.conf.layout.west_scrollbarheight_accordion_group : ns.core.conf.layout.west_maxheight_accordion_group;
+					accordion.setThisHeight(h);
+					ns.core.web.multiSelect.setHeight(
+						[available, selected],
+						this,
+						ns.core.conf.layout.west_fill_accordion_dataset
+					);
+				},
+				items: [
+					{
+						xtype: 'panel',
+						layout: 'column',
+						bodyStyle: 'border-style:none',
+						items: [
+							available,
+							selected
+						]
+					}
+				],
+				listeners: {
+					added: function() {
+						accordionPanels.push(this);
+					},
+					expand: function(p) {
+						p.onExpand();
+					}
+				}
+			};
+
+			return panel;
+		};
+
+		getDimensionPanels = function(dimensions, iconCls) {
+			var panels = [];
+
+			for (var i = 0, panel; i < dimensions.length; i++) {
+				panels.push(getDimensionPanel(dimensions[i], iconCls));
+			}
+
+			return panels;
+		};
+
             // accordion
         accordionBody = Ext.create('Ext.panel.Panel', {
 			layout: 'accordion',
 			activeOnTop: true,
 			cls: 'ns-accordion',
 			bodyStyle: 'border:0 none',
-			height: 550,
-			items: [
-                dataElement,
-                period,
-                organisationUnit
-            ],
+			height: 700,
+			items: function() {
+                var panels = [
+                    data,
+                    period,
+                    organisationUnit
+                ],
+				dims = Ext.clone(ns.core.init.dimensions);
+
+				panels = panels.concat(getDimensionPanels(dims, 'ns-panel-title-dimension'));
+
+				last = panels[panels.length - 1];
+				last.cls = 'ns-accordion-last';
+
+				return panels;
+            }(),
             listeners: {
                 afterrender: function() { // nasty workaround, should be fixed
                     organisationUnit.expand();
                     period.expand();
-                    dataElement.expand();
+                    data.expand();
                 }
             }
 		});
@@ -4978,7 +5294,8 @@
 		};
 
 		getView = function(config) {
-			var view = {},
+			var panels = ns.app.accordion.panels,
+                view = {},
 				dataType = ns.app.typeToolbar.getType(),
 				layoutWindow = ns.app.viewport.getLayoutWindow(dataType),
 				map = {},
@@ -4996,7 +5313,6 @@
             }
 
 			// pe
-
             if (periodMode.getValue() === 'dates') {
                 view.startDate = startDate.getSubmitValue();
                 view.endDate = endDate.getSubmitValue();
@@ -5012,11 +5328,9 @@
 			}
 
 			// ou
-
 			map['ou'] = [treePanel.getDimension()];
 
             // data items
-
             for (var i = 0, record; i < dataElementSelected.items.items.length; i++) {
                 record = dataElementSelected.items.items[i].getRecord();
 
@@ -5025,13 +5339,24 @@
                 map[record.dimension].push(record);
             }
 
+            // dynamic dimensions data
+            for (var i = 0, panel, dim, dimName; i < panels.length; i++) {
+                panel = panels[i];
+
+                if (panel.getDimension) {
+                    dim = panel.getDimension();
+
+                    if (dim && !map.hasOwnProperty(dim.dimension)) {
+                        map[dim.dimension] = [dim];
+                    }
+                }
+            }
+
             // other
-
             map['longitude'] = [{dimension: 'longitude'}];
             map['latitude'] = [{dimension: 'latitude'}];
 
             // dimensions
-
             if (layoutWindow.colStore) {
 				layoutWindow.colStore.each(function(item) {
 					a = map[item.data.id] || [];
@@ -5161,35 +5486,65 @@
 			return view;
 		};
 
-		panel = Ext.create('Ext.panel.Panel', {
+		accordion = Ext.create('Ext.panel.Panel', {
+			bodyStyle: 'border-style:none; padding:1px; padding-bottom:0; overflow-y:scroll;',
+            accordionBody: accordionBody,
+			items: accordionBody,
+			panels: accordionPanels,
+
 			map: layer ? layer.map : null,
 			layer: layer ? layer : null,
 			menu: layer ? layer.menu : null,
 
+			setThisHeight: function(mx) {
+				var settingsHeight = 41,
+					panelHeight = settingsHeight + this.panels.length * 28,
+					height;
+
+				if (ns.app.westRegion.hasScrollbar) {
+					height = panelHeight + mx;
+					this.setHeight(viewport.getHeight() - settingsHeight - 2);
+					accordionBody.setHeight(height - settingsHeight - 2);
+				}
+				else {
+					height = ns.app.westRegion.getHeight() - ns.core.conf.layout.west_fill - settingsHeight;
+					mx += panelHeight;
+					this.setHeight((height > mx ? mx : height) - 2);
+					accordionBody.setHeight((height > mx ? mx : height) - 2);
+				}
+			},
+			getExpandedPanel: function() {
+				for (var i = 0, panel; i < this.panels.length; i++) {
+					if (!this.panels[i].collapsed) {
+						return this.panels[i];
+					}
+				}
+
+				return null;
+			},
+			getFirstPanel: function() {
+				return this.panels[0];
+			},
+			getParentGraphMap: function() {
+				return treePanel.getParentGraphMap();
+			},
+
 			accordionBody: accordionBody,
-			accordionPanels: accordionPanels,
+			panels: accordionPanels,
             treePanel: treePanel,
 
 			reset: reset,
 			setGui: setGui,
 			getView: getView,
-			getParentGraphMap: function() {
-				return treePanel.getParentGraphMap();
-			},
 
-			cls: 'ns-form-widget',
-			border: false,
-			items: [
-                accordionBody
-			],
             listeners: {
                 added: function() {
-					ns.app.widget = this;
+					ns.app.accordion = this;
 				}
             }
 		});
 
-		return panel;
+		return accordion;
 	};
 
 	// core
@@ -5287,10 +5642,16 @@
 				}
 			};
 
-			web.multiSelect.setHeight = function(ms, panel, fill) {
-				for (var i = 0, height; i < ms.length; i++) {
-					height = panel.getHeight() - fill - (ms[i].hasToolbar ? 25 : 0);
-					ms[i].setHeight(height);
+			web.multiSelect.setHeight = function(multiSelects, panel, fill) {
+                fill = fill || 0;
+
+
+				for (var i = 0, height, ms, hasToolbar; i < multiSelects.length; i++) {
+                    ms = multiSelects[i];
+                    hasToolbar = Ext.isArray(ms.tbar) && ms.tbar.length;
+
+					height = panel.getHeight() - 4 - fill - (hasToolbar ? 27 : 0);
+					ms.setHeight(height);
 				}
 			};
 
@@ -5655,7 +6016,7 @@
 			web.report = web.report || {};
 
 			web.report.getLayoutConfig = function() {
-                var view = ns.app.widget.getView(),
+                var view = ns.app.accordion.getView(),
                     options = {};
 
                 if (!view) {
@@ -5843,7 +6204,7 @@
 						web.storage.session.set(layout, 'eventtable');
 					}
 
-					ns.app.widget.setGui(layout, xLayout, response, isUpdateGui, table);
+					ns.app.accordion.setGui(layout, xLayout, response, isUpdateGui, table);
 
 					web.mask.hide(ns.app.centerRegion);
 
@@ -5883,7 +6244,7 @@
 						web.events.setColumnHeaderMouseHandlers(layout, response, xResponse);
 					}
 
-					ns.app.widget.setGui(layout, null, response, isUpdateGui, table);
+					ns.app.accordion.setGui(layout, null, response, isUpdateGui, table);
 
 					web.mask.hide(ns.app.centerRegion);
 				};
@@ -5993,7 +6354,7 @@
         paramButtonMap[caseButton.param] = caseButton;
 
 		typeToolbar = Ext.create('Ext.toolbar.Toolbar', {
-			style: 'padding:1px; background:#f5f5f5; border:0 none',
+			style: 'padding:1px; background:#fff; border:0 none',
             height: 41,
             getType: function() {
 				return aggregateButton.pressed ? aggregateButton.param : caseButton.param;
@@ -6032,48 +6393,7 @@
 			update();
 		};
 
-		widget = LayerWidgetEvent();
-
-		accordion = Ext.create('Ext.panel.Panel', {
-			bodyStyle: 'border-style:none; padding:1px; padding-bottom:0; overflow-y:scroll;',
-			panels: widget.accordionPanels,
-			setThisHeight: function(mx) {
-				var panelHeight = this.panels.length * 28,
-					height;
-
-				if (westRegion.hasScrollbar) {
-					height = panelHeight + mx;
-					this.setHeight(viewport.getHeight() - 2);
-					widget.setHeight(height - 2);
-				}
-				else {
-					height = westRegion.getHeight() - ns.core.conf.layout.west_fill;
-					mx += panelHeight;
-					accordion.setHeight((height > mx ? mx : height) - 2);
-					widget.setHeight((height > mx ? mx : height) - 2);
-				}
-			},
-			getExpandedPanel: function() {
-				for (var i = 0, panel; i < this.panels.length; i++) {
-					if (!this.panels[i].collapsed) {
-						return this.panels[i];
-					}
-				}
-
-				return null;
-			},
-			getFirstPanel: function() {
-				return this.panels[0];
-			},
-			items: [
-				widget
-			],
-			listeners: {
-				added: function() {
-					ns.app.accordion = this;
-				}
-			}
-		});
+		accordion = LayerWidgetEvent();
 
 		update = function() {
 			var config = ns.core.web.report.getLayoutConfig();
@@ -6478,7 +6798,7 @@
 										disabled: !(NS.isSessionStorage && ns.app.layout),
 										handler: function() {
 											if (NS.isSessionStorage) {
-												ns.app.layout.parentGraphMap = ns.app.widget.treePanel.getParentGraphMap();
+												ns.app.layout.parentGraphMap = ns.app.accordion.treePanel.getParentGraphMap();
 												ns.core.web.storage.session.set(ns.app.layout, 'eventanalytical', ns.core.init.contextPath + '/dhis-web-event-visualizer/app/index.html?s=eventanalytical');
 											}
 										}
@@ -6549,6 +6869,8 @@
 		});
 
         getLayoutWindow = function(dataType) {
+            dataType = dataType || typeToolbar.getType();
+
             if (dataType === 'aggregated_values') {
                 return ns.app.aggregateLayoutWindow;
             }
@@ -6561,6 +6883,8 @@
         };
 
         getOptionsWindow = function(dataType) {
+            dataType = dataType || typeToolbar.getType();
+
             if (dataType === 'aggregated_values') {
                 return ns.app.aggregateOptionsWindow;
             }
@@ -6595,20 +6919,20 @@
 				afterrender: function() {
 
 					// resize event handler
-					//westRegion.on('resize', function() {
-						//var panel = accordion.getExpandedPanel();
+					westRegion.on('resize', function() {
+						var panel = accordion.getExpandedPanel();
 
-						//if (panel) {
-							//panel.onExpand(); //todo
-						//}
-					//});
+						if (panel) {
+							panel.onExpand();
+						}
+					});
 
 					// left gui
 					var viewportHeight = westRegion.getHeight(),
-						numberOfTabs = 3,
+						numberOfTabs = ns.core.init.dimensions.length + 3,
 						tabHeight = 28,
 						minPeriodHeight = 380,
-						settingsHeight = 91;
+						settingsHeight = 41;
 
 					if (viewportHeight > numberOfTabs * tabHeight + minPeriodHeight + settingsHeight) {
 						if (!Ext.isIE) {
@@ -6622,7 +6946,7 @@
 					}
 
 					// expand first panel
-					//accordion.getFirstPanel().expand(); //todo
+					accordion.getFirstPanel().expand();
 
 					// look for url params
 					var id = ns.core.web.url.getParam('id'),
@@ -6761,9 +7085,9 @@
 
 								// dimensions
 								requests.push({
-									url: init.contextPath + '/api/dimensions.json?links=false&paging=false',
+									url: init.contextPath + '/api/organisationUnitGroupSets.json?fields=id,name&paging=false',
 									success: function(r) {
-										init.dimensions = Ext.decode(r.responseText).dimensions || [];
+										init.dimensions = Ext.decode(r.responseText).organisationUnitGroupSets || [];
 										fn();
 									}
 								});

=== modified file 'dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/core.js'
--- dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/core.js	2014-06-27 11:04:54 +0000
+++ dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/scripts/core.js	2014-07-07 18:30:38 +0000
@@ -130,23 +130,17 @@
 				west_width: 452,
 				west_fill: 2,
 				west_fill_accordion_indicator: 59,
-				west_fill_accordion_dataelement: 59,
 				west_fill_accordion_dataset: 33,
-				west_fill_accordion_period: 296,
-				west_fill_accordion_organisationunit: 62,
-				west_maxheight_accordion_indicator: 400,
-				west_maxheight_accordion_dataelement: 400,
+				west_fill_accordion_period: 293,
+				west_fill_accordion_organisationunit: 58,
+				west_maxheight_accordion_indicator: 500,
 				west_maxheight_accordion_dataset: 400,
-				west_maxheight_accordion_period: 513,
+				west_maxheight_accordion_period: 540,
 				west_maxheight_accordion_organisationunit: 900,
-				west_maxheight_accordion_group: 340,
-				west_maxheight_accordion_options: 449,
-				west_scrollbarheight_accordion_indicator: 300,
-				west_scrollbarheight_accordion_dataelement: 300,
+				west_scrollbarheight_accordion_indicator: 500,
 				west_scrollbarheight_accordion_dataset: 300,
-				west_scrollbarheight_accordion_period: 450,
+				west_scrollbarheight_accordion_period: 475,
 				west_scrollbarheight_accordion_organisationunit: 450,
-				west_scrollbarheight_accordion_group: 300,
 				east_tbar_height: 31,
 				east_gridcolumn_height: 30,
 				form_label_width: 55,

=== modified file 'dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/styles/style.css'
--- dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/styles/style.css	2014-04-09 17:53:41 +0000
+++ dhis-2/dhis-web/dhis-web-event-reports/src/main/webapp/dhis-web-event-reports/app/styles/style.css	2014-07-03 15:01:59 +0000
@@ -1093,7 +1093,7 @@
 
 	/* accordion item body */
 .ns-accordion .x-accordion-body {
-	padding: 2px 2px 0px;
+	padding: 1px;
 	border-top: 1px solid #c5c5c5 !important;
 }