← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 2195: Fix bug: Service/Data Quality/Validation Rule Group.

 

------------------------------------------------------------
revno: 2195
committer: Tran Chau <tran.hispvietnam@xxxxxxxxx>
branch nick: trunk
timestamp: Wed 2010-09-22 14:54:20 +0700
message:
  Fix bug: Service/Data Quality/Validation Rule Group.
modified:
  dhis-2/dhis-web/dhis-web-validationrule/src/main/java/org/hisp/dhis/validationrule/action/validationrulegroup/ValidateValidationRuleGroupAction.java
  dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/org/hisp/dhis/validationrule/i18n_module.properties
  dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/struts.xml
  dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/addValidationRuleGroupForm.vm
  dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/javascript/validationRuleGroup.js
  dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/updateValidationRuleGroupForm.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-validationrule/src/main/java/org/hisp/dhis/validationrule/action/validationrulegroup/ValidateValidationRuleGroupAction.java'
--- dhis-2/dhis-web/dhis-web-validationrule/src/main/java/org/hisp/dhis/validationrule/action/validationrulegroup/ValidateValidationRuleGroupAction.java	2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-web/dhis-web-validationrule/src/main/java/org/hisp/dhis/validationrule/action/validationrulegroup/ValidateValidationRuleGroupAction.java	2010-09-22 07:54:20 +0000
@@ -75,13 +75,6 @@
     {
         this.name = name;
     }
-    
-    private String description;
-
-    public void setDescription( String description )
-    {
-        this.description = description;
-    }
 
     // -------------------------------------------------------------------------
     // Output
@@ -100,20 +93,6 @@
 
     public String execute()
     {
-        if ( name == null || name.trim().length() == 0 )
-        {
-            message = i18n.getString( "specify_name" );
-            
-            return INPUT;
-        }
-        
-        if ( description == null || description.trim().length() == 0 )
-        {
-            message = i18n.getString( "specify_description" );
-            
-            return INPUT;
-        }
-        
         ValidationRuleGroup match = validationRuleService.getValidationRuleGroupByName( name );
         
         if ( match != null && ( id == null || match.getId() != id ) )

=== modified file 'dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/org/hisp/dhis/validationrule/i18n_module.properties'
--- dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/org/hisp/dhis/validationrule/i18n_module.properties	2010-09-18 09:50:09 +0000
+++ dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/org/hisp/dhis/validationrule/i18n_module.properties	2010-09-22 07:54:20 +0000
@@ -178,4 +178,5 @@
 method = Method
 see_statistics = See statistics
 description_not_null = Please specify a description
-expression_not_null = Please specify an expression
\ No newline at end of file
+expression_not_null = Please specify an expression
+number_of_members = Number of menbers
\ No newline at end of file

=== modified file 'dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/struts.xml'
--- dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/struts.xml	2010-09-18 09:50:09 +0000
+++ dhis-2/dhis-web/dhis-web-validationrule/src/main/resources/struts.xml	2010-09-22 07:54:20 +0000
@@ -134,9 +134,9 @@
     </action>
     
     <action name="validateValidationRuleGroup" class="org.hisp.dhis.validationrule.action.validationrulegroup.ValidateValidationRuleGroupAction">
-      <result name="success" type="velocity-xml">/dhis-web-validationrule/responseSuccess.vm</result>
-      <result name="error" type="velocity-xml">/dhis-web-validationrule/responseError.vm</result>
-      <result name="input" type="velocity-xml">/dhis-web-validationrule/responseInput.vm</result>
+     <result name="success" type="velocity-json">/dhis-web-commons/ajax/jsonResponseSuccess.vm</result>
+	  <result name="error" type="velocity-json">/dhis-web-commons/ajax/jsonResponseError.vm</result>
+      <result name="input" type="velocity-json">/dhis-web-commons/ajax/jsonResponseInput.vm</result>
     </action>
     
     <!-- Run validation -->

=== modified file 'dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/addValidationRuleGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/addValidationRuleGroupForm.vm	2010-07-02 10:12:52 +0000
+++ dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/addValidationRuleGroupForm.vm	2010-09-22 07:54:20 +0000
@@ -5,21 +5,17 @@
 	jQuery(document).ready(
 			function()
 			{
-				jQuery("#addValidationRuleGroupForm").validate({
-					 meta:"validate"
-					,errorElement:"td"
-					,submitHandler: function(form)
-									{
-										validateAddValidationRuleGroup();
-									}
-				});
-				jQuery.validator.setMessages( validationMessage );
 				jQuery("#name").focus();
+				
+				validation( 'addValidationRuleGroupForm', 
+				function( form ){ form.submit() }, 
+				function(){ selectAllById('groupMembers') });
+				
+				checkValueIsExist( "name", "validateValidationRuleGroup.action");
 			}
 	);
 
 </script>
-<input type="hidden" id="curLocaleCode" value="$locale.getLanguage()_$locale.getCountry()"/>
 <h3>$i18n.getString( "create_new_validation_rule_group" )</h3>
 
 <form id="addValidationRuleGroupForm" action="addValidationRuleGroup.action" method="post" >
@@ -33,8 +29,8 @@
         <td><input type="text" id="name" name="name" style="width:20em" maxlength="160" class="{validate:{required:true,minlength:2,maxlength:160}}" ></td>
     </tr>
     <tr>
-        <td><label for="description">$i18n.getString( "description" )</label></td>
-        <td><input type="text" id="description" name="description" style="width:20em"  ></td>
+        <td><label for="description">$i18n.getString( "description" )<em title="$i18n.getString( "required" )" class="required">*</em></label></td>
+        <td><input type="text" id="description" name="description" style="width:20em" class="{validate:{required:true,minlength:2,maxlength:160}}"></td>
     </tr>
     <tr>
         <td colspan="2">&nbsp;</td>
@@ -69,24 +65,18 @@
 
 </form>
 
-<span id="message"></span>
-
 <script type="text/javascript">
 
     var groupMembers = new Object();
-#foreach( $validationRule in $groupMembers )
-    groupMembers['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
-#end
+	#foreach( $validationRule in $groupMembers )
+		groupMembers['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
+	#end
 
     var availableValidationRules = new Object();
-#foreach( $validationRule in $availableValidationRules )
-    availableValidationRules['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
-#end
+	#foreach( $validationRule in $availableValidationRules )
+		availableValidationRules['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
+	#end
 
     initLists();
 
-    var nameField = document.getElementById( 'name' );
-    nameField.select();
-    nameField.focus();
-
 </script>

=== modified file 'dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/javascript/validationRuleGroup.js'
--- dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/javascript/validationRuleGroup.js	2010-09-01 16:55:23 +0000
+++ dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/javascript/validationRuleGroup.js	2010-09-22 07:54:20 +0000
@@ -30,101 +30,6 @@
 }
 
 // -----------------------------------------------------------------------------
-// Add data element group
-// -----------------------------------------------------------------------------
-
-function validateAddValidationRuleGroup()
-{
-    var request = new Request();
-    request.setResponseTypeXML( 'message' );
-    request.setCallbackSuccess( addValidationCompleted );
-    request.send( 'validateValidationRuleGroup.action?name=' + 
-        getFieldValue( 'name' ) + "&description=" + getFieldValue( 'description' ) );
-
-    return false;
-}
-
-function addValidationCompleted( messageElement )
-{
-    var type = messageElement.getAttribute( 'type' );
-    var message = messageElement.firstChild.nodeValue;
-    
-    if ( type == 'success' )
-    {
-        var availableValidationRules = document.getElementById( 'availableValidationRules' );
-        availableValidationRules.selectedIndex = -1;
-        
-        var groupMembers = document.getElementById( 'groupMembers' );
-        for ( var i = 0; i < groupMembers.options.length; ++i )
-        {
-            groupMembers.options[i].selected = true;
-        }
-        
-        var form = document.getElementById( 'addValidationRuleGroupForm' );
-        form.submit();
-    }
-    else if ( type == 'error' )
-    {
-        window.alert( i18n_adding_validation_rule_group_failed + ':' + '\n' + message );
-    }
-    else if ( type == 'input' )
-    {
-        document.getElementById( 'message' ).innerHTML = message;
-        document.getElementById( 'message' ).style.display = 'block';
-    }
-}
-
-function getFieldValue( fieldId )
-{
-    return document.getElementById( fieldId ).value;
-}
-
-// -----------------------------------------------------------------------------
-// Update data element group
-// -----------------------------------------------------------------------------
-
-function validateUpdateValidationRuleGroup()
-{
-    var request = new Request();
-    request.setResponseTypeXML( 'message' );
-    request.setCallbackSuccess( updateValidationCompleted );
-    request.send( 'validateValidationRuleGroup.action?id=' + getFieldValue( 'id' ) +
-        '&name=' + getFieldValue( 'name' ) + '&description=' + getFieldValue( 'description' ) );
-
-    return false;
-}
-
-function updateValidationCompleted( messageElement )
-{
-    var type = messageElement.getAttribute( 'type' );
-    var message = messageElement.firstChild.nodeValue;
-    
-    if ( type == 'success' )
-    {
-        var availableValidationRules = document.getElementById( 'availableValidationRules' );
-        availableValidationRules.selectedIndex = -1;
-        
-        var groupMembers = document.getElementById( 'groupMembers' );
-        for ( var i = 0; i < groupMembers.options.length; ++i )
-        {
-            groupMembers.options[i].selected = true;
-        }
-
-        var form = document.getElementById( 'updateValidationRuleGroupForm' );
-        form.submit();
-    }
-    else if ( type == 'error' )
-    {
-        window.alert( i18n_saving_validation_rule_group_failed + ':' + '\n' + message );
-    }
-    else if ( type == 'input' )
-    {
-        document.getElementById( 'message' ).innerHTML = message;
-        document.getElementById( 'message' ).style.display = 'block';
-    }
-}
-
-// -----------------------------------------------------------------------------
 // Select lists
 // -----------------------------------------------------------------------------
 

=== modified file 'dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/updateValidationRuleGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/updateValidationRuleGroupForm.vm	2010-07-02 10:12:52 +0000
+++ dhis-2/dhis-web/dhis-web-validationrule/src/main/webapp/dhis-web-validationrule/updateValidationRuleGroupForm.vm	2010-09-22 07:54:20 +0000
@@ -5,21 +5,17 @@
 	jQuery(document).ready(
 			function()
 			{
-				jQuery("#updateValidationRuleGroupForm").validate({
-					 meta:"validate"
-					,errorElement:"td"
-					,submitHandler: function(form)
-									{
-										validateUpdateValidationRuleGroup();
-									}
-				});
-				jQuery.validator.setMessages( validationMessage );
 				jQuery("#name").focus();
+				
+				validation( 'updateValidationRuleGroupForm', 
+					function( form ){ form.submit() }, 
+					function(){ selectAllById('groupMembers') });
+				
+				checkValueIsExist( "name", "validateValidationRuleGroup.action", {id:getFieldValue('id')});		
 			}
 	);
 
 </script>
-<input type="hidden" id="curLocaleCode" value="$locale.getLanguage()_$locale.getCountry()"/>
 <h3>$i18n.getString( "edit_validation_rule_group" )</h3>
 
 <form id="updateValidationRuleGroupForm" action="updateValidationRuleGroup.action" method="post" >
@@ -37,8 +33,8 @@
         <td><input type="text" id="name" name="name" value="$encoder.htmlEncode( $validationRuleGroup.name )" style="width:20em" maxlength="160" class="{validate:{required:true,minlength:2,maxlength:160}}"></td>
     </tr>
     <tr>
-        <td><label for="description">$i18n.getString( "description" )</label></td>
-        <td><input type="text" id="description" name="description" value="$encoder.htmlEncode( $validationRuleGroup.name )" style="width:20em" ></td>
+        <td><label for="description">$i18n.getString( "description" )<em title="$i18n.getString( "required" )" class="required">*</em></label></td>
+        <td><input type="text" id="description" name="description" value="$encoder.htmlEncode( $validationRuleGroup.name )" style="width:20em" class="{validate:{required:true,minlength:2,maxlength:160}}"></td>
     </tr>
     <tr>
         <td colspan="2">&nbsp;</td>
@@ -79,19 +75,15 @@
 <script type="text/javascript">
 
     var groupMembers = new Object();
-#foreach( $validationRule in $groupMembers )
-    groupMembers['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
-#end
+	#foreach( $validationRule in $groupMembers )
+		groupMembers['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
+	#end
 
     var availableValidationRules = new Object();
-#foreach( $validationRule in $availableValidationRules )
-    availableValidationRules['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
-#end
+	#foreach( $validationRule in $availableValidationRules )
+		availableValidationRules['$validationRule.id'] = '$encoder.jsEscape( $validationRule.name, "'" )';
+	#end
 
     initLists();
 
-    var nameField = document.getElementById( 'name' );
-    nameField.select();
-    nameField.focus();
-
 </script>