dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #34738
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 17814: Add a new available and selected widget in the add and edit user group screens.
------------------------------------------------------------
revno: 17814
committer: Tran Chau<tran.hispvietnam@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2014-12-29 00:51:04 +0700
message:
Add a new available and selected widget in the add and edit user group screens.
modified:
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/AddUserGroupAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/UpdateUserGroupAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/addUserGroupForm.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/updateUserGroupForm.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-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/AddUserGroupAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/AddUserGroupAction.java 2014-12-18 11:41:20 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/AddUserGroupAction.java 2014-12-28 17:51:04 +0000
@@ -29,7 +29,9 @@
*/
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import org.hisp.dhis.attribute.AttributeService;
import org.hisp.dhis.system.util.AttributeUtils;
@@ -93,6 +95,13 @@
this.jsonAttributeValues = jsonAttributeValues;
}
+ private Set<String> userGroupsSelected = new HashSet<>();
+
+ public void setUserGroupsSelected( Set<String> userGroupsSelected )
+ {
+ this.userGroupsSelected = userGroupsSelected;
+ }
+
// -------------------------------------------------------------------------
// Action Implementation
// -------------------------------------------------------------------------
@@ -112,18 +121,27 @@
{
User user = userService.getUser( userUid );
- if( user == null )
+ if ( user == null )
{
continue;
}
-
userGroup.addUser( user );
}
if ( jsonAttributeValues != null )
{
- AttributeUtils.updateAttributeValuesFromJson( userGroup.getAttributeValues(), jsonAttributeValues, attributeService );
- }
+ AttributeUtils.updateAttributeValuesFromJson( userGroup.getAttributeValues(), jsonAttributeValues,
+ attributeService );
+ }
+
+ Set<UserGroup> managedGroups = new HashSet<>();
+
+ for ( String groupUid : userGroupsSelected )
+ {
+ UserGroup group = userGroupService.getUserGroup( groupUid );
+ managedGroups.add( group );
+ }
+ userGroup.setManagedGroups( managedGroups );
userGroupService.addUserGroup( userGroup );
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/UpdateUserGroupAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/UpdateUserGroupAction.java 2014-12-18 11:41:20 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/java/org/hisp/dhis/user/action/usergroup/UpdateUserGroupAction.java 2014-12-28 17:51:04 +0000
@@ -105,7 +105,14 @@
{
this.jsonAttributeValues = jsonAttributeValues;
}
+
+ private Set<String> userGroupsSelected = new HashSet<>();
+ public void setUserGroupsSelected( Set<String> userGroupsSelected )
+ {
+ this.userGroupsSelected = userGroupsSelected;
+ }
+
// -------------------------------------------------------------------------
// Action Implementation
// -------------------------------------------------------------------------
@@ -151,6 +158,16 @@
AttributeUtils.updateAttributeValuesFromJson( userGroup.getAttributeValues(), jsonAttributeValues, attributeService );
}
+
+ Set<UserGroup> managedGroups = new HashSet<>();
+
+ for ( String groupUid : userGroupsSelected )
+ {
+ UserGroup group = userGroupService.getUserGroup( groupUid );
+ managedGroups.add( group );
+ }
+ userGroup.setManagedGroups(managedGroups);
+
userGroupService.updateUserGroup( userGroup );
return SUCCESS;
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties 2014-12-18 11:41:20 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/resources/org/hisp/dhis/user/i18n_module.properties 2014-12-28 17:51:04 +0000
@@ -366,4 +366,6 @@
no_of_Users=Number of users
user_group=User Group
available_users=Available users
-group_members=Group members
\ No newline at end of file
+group_members=Group members
+available_managed_user_groups = Available user groups
+managed_user_groups = Managed user groups
\ No newline at end of file
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/addUserGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/addUserGroupForm.vm 2014-12-18 11:41:20 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/addUserGroupForm.vm 2014-12-28 17:51:04 +0000
@@ -6,12 +6,20 @@
search: $( '#usersAvailableSearch' ),
iterator: 'users'
});
+
+ $( '#userGroupsAvailable' ).selected( {
+ url: '../api/userGroups.json',
+ target: $( '#userGroupsSelected' ),
+ search: $( '#managedGroupsAvailableSearch' ),
+ iterator: 'userGroups'
+ });
validation2( 'addUserGroupForm', function( form ) {
form.submit();
}, {
'beforeValidateHandler': function() {
$( '#usersSelected' ).find( 'option' ).attr( 'selected', 'selected' );
+ $( '#userGroupsSelected' ).find( 'option' ).attr( 'selected', 'selected' );
#tblDynamicAttributesJavascript()
},
'rules': getValidationRules( 'userGroup' )
@@ -27,7 +35,7 @@
#sharingCreateNotification( "userGroup" )
-<form id="addUserGroupForm" name="addUserGroupForm" action="addUserGroup.action" method="post" class="inputForm">
+<form id="addUserGroupForm" name="addUserGroupForm" action="addUserGroup.action" method="get" class="inputForm">
<table id="detailsList">
<col style="width: 120px"/>
@@ -50,6 +58,14 @@
"i18n_selected": "group_members"
})
+
+#jqSelected({
+ "prefix": "userGroups",
+ "i18n_available": "available_managed_user_groups",
+ "i18n_selected": "managed_user_groups"
+})
+
+
<p>
<input type="submit" value="$i18n.getString( 'add' )" style="width:10em"/>
<input type="button" value="$i18n.getString( 'cancel' )" onclick="dhis2.commons.redirectCurrentPage( 'getAllUserGroups.action' )" style="width:10em"/>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/updateUserGroupForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/updateUserGroupForm.vm 2014-12-18 11:41:20 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-user/src/main/webapp/dhis-web-maintenance-user/updateUserGroupForm.vm 2014-12-28 17:51:04 +0000
@@ -7,11 +7,25 @@
iterator: 'users'
});
+ $( '#userGroupsAvailable' ).selected( {
+ url: '../api/userGroups.json',
+ target: $( '#userGroupsSelected' ),
+ search: $( '#managedGroupsAvailableSearch' ),
+ iterator: 'userGroups'
+ });
+
+ $(document).ajaxStop(function()
+ {
+ var selectedGroup = '$group.uid';
+ $( "#userGroupsAvailable option[value='" + selectedGroup + "']" ).remove();
+ });
+
validation2( 'editUserGroupForm', function( form ) {
form.submit();
}, {
'beforeValidateHandler': function() {
$( '#usersSelected' ).find( 'option' ).attr( 'selected', 'selected' );
+ $( '#userGroupsSelected' ).find( 'option' ).attr( 'selected', 'selected' );
#tblDynamicAttributesJavascript()
},
'rules': getValidationRules( 'userGroup' )
@@ -40,7 +54,7 @@
</tr>
</table>
-
+
#tblDynamicAttributes( { "attributes": $attributes, "attributeValues": $attributeValues } )
#jqSelected({
@@ -50,6 +64,14 @@
"objects": $groupMembers
})
+#jqSelected({
+ "prefix": "userGroups",
+ "i18n_available": "available_managed_user_groups",
+ "i18n_selected": "managed_user_groups",
+ "objects": $group.managedGroups
+})
+
+
<p>
<input type="submit" value="$i18n.getString( 'save' )" style="width:10em" />
<input type="button" value="$i18n.getString( 'cancel' )" onclick="dhis2.commons.redirectCurrentPage( 'getAllUserGroups.action' )" style="width:10em" />