You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ca...@apache.org on 2006/09/14 01:24:56 UTC
svn commit: r443165 - in /maven/shared/trunk/maven-user:
maven-user-acegi/src/main/java/org/apache/maven/user/acegi/
maven-user-acegi/src/test/java/org/apache/maven/user/acegi/
maven-user-controller/src/main/java/org/apache/maven/user/controller/action...
Author: carlos
Date: Wed Sep 13 16:24:55 2006
New Revision: 443165
URL: http://svn.apache.org/viewvc?view=rev&rev=443165
Log:
[CONTINUUM-857] Allow several groups per user
Submitted by: Lester Ecarma
Added:
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/addRole.jsp
- copied, changed from r443163, maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/addRole.jsp
Removed:
maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/AddUserRoleAction.java
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/addRole.jsp
Modified:
maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/AcegiUserManager.java
maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/MavenUserDetailsService.java
maven/shared/trunk/maven-user/maven-user-acegi/src/test/java/org/apache/maven/user/acegi/MavenUserDetailsServiceTest.java
maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserAction.java
maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserGroupAction.java
maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/localization/MavenUser.properties
maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/org/apache/maven/user/webapp/xwork.xml
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/UserManager.java
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java
maven/shared/trunk/maven-user/maven-user-model/src/main/mdo/user.xml
maven/shared/trunk/maven-user/maven-user-model/src/test/java/org/apache/maven/user/model/impl/DefaultUserManagerTest.java
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/edit.jsp
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/delete.jsp
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/edit.jsp
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/list.jsp
maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/userForm.jsp
Modified: maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/AcegiUserManager.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/AcegiUserManager.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/AcegiUserManager.java (original)
+++ maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/AcegiUserManager.java Wed Sep 13 16:24:55 2006
@@ -204,4 +204,9 @@
{
return getUserManager().getSecurityPolicy();
}
+
+ public UserGroup getDefaultUserGroup()
+ {
+ return getUserManager().getDefaultUserGroup();
+ }
}
Modified: maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/MavenUserDetailsService.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/MavenUserDetailsService.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/MavenUserDetailsService.java (original)
+++ maven/shared/trunk/maven-user/maven-user-acegi/src/main/java/org/apache/maven/user/acegi/MavenUserDetailsService.java Wed Sep 13 16:24:55 2006
@@ -29,6 +29,7 @@
import org.acegisecurity.userdetails.UsernameNotFoundException;
import org.apache.maven.user.model.Permission;
import org.apache.maven.user.model.User;
+import org.apache.maven.user.model.UserGroup;
import org.apache.maven.user.model.UserManager;
import org.apache.maven.user.model.UserSecurityPolicy;
import org.springframework.dao.DataAccessException;
@@ -87,7 +88,14 @@
*/
public UserDetails getUserDetails( User user )
{
- List permissions = user.getGroup().getPermissions();
+ List groups = user.getGroups();
+ List permissions = new ArrayList();
+ Iterator groupsIt = groups.iterator();
+ while ( groupsIt.hasNext() )
+ {
+ UserGroup group = (UserGroup) groupsIt.next();
+ permissions.addAll( group.getPermissions() );
+ }
List grantedAuthorities = new ArrayList( permissions.size() + 1 );
Iterator it = permissions.iterator();
@@ -127,4 +135,4 @@
return userDetails;
}
-}
+ }
Modified: maven/shared/trunk/maven-user/maven-user-acegi/src/test/java/org/apache/maven/user/acegi/MavenUserDetailsServiceTest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-acegi/src/test/java/org/apache/maven/user/acegi/MavenUserDetailsServiceTest.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-acegi/src/test/java/org/apache/maven/user/acegi/MavenUserDetailsServiceTest.java (original)
+++ maven/shared/trunk/maven-user/maven-user-acegi/src/test/java/org/apache/maven/user/acegi/MavenUserDetailsServiceTest.java Wed Sep 13 16:24:55 2006
@@ -109,7 +109,7 @@
User mavenUser = new User();
mavenUser.setUsername( "username" );
mavenUser.setEncodedPassword( shaPassword );
- mavenUser.setGroup( group );
+ mavenUser.addGroup( group );
mavenUser.setLastPasswordChange( new Date() );
Modified: maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserAction.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserAction.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserAction.java (original)
+++ maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserAction.java Wed Sep 13 16:24:55 2006
@@ -23,7 +23,6 @@
import org.apache.maven.user.model.PasswordRuleViolationException;
import org.apache.maven.user.model.PasswordRuleViolations;
-import org.apache.maven.user.model.Permission;
import org.apache.maven.user.model.User;
import org.apache.maven.user.model.UserGroup;
import org.apache.maven.user.model.UserManager;
@@ -57,16 +56,6 @@
private UserGroup userGroup;
- private List staticPermissions;
-
- private List availablePermissions;
-
- private Permission staticPermission;
-
- private Permission permission;
-
- private String permissionName;
-
private boolean addMode = false;
private String username;
@@ -77,10 +66,12 @@
private String email;
- private List permissions;
-
private HttpServletRequest request;
+ private List groups;
+
+ private List allGroups;
+
public String execute()
throws Exception
{
@@ -103,14 +94,13 @@
}
if ( addMode )
{
- userGroup = new UserGroup();
- userGroup.setName( username );
+ userGroup = userManager.getDefaultUserGroup();
user = new User();
user.setUsername( username );
user.setPassword( password );
user.setEmail( email );
- user.setGroup( userGroup );
+ user.addGroup( userGroup );
try
{
userManager.addUser( user );
@@ -131,8 +121,8 @@
user.setUsername( username );
user.setPassword( password );
user.setEmail( email );
- permissions = (List) request.getSession().getAttribute( "permissions" );
- user.getGroup().setPermissions( permissions );
+ user.setGroups( groups );
+
try
{
userManager.updateUser( user );
@@ -152,7 +142,6 @@
request.getSession().removeAttribute( "username" );
request.getSession().removeAttribute( "password" );
request.getSession().removeAttribute( "email" );
- request.getSession().removeAttribute( "permissions" );
return SUCCESS;
}
@@ -169,13 +158,9 @@
{
addMode = false;
user = userManager.getUser( username );
- // password = user.getPassword(); don't access the password
email = user.getEmail();
- permissions = user.getGroup().getPermissions();
- if ( permissions.size() == 1 )
- {
- permissionName = ( (Permission) permissions.get( 0 ) ).getName();
- }
+ groups = user.getGroups();
+ allGroups = userManager.getUserGroups();
return INPUT;
}
@@ -187,134 +172,12 @@
user = userManager.getMyUser();
username = user.getUsername();
email = user.getEmail();
- permissions = user.getGroup().getPermissions();
+ groups = user.getGroups();
+ allGroups = userManager.getUserGroups();
return INPUT;
}
-
- public String doGetAvailablePermissions()
- throws Exception
- {
- int i, j;
- availablePermissions = new ArrayList();
- staticPermissions = userManager.getPermissions();
- permissions = (List) request.getSession().getAttribute( "permissions" );
- if ( permissions == null || permissions.size() == 0 )
- {
- availablePermissions.addAll( staticPermissions );
- }
- else
- {
- for ( i = 0; i < staticPermissions.size(); i++ )
- {
- staticPermission = (Permission) staticPermissions.get( i );
- for ( j = 0; j < permissions.size(); j++ )
- {
- permission = (Permission) permissions.get( j );
- if ( permission.getName().equalsIgnoreCase( staticPermission.getName() ) )
- {
- break;
- }
- }
- if ( j >= permissions.size() )
- {
- availablePermissions.add( staticPermission );
- }
- }
- }
-
- request.getSession().setAttribute( "addMode", Boolean.valueOf( addMode ) );
- request.getSession().setAttribute( "username", username );
- request.getSession().setAttribute( "password", password );
- request.getSession().setAttribute( "email", email );
-
- return "permissions";
- }
-
- public String doAddPermission()
- throws Exception
- {
- staticPermissions = userManager.getPermissions();
- int i, j;
- for ( i = 0; i < staticPermissions.size(); i++ )
- {
- permission = (Permission) staticPermissions.get( i );
- if ( permission.getName().equalsIgnoreCase( permissionName ) )
- {
- permissions = (List) request.getSession().getAttribute( "permissions" );
- if ( permissions == null )
- {
- permissions = new ArrayList();
- permissions.add( permission );
- }
- else
- {
- for ( j = 0; j < permissions.size(); j++ )
- {
- Permission permission = (Permission) permissions.get( j );
- if ( permission.getName().equalsIgnoreCase( permissionName ) )
- {
- break;
- }
- }
- if ( j >= permissions.size() )
- {
- permissions.add( permission );
- }
- }
- if ( permissions.size() == 1 )
- {
- permissionName = ( (Permission) permissions.get( 0 ) ).getName();
- }
- break;
- }
- }
-
- addMode = ( (Boolean) request.getSession().getAttribute( "addMode" ) ).booleanValue();
- username = (String) request.getSession().getAttribute( "username" );
- password = (String) request.getSession().getAttribute( "password" );
- email = (String) request.getSession().getAttribute( "email" );
-
- return INPUT;
- }
-
- public String doDeletePermission()
- throws Exception
- {
- int i = 0;
- permissions = (List) request.getSession().getAttribute( "permissions" );
- for ( ; i < permissions.size(); i++ )
- {
- permission = (Permission) permissions.get( i );
- if ( permission.getName().equalsIgnoreCase( permissionName ) )
- {
- permissions.remove( i );
- break;
- }
- if ( permissions.size() == 1 )
- {
- permissionName = ( (Permission) permissions.get( 0 ) ).getName();
- }
- }
-
- return INPUT;
- }
-
- public List getAvailablePermissions()
- {
- return availablePermissions;
- }
-
- public String getPermissionName()
- {
- return permissionName;
- }
-
- public void setPermissionName( String permissionName )
- {
- this.permissionName = permissionName;
- }
-
+
public boolean isAddMode()
{
return addMode;
@@ -363,13 +226,42 @@
this.email = email;
}
- public List getPermissions()
+ public void setServletRequest( HttpServletRequest request )
{
- return this.permissions;
+ this.request = request;
}
- public void setServletRequest( HttpServletRequest request )
+ public List getGroups()
{
- this.request = request;
+ return groups;
+ }
+
+ public void setGroups( List sgroups )
+ {
+ groups = new ArrayList();
+
+ for( int i = 0; i < sgroups.size(); i++)
+ {
+ UserGroup dgroup = userManager.getUserGroup( Integer.parseInt(sgroups.get(i).toString()) );
+
+ groups.add( dgroup );
+ }
+ }
+
+ public List getAllGroups()
+ {
+ return allGroups;
+ }
+
+ public int[] getSelectedGroups()
+ {
+ int[] selectedGroups = new int[groups.size()];
+
+ for( int i = 0; i < groups.size(); i++)
+ {
+ selectedGroups[i] = ( (UserGroup) groups.get( i ) ).getId();
+ }
+
+ return selectedGroups;
}
}
Modified: maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserGroupAction.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserGroupAction.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserGroupAction.java (original)
+++ maven/shared/trunk/maven-user/maven-user-controller/src/main/java/org/apache/maven/user/controller/action/EditUserGroupAction.java Wed Sep 13 16:24:55 2006
@@ -124,7 +124,6 @@
{
addMode = false;
userGroup = userManager.getUserGroup( id );
- // password = user.getPassword(); don't access the password
name = userGroup.getName();
description = userGroup.getDescription();
permissions = userGroup.getPermissions();
@@ -172,7 +171,6 @@
request.getSession().setAttribute( "name", name );
request.getSession().setAttribute( "description", description );
-
return "permissions";
}
@@ -241,6 +239,11 @@
permissionName = ( (Permission) permissions.get( 0 ) ).getName();
}
}
+
+ addMode = ( (Boolean) request.getSession().getAttribute( "addMode" ) ).booleanValue();
+ id = Integer.parseInt( (String) request.getSession().getAttribute( "id" ) );
+ name = (String) request.getSession().getAttribute( "name" );
+ description = (String) request.getSession().getAttribute( "description" );
return INPUT;
}
Modified: maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/localization/MavenUser.properties
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/localization/MavenUser.properties?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/localization/MavenUser.properties (original)
+++ maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/localization/MavenUser.properties Wed Sep 13 16:24:55 2006
@@ -50,6 +50,7 @@
role.page.title = Roles List
role.section.title = Roles List
role.rolename = Roles
+user.group.header = Groups
# ----------------------------------------------------------------------
# Page: Add/Edit/DeleteUsergroups
Modified: maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/org/apache/maven/user/webapp/xwork.xml
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/org/apache/maven/user/webapp/xwork.xml?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/org/apache/maven/user/webapp/xwork.xml (original)
+++ maven/shared/trunk/maven-user/maven-user-controller/src/main/resources/org/apache/maven/user/webapp/xwork.xml Wed Sep 13 16:24:55 2006
@@ -1,12 +1,9 @@
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">
<xwork>
-
<package name="maven-user" extends="webwork-default" namespace="/user">
-
<action name="edit" class="editUser">
<result name="input">/user/edit.jsp</result>
- <result name="permissions">/user/addRole.jsp</result>
<result name="success" type="chain">list</result>
</action>
@@ -28,14 +25,12 @@
<result name="input">/user/edit.jsp</result>
<result name="success" type="chain">list</result>
</action>
-
</package>
-
+
<package name="maven-user-group" extends="webwork-default" namespace="/user/group">
-
<action name="edit" class="editUserGroup">
<result name="input">/user/group/edit.jsp</result>
- <result name="permissions">/user/addRole.jsp</result>
+ <result name="permissions">/user/group/addRole.jsp</result>
<result name="success" type="chain">list</result>
</action>
@@ -47,7 +42,5 @@
<action name="list" class="listUserGroup">
<result name="success">/user/group/list.jsp</result>
</action>
-
</package>
-
</xwork>
Modified: maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/UserManager.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/UserManager.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/UserManager.java (original)
+++ maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/UserManager.java Wed Sep 13 16:24:55 2006
@@ -120,7 +120,7 @@
// ----------------------------------------------------------------------
/**
- * Perform login attempt to see if username and password are valid.
+ * Perform login attempt to see if username and password are valid.
*
* @deprecated use other services like maven-user-acegi to log in
*
@@ -264,4 +264,11 @@
* @return the security policy.
*/
UserSecurityPolicy getSecurityPolicy();
+
+ /**
+ * Gets the default user group.
+ *
+ * @return the default user group.
+ */
+ UserGroup getDefaultUserGroup();
}
Modified: maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java (original)
+++ maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java Wed Sep 13 16:24:55 2006
@@ -64,6 +64,12 @@
*/
private UserHolder userHolder;
+ /**
+ * @plexus.configuration default-value="user"
+ */
+ private String defaultGroupName = "user";
+ //TODO get this !#$#!@$#!@$ plexus injection to work!!!
+
// ----------------------------------------------------------------------
// Component Lifecycle
// ----------------------------------------------------------------------
@@ -325,7 +331,7 @@
return (Permission) userStore.addPermission( perm );
}
-
+
/**
* This implementation return empty permissions for each user.
*/
@@ -352,5 +358,27 @@
public User getMyUser()
{
return getUser( userHolder.getCurrentUserName() );
+ }
+
+ public UserGroup getDefaultUserGroup()
+ {
+ UserGroup defaultGroup = getUserGroup( defaultGroupName );
+
+ if( defaultGroup == null )
+ {
+ defaultGroup = new UserGroup();
+
+ defaultGroup.setName( defaultGroupName );
+
+ List defaultPermissions = new ArrayList();
+
+ defaultPermissions.add( getPermission( "buildProject" ) );
+
+ defaultPermissions.add( getPermission( "showProject" ) );
+
+ defaultGroup.setPermissions( defaultPermissions );
+ }
+
+ return defaultGroup;
}
}
Modified: maven/shared/trunk/maven-user/maven-user-model/src/main/mdo/user.xml
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-model/src/main/mdo/user.xml?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-model/src/main/mdo/user.xml (original)
+++ maven/shared/trunk/maven-user/maven-user-model/src/main/mdo/user.xml Wed Sep 13 16:24:55 2006
@@ -132,11 +132,12 @@
<multiplicity>*</multiplicity>
</association>
</field>
- <field jpox.column="userGroup" jpox.dependent="false">
- <name>group</name>
+ <field jpox.dependent="false">
+ <name>groups</name>
<version>1.0.0+</version>
- <association stash.part="true">
+ <association stash.part="true" jpox.dependent="false">
<type>UserGroup</type>
+ <multiplicity>*</multiplicity>
</association>
</field>
</fields>
Modified: maven/shared/trunk/maven-user/maven-user-model/src/test/java/org/apache/maven/user/model/impl/DefaultUserManagerTest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-model/src/test/java/org/apache/maven/user/model/impl/DefaultUserManagerTest.java?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-model/src/test/java/org/apache/maven/user/model/impl/DefaultUserManagerTest.java (original)
+++ maven/shared/trunk/maven-user/maven-user-model/src/test/java/org/apache/maven/user/model/impl/DefaultUserManagerTest.java Wed Sep 13 16:24:55 2006
@@ -27,7 +27,6 @@
import org.apache.maven.user.model.PasswordRule;
import org.apache.maven.user.model.PasswordRuleViolationException;
-import org.apache.maven.user.model.PasswordRuleViolations;
import org.apache.maven.user.model.Permission;
import org.apache.maven.user.model.User;
import org.apache.maven.user.model.UserGroup;
@@ -378,19 +377,19 @@
rattenborough.setUsername( "rattenborough" ); //$NON-NLS-1$
rattenborough.setFullName( "Richard Attenborough" ); //$NON-NLS-1$
rattenborough.setPassword( "the big x" ); //$NON-NLS-1$
- rattenborough.setGroup( british );
+ rattenborough.addGroup( british );
/* Add new user with new usergroup (Shouldn't work) */
User added = getUserManager().addUser( rattenborough );
- assertNotNull( "Added UserGroup should not by null.", added.getGroup() ); //$NON-NLS-1$
+ assertNotNull( "Added UserGroup should not by null.", added.getGroups() ); //$NON-NLS-1$
assertEquals( 1, getUserManager().getUsers().size() );
assertEquals( 1, getUserManager().getUserGroups().size() );
User actual = getUserManager().getUser( "rattenborough" ); //$NON-NLS-1$
assertEquals( added, actual );
- assertNotNull( "Actual UserGroup should not be null.", actual.getGroup() ); //$NON-NLS-1$
- assertEquals( added.getGroup(), actual.getGroup() );
+ assertNotNull( "Actual UserGroups should not be null.", actual.getGroups() ); //$NON-NLS-1$
+ assertEquals( added.getGroups(), actual.getGroups() );
}
public void testGetSetUserGroupInUserPreloaded() throws Exception
@@ -413,17 +412,17 @@
* If you use the (unresolved) british UserGroup here, you will
* inadvertently create 2 UserGroups with the same name, but different IDs.
*/
- rattenborough.setGroup( addedGroup );
+ rattenborough.addGroup( addedGroup );
User added = getUserManager().addUser( rattenborough );
- assertNotNull( "Added UserGroup should not by null.", added.getGroup() ); //$NON-NLS-1$
+ assertNotNull( "Added UserGroup should not by null.", added.getGroups() ); //$NON-NLS-1$
assertEquals( 1, getUserManager().getUsers().size() );
assertEquals( 1, getUserManager().getUserGroups().size() );
User actual = getUserManager().getUser( "rattenborough" ); //$NON-NLS-1$
assertEquals( added, actual );
- assertNotNull( "Actual UserGroup should not be null.", actual.getGroup() ); //$NON-NLS-1$
- assertEquals( added.getGroup(), actual.getGroup() );
+ assertNotNull( "Actual UserGroup should not be null.", actual.getGroups() ); //$NON-NLS-1$
+ assertEquals( added.getGroups(), actual.getGroups() );
}
public void testGetSetPermissions()
Modified: maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/edit.jsp
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/edit.jsp?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/edit.jsp (original)
+++ maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/edit.jsp Wed Sep 13 16:24:55 2006
@@ -48,46 +48,6 @@
<ww:include value="userForm.jsp">
<ww:param name="addMode" value="${addMode}"/>
</ww:include>
- <authz:authorize ifAnyGranted="ROLE_admin,ROLE_manageUsers">
- <ww:if test="addMode == false">
- <div id="h3">
- <h3><ww:text name="role.section.title"/></h3>
- <ww:set name="permissions" value="permissions" scope="session"/>
- <table>
- <tr>
- <td><ww:text name="role.rolename"/></td>
- <td> </td>
- </tr>
- <ww:iterator value="permissions">
- <tr>
- <td><ww:property value="name"/></td>
- <td>
- <ww:form action="edit!doDeletePermission.action" method="post">
- <ww:hidden id="addMode" name="addMode"/>
- <ww:hidden id="accountId" name="accountId"/>
- <ww:hidden id="username" name="username"/>
- <ww:hidden id="password" name="password"/>
- <ww:hidden id="email" name="email"/>
- <input type="hidden" name="permissionName" value="<ww:property value="name"/>">
- <ww:submit onclick="getData()" value="%{getText('delete')}"/>
- </ww:form>
- </td>
- </tr>
- </ww:iterator>
- </table>
- </div>
- <div id="h3">
- <ww:form action="edit!doGetAvailablePermissions.action" method="post">
- <ww:hidden id="addMode" name="addMode"/>
- <ww:hidden id="accountId" name="accountId"/>
- <ww:hidden id="username" name="username"/>
- <ww:hidden id="password" name="password"/>
- <ww:hidden id="email" name="email"/>
- <ww:submit onclick="getData()" value="%{getText('add')}"/>
- </ww:form>
- </div>
- </ww:if>
- </authz:authorize>
</div>
</div>
</body>
Copied: maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/addRole.jsp (from r443163, maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/addRole.jsp)
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/addRole.jsp?view=diff&rev=443165&p1=maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/addRole.jsp&r1=443163&p2=maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/addRole.jsp&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/addRole.jsp (original)
+++ maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/addRole.jsp Wed Sep 13 16:24:55 2006
@@ -21,7 +21,7 @@
<ec:row>
<ec:column property="name" title="role.rolename"/>
<ec:column property="actions" title=" ">
- <c:url var="editUrl" value="/user/edit!doAddPermission.action">
+ <c:url var="editUrl" value="/user/group/edit!doAddPermission.action">
<c:param name="permissionName" value="${availablePermission.name}"/>
</c:url>
<input type="button" onclick="window.location.href='<c:out value='${editUrl}'/>'" value=<ww:text name="add"/>>
Modified: maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/delete.jsp
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/delete.jsp?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/delete.jsp (original)
+++ maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/delete.jsp Wed Sep 13 16:24:55 2006
@@ -17,7 +17,7 @@
</p>
</div>
<div class="functnbar3">
- <ww:form action="deleteGroup.action" method="post">
+ <ww:form action="delete.action" method="post">
<ww:hidden name="id"/>
<ww:submit value="%{getText('delete')}"/> <!-- todo: change to submit/cancel button -->
</ww:form>
Modified: maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/edit.jsp
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/edit.jsp?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/edit.jsp (original)
+++ maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/edit.jsp Wed Sep 13 16:24:55 2006
@@ -39,47 +39,63 @@
<h3><ww:text name="usergroup.edit.section.title"/></h3>
</ww:else>
<div class="axial">
- <ww:include value="userForm.jsp">
- <ww:param name="addMode" value="${addMode}"/>
- </ww:include>
- <authz:authorize ifAnyGranted="ROLE_admin,ROLE_manageUsers">
- <ww:if test="addMode == false">
- <div id="h3">
- <h3><ww:text name="role.section.title"/></h3>
- <ww:set name="permissions" value="permissions" scope="session"/>
- <table>
- <tr>
- <td><ww:text name="role.rolename"/></td>
- <td> </td>
- </tr>
- <ww:iterator value="permissions">
- <tr>
- <td><ww:property value="name"/></td>
- <td>
- <ww:form action="editGroup!doDeletePermission.action" method="post">
- <ww:hidden id="addMode" name="addMode"/>
- <ww:hidden id="id" name="id"/>
- <ww:hidden id="name" name="name"/>
- <ww:hidden id="description" name="description"/>
- <input type="hidden" name="permissionName" value="<ww:property value="name"/>">
- <ww:submit onclick="getData()" value="%{getText('delete')}"/>
- </ww:form>
- </td>
- </tr>
- </ww:iterator>
- </table>
+ <ww:form action="edit.action" method="post">
+ <table>
+ <tbody>
+ <ww:hidden id="addMode_field" name="addMode"/>
+ <ww:hidden id="id_field" name="id"/>
+ <ww:textfield id="name_field" label="%{getText('usergroup.name')}" name="name" required="false"/>
+ <ww:textfield id="description_field" label="%{getText('usergroup.description')}" name="description" required="false"/>
+ </tbody>
+ </table>
+ <div class="functnbar3">
+ <ww:submit value="%{getText('save')}"/> <!-- todo: change to submit/cancel button -->
</div>
- <div id="h3">
- <ww:form action="editGroup!doGetAvailablePermissions.action" method="post">
- <ww:hidden id="addMode" name="addMode"/>
- <ww:hidden id="id" name="id"/>
- <ww:hidden id="name" name="name"/>
- <ww:hidden id="description" name="description"/>
- <ww:submit onclick="getData()" value="%{getText('add')}"/>
- </ww:form>
- </div>
- </ww:if>
- </authz:authorize>
+ </ww:form>
+ <authz:authorize ifAnyGranted="ROLE_admin,ROLE_manageUsers">
+ <ww:if test="addMode == false">
+ <div id="h3">
+ <h3><ww:text name="role.section.title"/></h3>
+ <div class="eXtremeTable">
+ <ww:set name="permissions" value="permissions" scope="session"/>
+ <table id="ec_table" border="1" cellspacing="2" cellpadding="3" class="tableRegion" width="100%">
+ <thead>
+ <tr>
+ <td class="tableHeader"><ww:text name="role.rolename"/></td>
+ <td class="tableHeader"> </td>
+ </tr>
+ </thead>
+ <tbody class="tableBody">
+ <ww:iterator value="permissions" status="rowCounter">
+ <tr class="<ww:if test="#rowCounter.odd == true">odd</ww:if><ww:else>even</ww:else>">
+ <td><ww:property value="name"/></td>
+ <td>
+ <ww:form action="edit!doDeletePermission.action" method="post">
+ <ww:hidden id="addMode" name="addMode"/>
+ <ww:hidden id="id" name="id"/>
+ <ww:hidden id="name" name="name"/>
+ <ww:hidden id="description" name="description"/>
+ <input type="hidden" name="permissionName" value="<ww:property value="name"/>">
+ <ww:submit onclick="getData()" value="%{getText('delete')}"/>
+ </ww:form>
+ </td>
+ </tr>
+ </ww:iterator>
+ </tbody>
+ </table>
+ </div>
+ </div>
+ <div id="h3">
+ <ww:form action="edit!doGetAvailablePermissions.action" method="post">
+ <ww:hidden id="addMode" name="addMode"/>
+ <ww:hidden id="id" name="id"/>
+ <ww:hidden id="name" name="name"/>
+ <ww:hidden id="description" name="description"/>
+ <ww:submit onclick="getData()" value="%{getText('add')}"/>
+ </ww:form>
+ </div>
+ </ww:if>
+ </authz:authorize>
</div>
</div>
</body>
Modified: maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/list.jsp
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/list.jsp?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/list.jsp (original)
+++ maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/group/list.jsp Wed Sep 13 16:24:55 2006
@@ -21,14 +21,14 @@
<ec:column property="description" title="usergroup.description"/>
<ec:column property="actions" title=" ">
- <c:url var="editUrl" value="/user/groups/editGroup!doEdit.action">
+ <c:url var="editUrl" value="/user/group/edit!doEdit.action">
<c:param name="id" value="${usergroup.id}"/>
<c:param name="name" value="${usergroup.name}"/>
</c:url>
<a href="<c:out value='${editUrl}'/>"><ww:text name="edit"/></a>
- <c:url var="deleteUrl" value="/user/groups/deleteGroup!doDelete.action">
+ <c:url var="deleteUrl" value="/user/group/delete!doDelete.action">
<c:param name="id" value="${usergroup.id}"/>
<c:param name="name" value="${usergroup.name}"/>
</c:url>
@@ -39,7 +39,7 @@
</ec:table>
</div>
<div class="functnbar3">
- <ww:form action="editGroup!doAdd.action" method="post">
+ <ww:form action="edit!doAdd.action" method="post">
<ww:submit value="%{getText('add')}"/>
</ww:form>
</div>
Modified: maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/userForm.jsp
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/userForm.jsp?view=diff&rev=443165&r1=443164&r2=443165
==============================================================================
--- maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/userForm.jsp (original)
+++ maven/shared/trunk/maven-user/maven-user-webapp/src/main/webapp/user/userForm.jsp Wed Sep 13 16:24:55 2006
@@ -1,6 +1,8 @@
<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>
<%@ taglib uri="/webwork" prefix="ww" %>
<%@ taglib uri="http://www.extremecomponents.org" prefix="ec" %>
+<%@ taglib uri="http://acegisecurity.org/authz" prefix="authz" %>
+
<ww:form action="saveAccount.action" method="post">
<c:if test="${!empty actionErrors}">
<div class="errormessage">
@@ -11,6 +13,7 @@
</c:if>
<table>
<tbody>
+ <ww:hidden id="addMode" name="addMode"/>
<ww:hidden id="addMode_field" name="addMode"/>
<ww:hidden id="accountId_field" name="accountId"/>
<ww:if test="addMode == true">
@@ -23,9 +26,23 @@
<ww:password id="password_field" label="%{getText('user.password')}" name="password" required="true"/>
<ww:password id="confirm_password_field" label="%{getText('user.confirm.password')}" name="confirmPassword" required="true"/>
<ww:textfield id="email_field" label="%{getText('user.email')}" name="email" required="true"/>
+ <ww:if test="addMode == false">
+ <authz:authorize ifAnyGranted="ROLE_admin,ROLE_manageUsers">
+ <ww:select label="%{getText('user.group.header')}"
+ list="allGroups"
+ name="groups"
+ value="selectedGroups"
+ listKey="id"
+ listValue="name"
+ multiple="true"
+ size="6"
+ required="true"/>
+ </authz:authorize>
+ </ww:if>
</tbody>
</table>
<div class="functnbar3">
<ww:submit value="%{getText('save')}"/> <!-- todo: change to submit/cancel button -->
</div>
</ww:form>
+