[jboss-svn-commits] JBL Code SVN: r11273 - in labs/jbosslabs/branches/qa/portal-extensions: forge-portal-attr and 7 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Apr 23 18:41:43 EDT 2007
Author: szimano
Date: 2007-04-23 18:41:43 -0400 (Mon, 23 Apr 2007)
New Revision: 11273
Modified:
labs/jbosslabs/branches/qa/portal-extensions/forge-login/src/java/org/jboss/labs/login/LabsLoginModule.java
labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/project.xml
labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/src/java/org/jboss/forge/portal/InjectLoginLinks.java
labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/downloads/Downloads.java
labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/web/WEB-INF/portlet-instances.xml
labs/jbosslabs/branches/qa/portal-extensions/forge-theme/jbossForgeLayout.war/WEB-INF/portal-layouts.xml
labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/common.xml
labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/wiki-common/project.properties
labs/jbosslabs/branches/qa/portal-extensions/portal-default/src/web/WEB-INF/default-object.xml
Log:
DEV to QA merge svn merge -r 11231:11272 https://svn.labs.jboss.org/labs/jbosslabs/trunk/portal-extensions
Modified: labs/jbosslabs/branches/qa/portal-extensions/forge-login/src/java/org/jboss/labs/login/LabsLoginModule.java
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/forge-login/src/java/org/jboss/labs/login/LabsLoginModule.java 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/forge-login/src/java/org/jboss/labs/login/LabsLoginModule.java 2007-04-23 22:41:43 UTC (rev 11273)
@@ -118,7 +118,7 @@
try {
TransactionManager tm = (TransactionManager) new InitialContext()
- .lookup("java:/TransactionManager");
+ .lookup("java:/TransactionManager");
Boolean passwordValid;
Modified: labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/project.xml
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/project.xml 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/project.xml 2007-04-23 22:41:43 UTC (rev 11273)
@@ -43,6 +43,25 @@
<version>1.0</version>
<jar>jboss-common.jar</jar>
</dependency>
+
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>hibernate</artifactId>
+ <version>3.0</version>
+ <jar>hibernate3.jar</jar>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-j2ee</artifactId>
+ <version>3.2.3</version>
+ </dependency>
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jbosssx</artifactId>
+ <version>3.2.3</version>
+ <jar>jbosssx.jar</jar>
+ </dependency>
+
</dependencies>
<build>
Modified: labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/src/java/org/jboss/forge/portal/InjectLoginLinks.java
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/src/java/org/jboss/forge/portal/InjectLoginLinks.java 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/forge-portal-attr/src/java/org/jboss/forge/portal/InjectLoginLinks.java 2007-04-23 22:41:43 UTC (rev 11273)
@@ -26,6 +26,9 @@
import java.io.PrintWriter;
import java.security.Principal;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import javax.security.auth.login.LoginException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
@@ -34,8 +37,18 @@
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.transaction.*;
+import org.jboss.forge.common.PermissionTools;
import org.jboss.logging.Logger;
+import org.jboss.portal.common.transaction.TransactionManagerProvider;
+import org.jboss.portal.common.transaction.Transactions;
+import org.jboss.portal.identity.IdentityException;
+import org.jboss.portal.identity.MembershipModule;
+import org.jboss.portal.identity.NoSuchUserException;
+import org.jboss.portal.identity.RoleModule;
+import org.jboss.portal.identity.User;
+import org.jboss.portal.identity.UserModule;
/**
* InjectLoginLinks.java
@@ -53,6 +66,14 @@
private static final String AUTH_LINK2 = "auth";
+ private static RoleModule roleModule;
+
+ private static MembershipModule membershipModule;
+
+ private static final String ADMIN_ROLE_NAME = "Admin";
+
+ private static UserModule userModule;
+
public void destroy() {
}
@@ -60,6 +81,20 @@
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
+ try {
+
+ if (roleModule == null) {
+ roleModule = (RoleModule) new InitialContext()
+ .lookup("java:portal/RoleModule");
+ membershipModule = (MembershipModule) new InitialContext()
+ .lookup("java:portal/MembershipModule");
+ userModule = (UserModule) new InitialContext()
+ .lookup("java:portal/UserModule");
+ }
+ } catch (NamingException e) {
+ throw new ServletException(e);
+ }
+
HttpServletRequest hReq = (HttpServletRequest) request;
StringBuffer buffer = new StringBuffer(hReq.getRequestURI());
@@ -77,15 +112,19 @@
&& wrapper.getContentType().startsWith("text/html")) {
PrintWriter out = response.getWriter();
-
- String output = injectLoginLink(wrapper.toString(), uri, hReq
- .getUserPrincipal());
+ String output;
+ try {
+ output = injectLoginLink(wrapper.toString(), uri, hReq
+ .getUserPrincipal());
+ } catch (Exception e) {
+ throw new ServletException(e);
+ }
+
out.write(output);
out.close();
- }
- else {
+ } else {
PrintWriter out = response.getWriter();
out.write(wrapper.toString());
@@ -95,26 +134,32 @@
}
private String injectLoginLink(String content, String uri,
- Principal principal) {
+ Principal principal) throws IllegalArgumentException,
+ IdentityException, NamingException {
int loginIndx = content.indexOf(LOGIN_TAG);
int loginEnd = loginIndx + LOGIN_TAG.length();
-
+
if (loginIndx != -1) {
StringBuffer newUri = new StringBuffer();
newUri.append("<a href='");
if (principal != null) {
+
// user is logged in
newUri = new StringBuffer("<span class='wlcmBox'><b>").append(
principal.getName()).append(
- "</b> | <a href='/logout'>Logout</a> </span>");
- }
- else if (uri.equals("/")) {
+ "</b> | <a href='/logout'>Logout</a>");
+ if (isAdmin(principal)) {
+ newUri.append(" | <a href='/admin'>Admin Console</a>");
+ }
+
+ newUri.append("</span>");
+ } else if (uri.equals("/")) {
newUri.append(uri).append(AUTH_LINK).append("'>Login</a>");
} else if (newUri.indexOf(AUTH_LINK) == -1
&& newUri.indexOf(AUTH_LINK2) == -1 && principal == null) {
-
+
newUri.append("/").append(AUTH_LINK).append(uri).append(
"'>Login</a>");
} else {
@@ -135,6 +180,28 @@
}
+ private boolean isAdmin(final Principal userP)
+ throws IllegalArgumentException, IdentityException, NamingException {
+ TransactionManager tm = (TransactionManager) new InitialContext()
+ .lookup("java:/TransactionManager");
+
+ boolean isAdmin = (Boolean) Transactions.required(tm,
+ new Transactions.Runnable() {
+ public Object run() throws IllegalArgumentException,
+ NoSuchUserException, IdentityException {
+ User user = userModule.findUserByUserName(userP
+ .getName());
+
+ return membershipModule.getUsers(
+ roleModule.findRoleByName(ADMIN_ROLE_NAME))
+ .contains(user);
+ }
+
+ });
+
+ return isAdmin;
+ }
+
public void init(FilterConfig arg0) throws ServletException {
}
Modified: labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/downloads/Downloads.java
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/downloads/Downloads.java 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/downloads/Downloads.java 2007-04-23 22:41:43 UTC (rev 11273)
@@ -76,7 +76,7 @@
+ "Downloads");
request.setAttribute("projectName", projects.getProjectName(projectId));
-
+
// Getting the selected category (null if no selected category)
String categoryId = request.getParameter("category");
Modified: labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/web/WEB-INF/portlet-instances.xml
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/web/WEB-INF/portlet-instances.xml 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/forge-portlets/src/web/WEB-INF/portlet-instances.xml 2007-04-23 22:41:43 UTC (rev 11273)
@@ -102,6 +102,7 @@
</preferences>
</instance>
</deployment>
+
<deployment>
<if-exists>overwrite</if-exists>
<instance>
@@ -119,10 +120,44 @@
</preferences>
</instance>
</deployment>
-
<deployment>
<if-exists>overwrite</if-exists>
<instance>
+ <instance-id>FreezoneCommunityTitlePageInstance</instance-id>
+ <portlet-ref>FreezonePortlet</portlet-ref>
+ <preferences>
+ <preference>
+ <name>projectId</name>
+ <value>default</value>
+ </preference>
+ <preference>
+ <name>page</name>
+ <value>community_title.html</value>
+ </preference>
+ </preferences>
+ </instance>
+ </deployment>
+ <deployment>
+ <if-exists>overwrite</if-exists>
+ <instance>
+ <instance-id>FreezoneCommunityNavPageInstance</instance-id>
+ <portlet-ref>FreezonePortlet</portlet-ref>
+ <preferences>
+ <preference>
+ <name>projectId</name>
+ <value>default</value>
+ </preference>
+ <preference>
+ <name>page</name>
+ <value>community_nav.html</value>
+ </preference>
+ </preferences>
+ </instance>
+ </deployment>
+
+ <deployment>
+ <if-exists>overwrite</if-exists>
+ <instance>
<instance-id>PodcastPortletInstanceSmall</instance-id>
<portlet-ref>PodcastPortlet</portlet-ref>
<preferences>
Modified: labs/jbosslabs/branches/qa/portal-extensions/forge-theme/jbossForgeLayout.war/WEB-INF/portal-layouts.xml
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/forge-theme/jbossForgeLayout.war/WEB-INF/portal-layouts.xml 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/forge-theme/jbossForgeLayout.war/WEB-INF/portal-layouts.xml 2007-04-23 22:41:43 UTC (rev 11273)
@@ -19,6 +19,9 @@
<region name="leftB" />
<region name="centerB" />
<region name="rightB" />
+
+ <region name="left1_6" />
+ <region name="center5_6" />
</regions>
</layout>
<layout>
Modified: labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/common.xml
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/common.xml 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/common.xml 2007-04-23 22:41:43 UTC (rev 11273)
@@ -52,7 +52,6 @@
<dependency>
<groupId>shotoku</groupId>
<artifactId>shotoku-aop</artifactId>
- <version>1.0</version>
<jar>shotoku-aop.jar</jar>
</dependency>
Modified: labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/wiki-common/project.properties
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/wiki-common/project.properties 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/jbosswiki/wiki-common/project.properties 2007-04-23 22:41:43 UTC (rev 11273)
@@ -5,3 +5,4 @@
maven.jar.override=on
maven.jar.shotoku-base=${ext.root.dir}/shotoku/shotoku-base/target/shotoku-base.jar
+maven.jar.shotoku-aop=${ext.root.dir}/shotoku/shotoku-aop/target/shotoku-aop.jar
Modified: labs/jbosslabs/branches/qa/portal-extensions/portal-default/src/web/WEB-INF/default-object.xml
===================================================================
--- labs/jbosslabs/branches/qa/portal-extensions/portal-default/src/web/WEB-INF/default-object.xml 2007-04-23 22:18:13 UTC (rev 11272)
+++ labs/jbosslabs/branches/qa/portal-extensions/portal-default/src/web/WEB-INF/default-object.xml 2007-04-23 22:41:43 UTC (rev 11273)
@@ -257,10 +257,22 @@
</property>
</properties>
- <window>
+ <window>
+ <window-name>FreezoneCommunityTitleWindow</window-name>
+ <instance-ref>FreezoneCommunityTitlePageInstance</instance-ref>
+ <region>triple</region>
+ <height>0</height>
+ </window>
+ <window>
+ <window-name>FreezoneCommunityNavWindow</window-name>
+ <instance-ref>FreezoneCommunityNavPageInstance</instance-ref>
+ <region>left1_6</region>
+ <height>0</height>
+ </window>
+ <window>
<window-name>FreezoneCommunityWindow</window-name>
<instance-ref>FreezoneCommunityPageInstance</instance-ref>
- <region>triple</region>
+ <region>center5_6</region>
<height>0</height>
</window>
</page>
@@ -389,6 +401,14 @@
<instance-ref>ConPortletInstance</instance-ref>
<region>triple</region>
<height>0</height>
+
+ <properties>
+ <!-- use the decoration renderer from the emptyRenderer renderSet -->
+ <property>
+ <name>theme.decorationRendererId</name>
+ <value>emptyRenderer</value>
+ </property>
+ </properties>
</window>
</page>
</deployment>
More information about the jboss-svn-commits
mailing list