You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by dd...@apache.org on 2006/12/02 08:19:02 UTC
svn commit: r481515 - in /portals/pluto/trunk:
pluto-container/src/main/java/org/apache/pluto/core/
pluto-container/src/main/java/org/apache/pluto/internal/impl/
pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/
Author: ddewolf
Date: Fri Dec 1 23:19:01 2006
New Revision: 481515
URL: http://svn.apache.org/viewvc?view=rev&rev=481515
Log:
Tidying up the user interface for the page adminsitrator
Modified:
portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java
portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java
portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp
Modified: portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java?view=diff&rev=481515&r1=481514&r2=481515
==============================================================================
--- portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java (original)
+++ portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java Fri Dec 1 23:19:01 2006
@@ -31,6 +31,7 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.HashSet;
/**
* Manager used to cache the portlet configurations which have
@@ -117,7 +118,7 @@
public Iterator getRegisteredPortletApplications() throws PortletContainerException {
- return portletContexts.values().iterator();
+ return new HashSet(portletContexts.values()).iterator();
}
public PortletAppDD getPortletApplicationDescriptor(String name) throws PortletContainerException {
Modified: portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java?view=diff&rev=481515&r1=481514&r2=481515
==============================================================================
--- portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java (original)
+++ portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java Fri Dec 1 23:19:01 2006
@@ -105,6 +105,9 @@
String applicationId = getContextPath();
if(applicationId == null) {
applicationId = servletContext.getServletContextName();
+ if(applicationId != null) {
+ applicationId = Integer.toHexString(applicationId.hashCode());
+ }
}
if(applicationId == null) {
@@ -112,6 +115,20 @@
}
return applicationId;
+ }
+
+ public String getApplicationName() {
+ String applicationName = servletContext.getServletContextName();
+
+ if(applicationName == null) {
+ applicationName = getContextPath();
+ }
+
+ if(applicationName == null) {
+ applicationName = getApplicationId();
+ }
+
+ return applicationName;
}
/**
Modified: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp?view=diff&rev=481515&r1=481514&r2=481515
==============================================================================
--- portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp (original)
+++ portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp Fri Dec 1 23:19:01 2006
@@ -25,21 +25,58 @@
</c:forEach>
</select>
</p>
- </div>
+</div>
<div>
<h2>Portlet Applications</h2>
<p>
- <select name="apps" onChange="alert('Once Implemented, you will be able to add this portlet to this page.');">
- <c:forEach items="${portletContainer.optionalContainerServices.portletRegistryService.registeredPortletApplications}" var="app">
- <optgroup label="<c:out value="${app.applicationId}"/>">
- <c:forEach items="${app.portletApplicationDefinition.portlets}" var="portlet">
- <option value="<c:out value="${portlet.portletName}"/>"><c:out value="${portlet.portletName}"/></option>
- </c:forEach>
- </optgroup>
+ <!-- TODO: Should be namespaced! -->
+ <form name="adminForm" action="#">
+
+ <script type="text/javascript">
+ var portlets = new Array();
+ <c:forEach items="${portletContainer.optionalContainerServices.portletRegistryService.registeredPortletApplications}" var="app">
+ var i = 0;
+ portlets['<c:out value="${app.applicationId}"/>'] = new Array();
+ portlets['<c:out value="${app.applicationId}"/>'][i++] = 'Select. . .';
+ <c:forEach items="${app.portletApplicationDefinition.portlets}" var="portlet">
+ portlets['<c:out value="${app.applicationId}"/>'][i++] = '<c:out value="${portlet.portletName}"/>';
+ </c:forEach>
+ </c:forEach>
+
+ function doSwitch(select) {
+ var portletsSelectBox = document.forms['adminForm'].elements['portlets'];
+ if (select.value == '-') {
+ document.forms['adminForm'].elements['portlets'].disabled = true;
+ } else {
+ portletsSelectBox.disabled = false;
+ var pList = portlets[select.value];
+ for (i = 0; i < pList.length; i++) {
+ portletsSelectBox.options[i] = new Option(pList[i], pList[i]);
+ }
+ }
+ doSwitchButton(portletsSelectBox);
+ }
+
+ function doSwitchButton(select) {
+ document.forms['adminForm'].elements['submitButton'].disabled = (select.value == 'Select. . .' || select.disabled);
+ }
+ </script>
+
+ <select name="applications" onChange="doSwitch(this)">
+ <option value='-'>Select. . .</option>
+ <c:forEach items="${portletContainer.optionalContainerServices.portletRegistryService.registeredPortletApplications}" var="app">
+ <option value="<c:out value="${app.applicationId}"/>"><c:out value="${app.applicationName}"/></option>
</c:forEach>
</select>
- </p>
-</div>
+ <select name="portlets" disabled="true" onChange='doSwitchButton(this)'>
+
+ </select>
+ <button onClick="alert('Sorry, this feature has not yet been implemented'); return false;" name="submitButton" disabled="true">
+ Add Portlet
+ </button>
+ </form>
+ </p>
+</div>