Author: chathura
Date: Mon Jan  7 03:08:57 2008
New Revision: 11948

Log:


Added authorizations for tagging, commenting, rating and versioning actions.
Users should have GET permission to tag, rate, comment or browse versions of 
resources.
Users should have OUT permission to restore resources to old versions.



Modified:
   
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryAccessControlAdmin.java
   
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryUserStoreAdmin.java
   
trunk/registry/modules/core/src/main/java/org/wso2/registry/secure/SecureRegistry.java
   
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveRoleAction.java
   
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveUserAction.java
   trunk/registry/modules/webapps/src/main/webapp/admin/user.jsp

Modified: 
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryAccessControlAdmin.java
==============================================================================
--- 
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryAccessControlAdmin.java
      (original)
+++ 
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryAccessControlAdmin.java
      Mon Jan  7 03:08:57 2008
@@ -35,7 +35,7 @@
                 userName.equals(RegistryConstants.ADMIN_USER)) {
 
             String msg = "Could not change authorizations of the system 
defined user: " + userName;
-            throw new UserManagerException(msg);
+            throw new UserManagerException(msg, false);
         }
 
         super.clearUserAuthorization(userName, resourceId, action);
@@ -48,7 +48,7 @@
                 userName.equals(RegistryConstants.ADMIN_USER)) {
 
             String msg = "Could not change authorizations of the system 
defined user: " + userName;
-            throw new UserManagerException(msg);
+            throw new UserManagerException(msg, false);
         }
 
         super.denyUser(userName, resourceId, action);
@@ -61,7 +61,7 @@
         if (roleName.equals(RegistryConstants.ADMIN_ROLE)) {
 
             String msg = "Could not change authorizations of the system 
defined role: " + roleName;
-            throw new UserManagerException(msg);
+            throw new UserManagerException(msg, false);
         }
 
         super.clearRoleAuthorization(roleName, resourceId, action);
@@ -74,7 +74,7 @@
         if (roleName.equals(RegistryConstants.ADMIN_ROLE)) {
 
             String msg = "Could not change authorizations of the system 
defined role: " + roleName;
-            throw new UserManagerException(msg);
+            throw new UserManagerException(msg, false);
         }
 
         super.denyRole(roleName, resourceId, action);

Modified: 
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryUserStoreAdmin.java
==============================================================================
--- 
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryUserStoreAdmin.java
  (original)
+++ 
trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/realm/RegistryUserStoreAdmin.java
  Mon Jan  7 03:08:57 2008
@@ -41,7 +41,7 @@
             userName.equals(RegistryConstants.ANONYMOUS_USER)) {
 
             String msg = "Could not remove the system defined user: " + 
userName;
-            throw new UserManagerException(msg);
+            throw new UserManagerException(msg, false);
         }
 
         super.deleteUser(userName);
@@ -54,9 +54,22 @@
             roleName.equals(RegistryConstants.EVERYONE_ROLE)) {
 
             String msg = "Could not remove the system defined role: " + 
roleName;
-            throw new UserManagerException(msg);
+            throw new UserManagerException(msg, false);
         }
 
         super.deleteRole(roleName);
     }
+
+
+    public void removeUserFromRole(String userName, String roleName) throws 
UserManagerException {
+
+        if (roleName.equals(RegistryConstants.EVERYONE_ROLE)) {
+
+            String msg = "Could not remove the everyone role from the user: " +
+                    userName + ". All users belong to the everyone role.";
+            throw new UserManagerException(msg, false);
+        }
+
+        super.removeUserFromRole(userName, roleName);
+    }
 }

Modified: 
trunk/registry/modules/core/src/main/java/org/wso2/registry/secure/SecureRegistry.java
==============================================================================
--- 
trunk/registry/modules/core/src/main/java/org/wso2/registry/secure/SecureRegistry.java
      (original)
+++ 
trunk/registry/modules/core/src/main/java/org/wso2/registry/secure/SecureRegistry.java
      Mon Jan  7 03:08:57 2008
@@ -165,9 +165,32 @@
         return registry.get(path);
     }
 
-    public boolean resourceExists(String path) throws RegistryException {
+    public boolean resourceExists(String resourcePath) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to check 
the existence of the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
-        return registry.resourceExists(path);
+        return registry.resourceExists(resourcePath);
     }
 
     /**
@@ -264,23 +287,86 @@
     }
 
 
-    public String[] getVersions(String path) throws RegistryException {
+    public String[] getVersions(String resourcePath) throws RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
 
-        // TODO: check authorizations
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to get 
versions of the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
 
         User.setCurrentUser(userID);
-        return registry.getVersions(path);
+        return registry.getVersions(resourcePath);
     }
 
     public void restoreVersion(String versionPath) throws RegistryException {
 
-        // TODO: check authorizations
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = versionPath;
+        if (versionPath.indexOf("?") > 0) {
+            authorizationPath = versionPath.split("\\?")[0];
+        } else if (versionPath.indexOf(";")>0) {
+            authorizationPath = versionPath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.PUT)) {
+                String msg = "User: " + userID + " is not authorized to 
restore the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
 
         User.setCurrentUser(userID);
         registry.restoreVersion(versionPath);
     }
 
     public void applyTag(String resourcePath, String tag) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to tag on 
the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
         registry.applyTag(resourcePath, tag);
     }
@@ -291,16 +377,85 @@
     }
 
     public Tag[] getTags(String resourcePath) throws RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to get 
tags of the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
         return registry.getTags(resourcePath);
     }
 
-    public void removeTag(String path, String tag) throws RegistryException {
+    public void removeTag(String resourcePath, String tag) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to remove 
tags of the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
-        registry.removeTag(path, tag);
+        registry.removeTag(resourcePath, tag);
     }
 
     public void addComment(String resourcePath, Comment comment) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to 
comment on the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
         registry.addComment(resourcePath, comment);
     }
@@ -311,18 +466,87 @@
     }
 
     public void rateResource(String resourcePath, int rating) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to rate 
the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
         registry.rateResource(resourcePath, rating);
     }
 
     public float getAverageRating(String resourcePath) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to get 
average rating of the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
         return registry.getAverageRating(resourcePath);
     }
 
-    public int getRating(String path, String userName) throws 
RegistryException {
+    public int getRating(String resourcePath, String userName) throws 
RegistryException {
+
+        // if the user has permission to the current version, he will get 
permission to all
+        // previous versions of the same resource
+        String authorizationPath = resourcePath;
+        if (resourcePath.indexOf("?") > 0) {
+            authorizationPath = resourcePath.split("\\?")[0];
+        } else if (resourcePath.indexOf(";")>0) {
+            authorizationPath = resourcePath.split("\\;")[0];
+        }
+
+        try {
+            if (!authorizer.isUserAuthorized(userID, authorizationPath, 
ActionConstants.GET)) {
+                String msg = "User: " + userID + " is not authorized to get 
ratings of the resource: " +
+                            authorizationPath;
+                log.info(msg);
+                throw new AuthorizationFailedException(msg);
+            }
+        } catch (UserManagerException e) {
+            String msg = "Could not check authorization. \nCaused by " + 
e.getMessage();
+            log.error(msg, e);
+            throw new RegistryException(msg);
+        }
+
         User.setCurrentUser(userID);
-        return registry.getRating(path, userName);
+        return registry.getRating(resourcePath, userName);
     }
 
     public Resource executeQuery(String path, Object[] parameters) throws 
RegistryException {

Modified: 
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveRoleAction.java
==============================================================================
--- 
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveRoleAction.java
    (original)
+++ 
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveRoleAction.java
    Mon Jan  7 03:08:57 2008
@@ -40,6 +40,7 @@
             
secureRegistry.getUserRealm().getUserStoreAdmin().deleteRole(roleName);
         } catch (UserManagerException e) {
             String msg = "Could not remove the role: " + roleName + ". Caused 
by: " + e.getMessage();
+            throw new RegistryException(msg);
         }
 
         return SUCCESS;

Modified: 
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveUserAction.java
==============================================================================
--- 
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveUserAction.java
    (original)
+++ 
trunk/registry/modules/webapps/src/main/java/org/wso2/registry/web/actions/RemoveUserAction.java
    Mon Jan  7 03:08:57 2008
@@ -42,6 +42,7 @@
             userRealm.getUserStoreAdmin().deleteUser(userName);
         } catch (UserManagerException e) {
             String msg = "Could not remove the user: " + userName + ". Caused 
by: " + e.getMessage();
+            throw new RegistryException(msg);
         }
 
         return SUCCESS;

Modified: trunk/registry/modules/webapps/src/main/webapp/admin/user.jsp
==============================================================================
--- trunk/registry/modules/webapps/src/main/webapp/admin/user.jsp       
(original)
+++ trunk/registry/modules/webapps/src/main/webapp/admin/user.jsp       Mon Jan 
 7 03:08:57 2008
@@ -14,100 +14,107 @@
 
 <!-- START header content -->
 <jsp:include page="header.jsp" />
-    <%
-        UserDetailsAction userDetailsAction = (UserDetailsAction) 
request.getSession().getAttribute(UIConstants.USER_BEAN);        
-    %>
+<%
+    UserDetailsAction userDetailsAction = (UserDetailsAction) 
request.getSession().getAttribute(UIConstants.USER_BEAN);
+
+    String errorMessage = (String) 
request.getSession().getAttribute(UIConstants.ERROR_MESSAGE);
+    if (errorMessage != null) {
+        request.getSession().setAttribute(UIConstants.ERROR_MESSAGE, null);
+    }
+%>
 
 
 <div class="content">
-<h1 class="headding-user-manage">People</h1>
-<div class="breadcrumb" style="margin-bottom:10px;"><a 
href="/wso2registry/system/people">People</a> | 
<%=userDetailsAction.getUserName()%> (Settings)</div>
+    <h1 class="headding-user-manage">People</h1>
+    <div class="breadcrumb" style="margin-bottom:10px;"><a 
href="/wso2registry/system/people">People</a> | 
<%=userDetailsAction.getUserName()%> (Settings)</div>
+
+    <% if (errorMessage != null) { %>
+    <div class="error-message"><%=errorMessage%></div>
+    <% } %>
+
+    <!-- Hear comes the box1 table -->
+    <div class="box1-head">
+        <table cellspacing="0" cellpadding="0" border="0" style="width:100%">
+            <tr>
+                <td valign="top" style="padding-top:0px;width:14px;"><img 
src="/wso2registry/admin/images/box1-lefttop.jpg" /></td>
+                <td valign="top">
+                    <h2><%=userDetailsAction.getUserName()%></h2>
+                </td>
+                <td align="right" valign="top">
+                    <a href="#" 
onclick="showHideCommon('userIconExpanded');showHideCommon('userIconMinimized');showHideCommon('userExpanded');showHideCommon('userMinimized');">
+                        <img 
src="/wso2registry/admin/images/icon-expanded.gif" border="0" align="top" 
id="userIconExpanded" />
+                        <img 
src="/wso2registry/admin/images/icon-minimized.gif" border="0" align="top" 
id="userIconMinimized" style="display:none;" />
+                    </a>
+                </td>
+                <td valign="top" align="right" style="width:14px; 
padding-top:0px;" ><img src="/wso2registry/admin/images/box1-righttop.jpg" 
/></td>
+            </tr>
+        </table>
+    </div>
+    <div class="box1-mid" id="userMinimized" style="display:none;">
+        Expand to view details
+    </div>
+    <div class="box1-mid" id="userExpanded">
+        <!-- all the content goes here -->
+
+
+
+        <h3>Add roles to <%=userDetailsAction.getUserName()%></h3>
+
+        <form action="/wso2registry/system/addUserToRole" method="post">
+            <input type="hidden" name="userName" 
value="<%=userDetailsAction.getUserName()%>"/>
+            <select name="roleToAdd">
+                <%
+                    Iterator iRoles = 
userDetailsAction.getAllRoles().iterator();
+                    while (iRoles.hasNext()) {
+                        String roleName = (String) iRoles.next();
+                %>
+                <option value="<%=roleName%>"><%=roleName%></option>
+                <% } %>
+            </select>
+            <input type="submit" class="button" value="Add"/>
+        </form>
+        <h3>Available roles to <%=userDetailsAction.getUserName()%></h3>
+        <table cellpadding="0" cellspacing="0" border="0" style="width:100%" 
class="data-table">
+            <tr>
+                <th>Role Name</th>
+                <th style="width:100px;" align="left">Action</th>
+
+            </tr>
+            <%
+                Iterator iUserRoles = 
userDetailsAction.getUserRoles().iterator();
+                while (iUserRoles.hasNext()) {
+                    String userRole = (String) iUserRoles.next();
+            %>
+            <tr><td><%=userRole%></td><td><a 
href="/wso2registry/system/removeUserFromRole?user=<%=userDetailsAction.getUserName()%>&role=<%=userRole%>"><img
 src="/wso2registry/admin/images/icon-trash.gif" border="0" /></a></td></tr>
+            <% } %>
+
+        </table>
+        <h3 style="margin-top:10px;">Recent activity of 
<%=userDetailsAction.getUserName()%></h3>
+
+        <table cellspacing="0" cellpadding="0" border="0" style="width:100%">
+            <%
+                Iterator iActivity = 
userDetailsAction.getUserActivity().iterator();
+                while (iActivity.hasNext()) {
+                    String activity = (String) iActivity.next();
+            %>
+            <tr><td><%=activity%></td></tr>
+            <% } %>
+        </table>
+        <!-- End box1-mid div -->
+    </div>
+    <div class="box1-bot">
+        <table cellspacing="0" cellpadding="0" border="0" style="width:100%" >
+            <tr>
+                <td><img src="/wso2registry/admin/images/box1-leftbot.jpg" 
/></td>
+                <td align="right"><img 
src="/wso2registry/admin/images/box1-rightbot.jpg" /></td>
+            </tr>
+        </table>
+    </div>
+
+
+
 
 
-                       
-                       <!-- Hear comes the box1 table -->
-                       <div class="box1-head">
-                               <table cellspacing="0" cellpadding="0" 
border="0" style="width:100%">
-                               <tr>
-                                       <td valign="top" 
style="padding-top:0px;width:14px;"><img 
src="/wso2registry/admin/images/box1-lefttop.jpg" /></td>
-                                       <td valign="top">
-                                       
<h2><%=userDetailsAction.getUserName()%></h2>
-                                       </td>
-                                       <td align="right" valign="top">
-                                               <a href="#" 
onclick="showHideCommon('userIconExpanded');showHideCommon('userIconMinimized');showHideCommon('userExpanded');showHideCommon('userMinimized');">
-                                               <img 
src="/wso2registry/admin/images/icon-expanded.gif" border="0" align="top" 
id="userIconExpanded" />
-                                               <img 
src="/wso2registry/admin/images/icon-minimized.gif" border="0" align="top" 
id="userIconMinimized" style="display:none;" />
-                                               </a>
-                                       </td>
-                                       <td valign="top" align="right" 
style="width:14px; padding-top:0px;" ><img 
src="/wso2registry/admin/images/box1-righttop.jpg" /></td>
-                               </tr>
-                               </table>
-                       </div>
-                       <div class="box1-mid" id="userMinimized" 
style="display:none;">
-                               Expand to view details
-                       </div>
-                       <div class="box1-mid" id="userExpanded">
-                       <!-- all the content goes here -->
-                               
-                       
-
-                           <h3>Add roles to 
<%=userDetailsAction.getUserName()%></h3>
-                       
-                           <form action="/wso2registry/system/addUserToRole" 
method="post">
-                               <input type="hidden" name="userName" 
value="<%=userDetailsAction.getUserName()%>"/>
-                               <select name="roleToAdd">
-                                   <%
-                                       Iterator iRoles = 
userDetailsAction.getAllRoles().iterator();
-                                       while (iRoles.hasNext()) {
-                                           String roleName = (String) 
iRoles.next();
-                                   %>
-                                   <option 
value="<%=roleName%>"><%=roleName%></option>
-                                   <% } %>
-                               </select>
-                               <input type="submit" class="button" 
value="Add"/>
-                           </form>
-                           <h3>Available roles to 
<%=userDetailsAction.getUserName()%></h3>
-                               <table cellpadding="0" cellspacing="0" 
border="0" style="width:100%" class="data-table">
-                               <tr>
-                               <th>Role Name</th>
-                               <th style="width:100px;" 
align="left">Action</th>
-                               
-                               </tr>
-                               <%
-                                   Iterator iUserRoles = 
userDetailsAction.getUserRoles().iterator();
-                                   while (iUserRoles.hasNext()) {
-                                       String userRole = (String) 
iUserRoles.next();
-                               %>
-                               <tr><td><%=userRole%></td><td><a 
href="/wso2registry/system/removeUserFromRole?user=<%=userDetailsAction.getUserName()%>&role=<%=userRole%>"><img
 src="/wso2registry/admin/images/icon-trash.gif" border="0" /></a></td></tr>
-                               <% } %>
-                               
-                               </table>
-                           <h3 style="margin-top:10px;">Recent activity of 
<%=userDetailsAction.getUserName()%></h3>
-                          
-                           <table cellspacing="0" cellpadding="0" border="0" 
style="width:100%">
-                               <%
-                                   Iterator iActivity = 
userDetailsAction.getUserActivity().iterator();
-                                   while (iActivity.hasNext()) {
-                                       String activity = (String) 
iActivity.next();
-                               %>
-                               <tr><td><%=activity%></td></tr>
-                               <% } %>        
-                           </table>
-                       <!-- End box1-mid div -->
-                       </div>
-                       <div class="box1-bot">
-                               <table cellspacing="0" cellpadding="0" 
border="0" style="width:100%" >
-                               <tr>
-                                       <td><img 
src="/wso2registry/admin/images/box1-leftbot.jpg" /></td>
-                                       <td align="right"><img 
src="/wso2registry/admin/images/box1-rightbot.jpg" /></td>
-                               </tr>
-                               </table>
-                       </div>
-                       
-                       
-                       
-                       
-               
 </div>
 
 <!-- START footer content -->

_______________________________________________
Registry-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/registry-dev

Reply via email to