[jboss-svn-commits] JBL Code SVN: r10966 - in labs/jbosslabs/trunk/portal-extensions: forge-portlets/src/java/org/jboss/forge/projects/info and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Apr 13 08:25:17 EDT 2007
Author: wrzep
Date: 2007-04-13 08:25:16 -0400 (Fri, 13 Apr 2007)
New Revision: 10966
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/FacesTools.java
labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/PermissionTools.java
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoAccessBean.java
Log:
JBLAB-849
cos sie chrzani w permission tools
Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/FacesTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/FacesTools.java 2007-04-13 12:03:22 UTC (rev 10965)
+++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/FacesTools.java 2007-04-13 12:25:16 UTC (rev 10966)
@@ -32,6 +32,7 @@
import javax.portlet.PortletRequest;
import org.jboss.forge.common.projects.ProjectsHelper;
+import org.jboss.forge.common.projects.permissions.ActionRequestPermissionsChecker;
import org.jboss.forge.common.projects.permissions.RenderRequestPermissionsChecker;
import org.jboss.portal.api.node.PortalNodeURL;
import org.jboss.portlet.JBossActionRequest;
@@ -193,9 +194,12 @@
projectAdminString = projectId.concat("-admin");
}
+ org.jboss.portal.identity.User user = getUser();
+
+
return ((projectAdminString != null) &&
- (FacesTools.hasPermission(projectAdminString))
- || FacesTools.hasPermission("Administrators"));
+ (PermissionTools.isUserInRole(user, projectAdminString))
+ || PermissionTools.isUserInRole(user, "Administrators"));
}
public static org.jboss.portal.identity.User getUser(String username) {
@@ -226,4 +230,35 @@
FacesContext fc = FacesContext.getCurrentInstance();
fc.getApplication().createValueBinding( "#{" + beanName + "}").setValue(fc, null );
}
+
+ public static boolean isAllowedToEdit() {
+
+ System.out.println("#1");
+
+ String projectId = getSelectedProjectId();
+
+ Object request = getExternalContext().getRequest();
+
+ if (request instanceof JBossActionRequest) {
+
+ System.out.println("#2");
+
+ return ProjectsHelper.getProjects().editPermissionAllowed(
+ new ActionRequestPermissionsChecker((JBossActionRequest) request),
+ projectId);
+ }
+
+ if (request instanceof JBossRenderRequest) {
+
+ System.out.println("#3");
+
+ return ProjectsHelper.getProjects().editPermissionAllowed(
+ new RenderRequestPermissionsChecker((JBossRenderRequest) request),
+ projectId);
+ }
+
+ System.out.println("#4");
+
+ return false;
+ }
}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/PermissionTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/PermissionTools.java 2007-04-13 12:03:22 UTC (rev 10965)
+++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/PermissionTools.java 2007-04-13 12:25:16 UTC (rev 10966)
@@ -44,6 +44,9 @@
}
public static boolean isUserInRole(User user, String roleName) {
+
+ System.out.println("isUserInRole " + user + " " + user.getUserName() + " " + user.getId());
+
try {
for (Object roleObj : getMembershipModule().getRoles(getUserModule().findUserById(user.getId()))) {
Role role = (Role) roleObj;
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoAccessBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoAccessBean.java 2007-04-13 12:03:22 UTC (rev 10965)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/info/ProjectInfoAccessBean.java 2007-04-13 12:25:16 UTC (rev 10966)
@@ -33,8 +33,9 @@
public boolean isProjectAdminLogged() {
- return isUserLogged();
+ //return isUserLogged();
//return FacesTools.isProjectAdminLogged();
+ return FacesTools.isAllowedToEdit();
}
public boolean isUserLogged() {
More information about the jboss-svn-commits
mailing list