← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 13348: switch content of availableList when changing dimenttype

 

------------------------------------------------------------
revno: 13348
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Fri 2013-12-20 15:15:25 +0100
message:
  switch content of availableList when changing dimenttype
added:
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryOptionCombo.js
modified:
  dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetDataElementCategoriesAction.java
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryComboForm.vm
  dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryComboForm.vm


--
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-commons/src/main/java/org/hisp/dhis/commons/action/GetDataElementCategoriesAction.java'
--- dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetDataElementCategoriesAction.java	2013-12-20 13:30:35 +0000
+++ dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetDataElementCategoriesAction.java	2013-12-20 14:15:25 +0000
@@ -93,13 +93,13 @@
         else if ( type.equals( DataElementCategoryType.ATTRIBUTE ) )
         {
             dataElementCategories = new ArrayList<DataElementCategory>(
+                dataElementCategoryService.getAttributeCategories() );
+        }
+        else if ( type.equals( DataElementCategoryType.DISAGGREGATION ) )
+        {
+            dataElementCategories = new ArrayList<DataElementCategory>(
                 dataElementCategoryService.getDisaggregationCategories() );
         }
-        else if ( type.equals( DataElementCategoryType.DISAGGREGATION ) )
-        {
-            dataElementCategories = new ArrayList<DataElementCategory>(
-                dataElementCategoryService.getAttributeCategories() );
-        }
 
         Collections.sort( dataElementCategories, IdentifiableObjectNameComparator.INSTANCE );
 

=== added file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryOptionCombo.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryOptionCombo.js	1970-01-01 00:00:00 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/categoryOptionCombo.js	2013-12-20 14:15:25 +0000
@@ -0,0 +1,60 @@
+/*
+ * Copyright (c) 2004-2013, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * Redistributions of source code must retain the above copyright notice, this
+ * list of conditions and the following disclaimer.
+ *
+ * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * Neither the name of the HISP project nor the names of its contributors may
+ * be used to endorse or promote products derived from this software without
+ * specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+dhis2.util.namespace("dhis2.coc");
+
+dhis2.coc = {
+    clearAndSetAjaxSelect: function( type, clearSelected ) {
+        var source = "../dhis-web-commons-ajax-json/getDataElementCategories.action";
+
+        if( type !== undefined ) {
+            source += "?type=" + type;
+        }
+
+        if( clearSelected ) {
+            $('#selectedList').children().empty();
+        }
+
+        jQuery("#availableList").dhisAjaxSelect({
+            source: source,
+            iterator: 'dataElementCategories',
+            sortSelected: false,
+            connectedTo: 'selectedList',
+            handler: function( item ) {
+                var option = jQuery("<option />");
+                option.text(item.name);
+                option.attr("value", item.id);
+
+                return option;
+            }
+        });
+    },
+    getType: function () {
+        return $('#dimensionType').val().toUpperCase();
+    }
+};

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryComboForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryComboForm.vm	2013-12-20 12:15:39 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryComboForm.vm	2013-12-20 14:15:25 +0000
@@ -1,20 +1,13 @@
+<script src="javascript/categoryOptionCombo.js"></script>
 <script type="text/javascript">
-	jQuery(document).ready(	function(){
-		jQuery("#availableList").dhisAjaxSelect({
-			source: "../dhis-web-commons-ajax-json/getDataElementCategories.action",
-			iterator: 'dataElementCategories',
-			sortSelected: false,
-			connectedTo: 'selectedList',
-			handler: function(item) {
-				var option = jQuery("<option />");
-				option.text( item.name );
-				option.attr( "value", item.id );
-
-				return option;
-			}
-		});
-
-		validation2( 'addDataElementCategoryComboForm', function( form ){ 
+    jQuery(document).ready(	function(){
+        dhis2.coc.clearAndSetAjaxSelect(dhis2.coc.getType(), false);
+
+        $('#dimensionType').on('change', function( e ) {
+            dhis2.coc.clearAndSetAjaxSelect(dhis2.coc.getType(), true);
+        });
+
+        validation2( 'addDataElementCategoryComboForm', function( form ){
 			validateSelectedCategories( form );
 		}, {
 			'beforeValidateHandler': function() { listValidator( 'selectedCategories', 'selectedList' ); },

=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryComboForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryComboForm.vm	2013-12-20 12:55:20 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryComboForm.vm	2013-12-20 14:15:25 +0000
@@ -1,30 +1,23 @@
+<script src="javascript/categoryOptionCombo.js"></script>
 <script type="text/javascript">
 	jQuery(document).ready(	function(){
-		jQuery("#availableList").dhisAjaxSelect({
-			source: "../dhis-web-commons-ajax-json/getDataElementCategories.action",
-			iterator: 'dataElementCategories',
-			sortSelected: false,
-			connectedTo: 'selectedList',
-			handler: function(item) {
-				var option = jQuery("<option />");
-				option.text( item.name );
-				option.attr( "value", item.id );
-
-				return option;
-			}
-		});
-
-		validation2( 'editDataElementCategoryComboForm', function( form ) { 
+        dhis2.coc.clearAndSetAjaxSelect(dhis2.coc.getType(), false);
+
+        $('#dimensionType').on('change', function( e ) {
+            dhis2.coc.clearAndSetAjaxSelect(dhis2.coc.getType(), true);
+        });
+
+		validation2( 'editDataElementCategoryComboForm', function( form ) {
 			validateSelectedCategories( form );
 		}, {
-			'beforeValidateHandler': function() { 
+			'beforeValidateHandler': function() {
 				jQuery("#selectedList option").each(function() { jQuery(this).attr("selected", "true"); });
 				listValidator( 'selectedCategories', 'selectedList' );
 			},
 			'rules': getValidationRules("dateElementCategoryCombo")
 		});
 
-		checkValueIsExist( "name", "validateDataElementCategoryCombo.action", {id: $dataElementCategoryCombo.id});				
+		checkValueIsExist( "name", "validateDataElementCategoryCombo.action", {id: $dataElementCategoryCombo.id});
 	});
 </script>