Author: phuong_vu
Date: 2010-12-03 06:30:24 -0500 (Fri, 03 Dec 2010)
New Revision: 5470
Modified:
exo/portal/branches/standalone/web/portal/src/main/webapp/groovy/portal/webui/application/UIGadget.gtmpl
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/application/StandaloneAppRequestContext.java
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIStandaloneAppContainer.java
Log:
Add getStandaloneURL() method to UIGadget and fix bug with title: always show the name of
the first application
Modified:
exo/portal/branches/standalone/web/portal/src/main/webapp/groovy/portal/webui/application/UIGadget.gtmpl
===================================================================
---
exo/portal/branches/standalone/web/portal/src/main/webapp/groovy/portal/webui/application/UIGadget.gtmpl 2010-12-02
19:06:00 UTC (rev 5469)
+++
exo/portal/branches/standalone/web/portal/src/main/webapp/groovy/portal/webui/application/UIGadget.gtmpl 2010-12-03
11:30:24 UTC (rev 5470)
@@ -1,16 +1,10 @@
<%
import org.exoplatform.web.application.JavascriptManager;
- import org.exoplatform.portal.webui.application.GadgetUtil;
- import org.exoplatform.portal.application.PortalRequestContext;
- import javax.servlet.http.HttpSession;
+ import org.exoplatform.portal.webui.application.GadgetUtil;
import org.exoplatform.portal.config.model.PersistentApplicationState;
import org.exoplatform.portal.pom.spi.gadget.Gadget;
- import javax.portlet.PortletRequest;
- import javax.portlet.PortletResponse;
def rcontext = _ctx.getRequestContext();
- def portalRC = rcontext.getParentAppRequestContext();
- HttpSession httpSession = portalRC.getRequest().getSession(true);
JavascriptManager jsmanager = rcontext.getJavascriptManager();
def hostName = GadgetUtil.getRelGadgetServerUrl();
def url = uicomponent.getUrl();
@@ -34,16 +28,8 @@
String unminiTitle = _ctx.appRes("UIGadget.tooltip.Unminimize");
String maxiTitle = _ctx.appRes("UIGadget.tooltip.Maximize");
String unmaxiTitle = _ctx.appRes("UIGadget.tooltip.Unmaximize");
-
- def portletRequest = rcontext.getRequest();
- def scheme = portletRequest.getScheme();
- def serverName = portletRequest.getServerName();
- def port = portletRequest.getServerPort();
- def standaloneURL = scheme + "://" + serverName + ":" + port +
rcontext.getPortalContextPath();
- standaloneURL += "/standalone/" + uicomponent.getStorageId();
- def portletResponse = rcontext.getResponse();
- standaloneURL = portletResponse.encodeURL(standaloneURL);
+ def standaloneURL = uicomponent.getStandaloneURL();
%>
<div class="UIGadget" id="$id" style="left: $posX; top:
$posY; z-Index: $zIndex; width: 100%" >
<a style="display:none" href="$standaloneURL"></a>
Modified:
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/application/StandaloneAppRequestContext.java
===================================================================
---
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/application/StandaloneAppRequestContext.java 2010-12-02
19:06:00 UTC (rev 5469)
+++
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/application/StandaloneAppRequestContext.java 2010-12-03
11:30:24 UTC (rev 5470)
@@ -19,6 +19,7 @@
package org.exoplatform.portal.application;
+import org.exoplatform.portal.webui.application.UIStandaloneAppContainer;
import org.exoplatform.portal.webui.application.UIStandaloneGadget;
import org.exoplatform.portal.webui.workspace.UIStandaloneApplication;
import org.exoplatform.services.log.ExoLogger;
@@ -59,10 +60,10 @@
{
String title = null;
UIApplication uiApp = getUIApplication();
- UIStandaloneGadget aloneGadget =
uiApp.findFirstComponentOfType(UIStandaloneGadget.class);
- if (aloneGadget != null)
+ UIStandaloneAppContainer container =
uiApp.getChild(UIStandaloneAppContainer.class);
+ if (container != null)
{
- title = aloneGadget.getApplicationName();
+ title = container.getCurrAppName();
}
if (title == null)
Modified:
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java
===================================================================
---
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java 2010-12-02
19:06:00 UTC (rev 5469)
+++
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java 2010-12-03
11:30:24 UTC (rev 5470)
@@ -23,6 +23,7 @@
import org.exoplatform.application.gadget.GadgetRegistryService;
import org.exoplatform.commons.utils.PropertyManager;
import org.exoplatform.container.ExoContainerContext;
+import org.exoplatform.portal.application.PortalRequestContext;
import org.exoplatform.portal.config.DataStorage;
import org.exoplatform.portal.config.model.ApplicationState;
import org.exoplatform.portal.config.model.ApplicationType;
@@ -46,6 +47,8 @@
import java.util.Random;
import java.util.UUID;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
/**
* Created by The eXo Platform SAS Author : dang.tung tungcnw(a)gmail.com May 06,
@@ -140,6 +143,18 @@
return storageName;
}
+ public String getStandaloneURL()
+ {
+ PortalRequestContext portalRC = Util.getPortalRequestContext();
+ HttpServletRequest request = portalRC.getRequest();
+ StringBuilder urlBuilder = new StringBuilder(request.getScheme());
+
urlBuilder.append("://").append(request.getServerName()).append(":").append(request.getServerPort());
+
urlBuilder.append(request.getContextPath()).append("/standalone/").append(storageId);
+
+ HttpServletResponse response = portalRC.getResponse();
+ return response.encodeURL(urlBuilder.toString());
+ }
+
public ApplicationState<org.exoplatform.portal.pom.spi.gadget.Gadget>
getState()
{
return state;
Modified:
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIStandaloneAppContainer.java
===================================================================
---
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIStandaloneAppContainer.java 2010-12-02
19:06:00 UTC (rev 5469)
+++
exo/portal/branches/standalone/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIStandaloneAppContainer.java 2010-12-03
11:30:24 UTC (rev 5470)
@@ -57,6 +57,15 @@
return null;
}
+ public String getCurrAppName()
+ {
+ if (currApp != null)
+ {
+ return currApp.getApplicationName();
+ }
+ return null;
+ }
+
public void setCurrStorageId(String storageId) throws Exception
{
//New app, so we reset the lossData status
Show replies by date