portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tay...@apache.org
Subject svn commit: r348854 [14/16] - in /portals/jetspeed-2/trunk/applications/j2-admin: ./ src/java/org/apache/jetspeed/portlets/entityeditor/ src/java/org/apache/jetspeed/portlets/localeselector/ src/java/org/apache/jetspeed/portlets/localeselector/resource...
Date Fri, 25 Nov 2005 02:25:20 GMT
Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pam-detail.jsp
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pam-detail.jsp?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pam-detail.jsp (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pam-detail.jsp Thu Nov 24 18:24:19 2005
@@ -0,0 +1,281 @@
+<%--
+Copyright 2004 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+    http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+--%>
+<%@ page language="java" session="true" %>
+<%@ page import="javax.portlet.*" %>
+<%@ page import="java.util.*" %>
+<%@ page import="org.apache.portals.bridges.beans.TabBean" %>
+<%@ page import="org.apache.jetspeed.om.common.preference.*" %>
+<%@ page import="org.apache.jetspeed.om.common.*" %>
+<%@ page import="org.apache.jetspeed.om.common.portlet.*" %>
+
+<%@ taglib uri='/WEB-INF/portlet.tld' prefix='portlet'%>
+<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
+<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
+
+<fmt:setBundle basename="org.apache.jetspeed.portlets.pam.resources.PAMResources" />
+
+
+<portlet:defineObjects/>
+
+<c:set var="pa" value="${requestScope.portletApplication}" />
+<c:set var="name" value="${pa.name}" />
+<c:set var="version" value="${pa.version}" />
+
+<c:set var="tabs" value="${requestScope.tabs}"/>
+<c:set var="selectedTab" value="${requestScope.selected_tab}"/>
+<c:set var="selectedPDef" value="${requestScope.portletDefinition}"/>
+
+<table border="0" cellspacing="0" cellpadding="0">
+  <tr>
+    <td class="portlet-menu-caption">
+      Information
+    </td>
+
+  </tr>
+  <tr>
+    <td class="portlet-menu">
+      <table border="0" cellspacing="2" cellpadding="0">
+        <tr>
+          <td class="portlet-menu-item">
+<fmt:message key="pam.details.name"/> = <c:out value="${name}"/>
+          </td>
+        </tr>
+        <tr>
+          <td class="portlet-menu-item">
+<fmt:message key="pam.details.version"/> = <c:out value="${version}"/> 
+          </td>
+        </tr>
+      </table>
+
+    </td>
+  </tr>
+</table>
+<br/>
+
+<div id="tabs">
+	<c:set var="tab_items" value="${tabs}"/>
+	<c:set var="currentTab" value="${selectedTab}"/>
+	<c:set var="url_param_name" value="selected_tab"/>
+	<%@ include file="tabs.jsp"%>
+</div>
+
+<%--Beginning of Portlets tab data--%>
+<%--TODO:  switch to c:choose --%>
+<c:if test="${selectedTab.id == 'pa_portlets'}">
+  <div id="portlets">
+	
+	<portlet:actionURL var="select_portlet_link" >
+        <%--<portlet:param name="select_portlet" value="<%= pdefName %>" />--%>
+    </portlet:actionURL>
+	<form action="<c:out value="${select_portlet_link}"/>" method="post">
+		<select name="select_portlet" onChange="this.form.submit();" class="portlet-form-field">
+		
+			<option value="" <c:if test="! ${selectedPDef}"> selected="true"</c:if> >
+				<fmt:message key="pam.details.choose_portlet"/>
+			</option>
+
+			<c:forEach var="portletDef" items="${pa.portletDefinitions}">
+			    <c:set var="pdefName" value="${portletDef.name}"/>
+			    
+			    <%--We must do this since portlet taglib doesn't support expressions--%>
+			    <% String pdefName = (String) pageContext.getAttribute("pdefName"); %>
+			    
+			    <option value="<c:out value="${portletDef.name}"/>" <c:if test="${selectedPDef.name == portletDef.name}">selected="true"</c:if>>
+				  <c:out value="${portletDef.name}"/>
+			    </option>
+				<%--
+			    <a href="<c:out value="${select_portlet_link}"/>">
+			        <c:out value="${portletDef.name}" /><br />
+			    </a>
+			    --%>
+			</c:forEach>
+		</select>
+		
+		<!--<input type="submit" value="Select"/>-->
+    </form>
+  </div>
+    
+  <div id="selectedPortlet" class="">
+	
+	<c:if test="${selectedPDef != null}">
+		<%@ include file="portlet-detail.jsp" %>
+	</c:if>
+    
+  </div>
+</c:if>
+<%--End of Portlets tab data--%>
+
+<%--Beginning of UserAttr tab data--%>
+<%--TODO:  switch to c:choose --%>
+<c:if test="${selectedTab.id == 'pa_user_attribtues'}">
+  <div id="Details">
+	<portlet:actionURL var="edit_user_attr_link" >
+	</portlet:actionURL>
+		
+	<form name="Edit_UserAttr_Form" action="<c:out value="${edit_user_attr_link}"/>" method="post">
+		<input type="hidden" name="portlet_action" value="portlet_app.edit_user_attribute"/>
+		
+		<table>
+			<tr>
+				<th class="portlet-section-header">&nbsp;</th>
+				<th class="portlet-section-header"><fmt:message key="pam.details.name"/></th>
+				<th class="portlet-section-header"><fmt:message key="pam.details.value"/></th>
+			</tr>
+		<c:forEach var="userAttr" items="${pa.userAttributes}">
+			<tr>
+			<%--<input type="hidden" name="user_attr_name" value="<c:out value="${userAttr.name}"/>"/>--%>
+			
+				<td class="portlet-section-body">
+					<input type="checkbox" name="user_attr_id" value="<c:out value="${userAttr.name}"/>"/>
+				</td>
+				<td class="portlet-section-body">
+					<c:out value="${userAttr.name}"/>
+				</td>
+				<td class="portlet-section-body">
+					<input type="text" name="<c:out value="${userAttr.name}"/>:description" value="<c:out value="${userAttr.description}"/>" class="portlet-form-field-label"/>
+				</td>
+			</tr>
+		</c:forEach>
+		</table>
+		
+		<input type="submit" value="<fmt:message key="pam.details.edit"/>" onClick="this.form.portlet_action.value = 'portlet_app.edit_user_attribute'" class="portlet-form-button"/>
+		<input type="submit" value="<fmt:message key="pam.details.remove"/>" onClick="this.form.portlet_action.value = 'portlet_app.remove_user_attribute'" class="portlet-form-button"/>
+	</form>
+	
+	<form action="<c:out value="${edit_user_attr_link}"/>" method="post">
+		<input type="hidden" name="portlet_action" value="portlet_app.add_user_attribute"/>
+		
+		<table>
+			<tr>
+				<td class="portlet-section-alternate">
+					<fmt:message key="pam.details.name"/>
+				</td>
+				<td class="portlet-section-body">
+					<input type="text" name="user_attr_name" value="" class="portlet-form-field-label"/>
+				</td>
+			</tr>
+			<tr>
+				<td class="portlet-section-alternate">
+					<fmt:message key="pam.details.description"/>
+				</td>
+				<td class="portlet-section-body">
+					<input type="text" name="user_attr_desc" value="" class="portlet-form-field-label"/>
+				</td>
+			</tr>
+		</table>
+		<input type="submit" value="<fmt:message key="pam.details.add_user_attribute"/>" class="portlet-form-button"/>
+	</form>
+  </div>
+</c:if>
+<%--End of UserAttr tab data--%>
+
+
+<%--Beginning of Metadata tab data--%>
+<%--TODO:  switch to c:choose --%>
+<c:if test="${selectedTab.id == 'pa_metadata'}">
+	<div id="metadata">
+		<c:set var="md" value="${pa.metadata}"/>
+	
+		<portlet:actionURL var="edit_metadata_link" >
+			
+		</portlet:actionURL>
+		<c:set var="action_prefix" value="portlet_app."/>
+		
+		<%@ include file="metadata-detail.jsp" %>
+		
+	</div>
+</c:if>
+<%--End of Metadata tab data--%>
+
+<%--Beginning of Details tab data--%>
+<%--TODO:  switch to c:choose --%>
+<c:if test="${selectedTab.id == 'pa_details'}">
+	<div id="details">
+		<table>
+			<tr>
+				<td class="portlet-section-alternate">
+					<fmt:message key="pam.details.name"/>
+                </td>
+				<td class="portlet-section-body">
+					<c:out value="${name}"/>
+				</td>
+			</tr>
+			<tr>
+				<td class="portlet-section-alternate">
+					<fmt:message key="pam.details.version"/>
+				</td>
+				<td class="portlet-section-body">
+					<c:out value="${version}"/>
+				</td>
+			</tr>
+			<tr>
+				<td class="portlet-section-alternate">		
+					<fmt:message key="pam.details.description"/>
+				</td>
+				<td class="portlet-section-body">
+					<c:out value="${pa.description}"/>
+				</td>
+			</tr>
+			<tr>
+				<td class="portlet-section-alternate">
+					<fmt:message key="pam.details.type"/>
+				</td>
+				<td class="portlet-section-body">
+					<c:choose>
+						<c:when test="${pa.applicationType == '0'}">
+							<fmt:message key="pam.details.type.webapp"/>
+						</c:when>
+						<c:when test="${pa.applicationType == '1'}">
+							<fmt:message key="pam.details.type.local"/>
+						</c:when>
+					</c:choose>
+				</td>
+			</tr>
+			<tr>
+				<td class="portlet-section-alternate">
+					<fmt:message key="pam.details.id"/>
+				</td>
+				<td class="portlet-section-body">
+					<c:out value="${pa.applicationIdentifier}"/>
+				</td>
+			</tr>
+		</table>
+	
+		
+		<c:if test="${! empty pa.jetspeedServices}">
+            <br/>
+            <table border="0"  cellspacing="0" cellpadding="0">
+                <tr>
+                    <td class="portlet-menu-caption">
+			<fmt:message key="pam.details.services"/>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="portlet-menu">
+            <div class="portlet-section-body">
+			<c:forEach var="service" items="${pa.jetspeedServices}">
+				<c:out value="${service.name}"/> <br /> <%--| <c:out value="${service.appId}"/> | <c:out value="${service.id}"/><br />--%>
+			</c:forEach>
+            </div>
+                    </td>
+                </tr>
+            </table>
+		</c:if>
+	</div>
+</c:if>
+<%--End of Details tab data--%>
+
+<br />
+<br />
+
+

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/browser_view.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/browser_view.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/browser_view.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/browser_view.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,107 @@
+#set($locale = $request.locale)
+
+<script language="javascript" src="${request.contextPath}/javascript/ajax.js"></script>
+
+<script language="javascript">
+
+var currentApp;
+var applicationRoot = "${jetspeedContextPath}";
+
+
+function Portlet(portletId, title)
+{
+  this.portletId = portletId;
+  this.title = title;
+  this.asOption = new Option("("+this.portletId+") "+this.title , this.portletId);
+  this.portletEntites = new Array();
+}
+
+function onAppSelected(app)
+{
+  hide("PortletEntityEditor");
+  currentApp = app;
+  var sList = document.getElementById("selectedPortlet");
+
+  //Clear out all old options
+  var optsLen = sList.options.length;
+
+  for(i=0; i<optsLen; i++)
+  {
+     sList.remove(0);
+  }
+  
+  //add in new options
+  new PortletDefinitionLoader("selectedPortlet").load(app);
+  
+  hide("selectEntityBlock,createEntityButton");
+  show("selectPortletBlock");
+}
+
+function onPortletSelected(portlet)
+{
+  hide("PortletEntityEditor");
+  var sList = document.getElementById("selectedEntity"); 
+
+  //Clear out all old options
+  var optsLen = sList.options.length;
+
+  for(i=0; i<optsLen; i++)
+  {
+     sList.remove(0);
+  }
+  
+  //add in new options
+  PortletEntityLoader
+  entityLoader = new PortletEntityLoader("selectedEntity", "selectEntityBlock");
+  entityLoader.load(portlet);
+  
+  show("createEntityButton");
+}
+
+function onEntitySelected(entity)
+{
+  var editButton = document.getElementById("editEntityButton");
+  var entityAccess = new InitEntityEditor("portletEntityId", "selectedPref", "entityIdLabel");
+  entityAccess.load(entity);  
+  show("PortletEntityEditor");
+}
+
+
+</script>
+
+
+#set($createUrl = $renderResponse.createActionURL())
+$!createUrl.setParameter("action", "create")
+
+<form name="appSelection" method="post" action="${createUrl}">
+
+<h2 class="portlet-section-header">Portlet Entity Browser</h2>
+
+<h3 class="portlet-section-subheader">Choose a Portlet Application...</h3>
+
+<select id="portletApp" name="portletApp" style="width:350px;" size="6" onChange="onAppSelected(this.options[this.selectedIndex].value);">
+
+</select>
+
+<div id="selectPortletBlock" style="display:none">
+  <h3 class="portlet-section-subheader">Choose a Portlet...</h3>
+
+  <select class="portlet-form-field-label" id="selectedPortlet" name="selectedPortlet" style="width:350px;" size="6"  onChange="onPortletSelected(this.options[this.selectedIndex].value)">
+  </select>
+  <br />
+  <input type="submit" class="portlet-form-button" id="createEntityButton" name="createEntityButton" style="display:none" value="Create New Portlet Enitity"/>
+</div>
+
+<div id="selectEntityBlock" style="display:none">	
+  <h3 class="portlet-section-subheader">Choose a Portlet Entity to Edit...</h3>
+  <select class="portlet-form-field-label" id="selectedEntity" name="selectedEntity" style="width:350px;" size="6" onChange="onEntitySelected(this.options[this.selectedIndex].value)"></select>
+  <br />
+  <input type="button" class="portlet-form-button" id="editEntityButton" name="editEntityButton" style="display:none" value="Edit Portlet Enitity"/>
+</div>
+
+</form>
+
+<script>
+new PortletAppLoader("portletApp");
+
+</script>
\ No newline at end of file

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/editor_view.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/editor_view.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/editor_view.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/pemp/editor_view.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,77 @@
+<script language="javascript">
+
+function onPrefEntrySelected(selectedOption)
+{
+   var sVal = selectedOption.value.split("::");
+   if(sVal[0] == "prefvalue")
+   {
+     document.getElementById("addPrefValueBlock").style.display="none";
+     document.getElementById("editPrefValueBlock").style.display="inline";
+	 document.getElementById("selectedPrefValue").value=sVal[3];
+   }
+   else if(sVal[0] == "pref")
+   {     
+	 document.getElementById("addPrefValueBlock").style.display="inline";
+	 document.getElementById("editPrefValueBlock").style.display="none"
+   }
+   else
+   {
+     document.getElementById("editPrefValueBlock").style.display="none"
+	 document.getElementById("addPrefValueBlock").style.display="none";
+   }
+
+}
+
+function onRemovePref()
+{
+   if(confirm("Are you sure you want to delete this preference?"))
+   {
+     getElement('EditFormAction').value='removePref';
+	 return true;
+   }
+   else
+   {
+     return false;
+   }
+}
+
+</script>
+
+#set($url = $renderResponse.createActionURL())
+
+<div id="PortletEntityEditor" style="display:none">
+   <p>
+	 <span style="font-weight: bold">You are Editing Entity: </span><span id="entityIdLabel"></span>     
+   </p>
+   <form name="EditForm" method="POST" action="${url}">
+	  <input type="hidden" id="EditFormAction" name="action" />
+	  <input type="hidden" id="portletEntityId" name="portletEntityId" />
+      <h2 class="portlet-section-subheader">Add New Preference</h2>
+      Name: <input class="portlet-form-field-label" type="text" id="newPreferenceName" name="newPreferenceName" onKeyUp="enableIfComplete('newPreferenceName,newPreferenceValue', 'addPrefButton');" />
+      <br/>
+      Value: <input class="portlet-form-field-label" type="text" id="newPreferenceValue" name="newPreferenceValue" onKeyUp="enableIfComplete('newPreferenceName,newPreferenceValue', 'addPrefButton');" />
+      <br/>
+      <input type="Submit" value="Done" class="portlet-form-button" id="addPrefButton" style="display:none;" onClick="this.form.elements['action'].value='addPref'"/>
+	  
+	  <h2 class="portlet-section-subheader">Update Existing Prefences</h2>
+	  <select size="4" class="portlet-form-field-label" name="selectedPref" id="selectedPref" style="width:350px;" onChange="onPrefEntrySelected(this.options[this.selectedIndex]);"></select> 
+  	
+   
+     <div id="editPrefValueBlock" style="display:none">
+	  <p>
+	    <input type="text" class="portlet-form-field-label" name="selectedPrefValue" id="selectedPrefValue" onKeyUp="enableIfComplete('selectedPrefValue', 'updatePrefValueButton');"/> 
+	    <input type="submit" id="updatePrefValueButton" value="Update Value" class="portlet-form-button" onClick="this.form.elements['action'].value='updateValue'" />
+	    <input type="submit" value="Remove Value" class="portlet-form-button" onClick="this.form.elements['action'].value='removeValue'" />
+	  </p>
+     </div>
+	 
+	 <div id="addPrefValueBlock" style="display:none">
+	  <p>
+	    <span style="font-weight: bold">New Value:</span>
+		<input type="text" class="portlet-form-field-label" name="newPrefValue" id="newPrefValue" onKeyUp="enableIfComplete('newPrefValue', 'addValueButton');"/> 
+	    <input type="submit" class="portlet-form-button" id="addValueButton" value="Add Value" style="display:none;" onClick="this.form.elements['action'].value='addValue'"  />
+		<input type="submit" class="portlet-form-button" id="removePrefButton" value="Remove Preference "  onClick="return onRemovePref();"  />
+	  </p>
+     </div>
+   </form>
+</div>
\ No newline at end of file

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/portlet-detail.jsp
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/portlet-detail.jsp?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/portlet-detail.jsp (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/portlet-detail.jsp Thu Nov 24 18:24:19 2005
@@ -0,0 +1,654 @@
+<%--
+Copyright 2004 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+    http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+--%>
+<c:set var="portlet_tabs" value="${requestScope.portlet_tabs}"/>
+
+<c:set var="selectedPortletTab" value="${requestScope.selected_portlet_tab}"/>
+
+<table border="0"  cellspacing="0" cellpadding="0">
+	<tr>
+		<td class="portlet-menu-caption">Selected Portlet</td>
+    </tr>
+    <tr>
+		<td class="portlet-menu">
+            <div class="portlet-menu-item">
+<c:out value="${selectedPDef.name}"/>
+            </div>
+		</td>
+	</tr>
+</table>
+<br/>
+
+<div id="portlet_tabs">
+
+    <c:set var="tab_items" value="${portlet_tabs}"/>
+    <c:set var="currentTab" value="${selectedPortletTab}"/>
+    <c:set var="url_param_name" value="selected_portlet_tab"/>
+    <%@ include file="tabs.jsp"%>
+</div>
+
+<c:if test="${selectedPortletTab.id == 'pd_details'}">
+    <portlet:actionURL var="edit_portlet_link" >
+    </portlet:actionURL>
+    
+    <form action="<c:out value="${edit_portlet_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.edit_portlet"/>
+    <table>
+        <tr>
+            <td class="portlet-section-alternate">
+                <fmt:message key="pam.details.expiration_cache"/>
+            </td>
+            <td class="portlet-section-body">
+                <c:out value="${selectedPDef.expirationCache}"/>
+            </td>
+        </tr>
+        </tr>
+            <td class="portlet-section-alternate">
+                <fmt:message key="pam.details.id"/>
+            </td>
+            <td class="portlet-section-body">
+                <c:out value="${selectedPDef.portletIdentifier}"/>
+            </td>
+        </tr>
+        </tr>
+            <td class="portlet-section-alternate">
+                <fmt:message key="pam.details.unique_name"/>
+            </td>
+            <td class="portlet-section-body">
+                <c:out value="${selectedPDef.uniqueName}"/>
+            </td>
+        </tr>
+        </tr>
+            <td class="portlet-section-alternate">
+                <fmt:message key="pam.details.preference_validator"/>
+            </td>
+            <td class="portlet-section-body">
+                <c:out value="${selectedPDef.preferenceValidatorClassname}"/>
+            </td>
+        </tr>
+        </tr>
+            <td class="portlet-section-alternate">
+                <fmt:message key="pam.details.class_name"/>
+            </td>
+            <td class="portlet-section-body">
+                <c:out value="${selectedPDef.className}"/>
+            </td>
+        </tr>
+        <tr>
+            <td class="portlet-section-alternate">
+                <fmt:message key="pam.details.display_name"/>
+            </td>
+            <td class="portlet-section-body">
+                <table>
+                    <%
+                        PortletDefinitionComposite portlet = (PortletDefinitionComposite)pageContext.findAttribute("selectedPDef");
+                        pageContext.setAttribute("displayNameSet", portlet.getDisplayNameSet());
+                    %>
+                    <c:forEach var="displayName" items="${displayNameSet.innerCollection}" varStatus="displayNameStatus">
+                        <tr>
+                            
+                            <td class="portlet-section-alternate"><c:out value="${displayName.locale}"/></td>
+                            <td class="portlet-section-body"><input type="text" name="display_name:<c:out value="${displayNameStatus.index}"/>" value="<c:out value="${displayName.displayName}"/>" class="portlet-form-field-label"/></td>
+                        </tr>
+                    </c:forEach>
+                </table>
+            </td>
+        </tr>
+    </table>
+    
+        <input type="submit" value="<fmt:message key="pam.details.edit_display_name"/>" class="portlet-form-button"/>
+    </form>
+    
+    <form action="<c:out value="${edit_portlet_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.edit_portlet"/>
+        <table>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.display_name"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="display_name" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <span class="portlet-form-field-label"><fmt:message key="pam.details.display_name.description"/></span>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.locale"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="locale" value="" size="2"  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <span class="portlet-form-field-label"><fmt:message key="pam.details.locale.description"/></span>
+                </td>
+            </tr>
+        </table>
+        <input type="submit" value="<fmt:message key="pam.details.add_display_name"/>"  class="portlet-form-button"/>
+    </form>
+</c:if>
+
+<c:if test="${selectedPortletTab.id == 'pd_metadata'}">
+    <div id="portlet_metadata">
+            
+        <c:set var="md" value="${selectedPDef.metadata}"/>
+        <c:set var="action_prefix" value="portlet."/>
+        <portlet:actionURL var="edit_metadata_link" >            
+        </portlet:actionURL>
+        
+        <%@ include file="metadata-detail.jsp" %>
+    </div>
+</c:if>
+
+<c:if test="${selectedPortletTab.id == 'pd_preferences'}">
+    <c:set var="prefSet" value="${selectedPDef.preferenceSet}"/>
+    <%
+        PreferenceSetComposite comp = (PreferenceSetComposite)pageContext.findAttribute("prefSet");
+        Iterator prefIter = comp.iterator();
+        pageContext.setAttribute("prefIter", prefIter);
+    %>
+    
+    <portlet:actionURL var="edit_preferenece_link" >
+    </portlet:actionURL>
+    
+    <form action="<c:out value="${edit_preferenece_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value=""/>
+        <table border="0">
+            <tr>
+                <th class="portlet-section-header">&nbsp;</th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.name"/></th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.value"/></th>
+            </tr>
+        <c:forEach var="pref" items="${prefIter}">
+            <tr>
+                <td class="portlet-section-body">
+                    <input type="checkbox" name="pref_remove_id" value="<c:out value="${pref.name}"/>"/>
+                </td>
+                <td class="portlet-section-body">
+                    <c:out value="${pref.name}"/>
+                    <input type="hidden" name="pref_edit_id" value="<c:out value="${pref.name}"/>"/>
+                </td>
+                <td class="portlet-section-body">
+                    <table>
+                    <c:forEach var="value" items="${pref.values}" varStatus="status">
+                        <tr>
+                            <td>
+                                <input type="text" name="<c:out value="${pref.name}"/>:<c:out value="${status.index}"/>" value="<c:out value="${value}"/>" class="portlet-form-field-label"/>
+                            </td>
+                        </tr>
+                    </c:forEach>
+                    </table>
+                </tr>
+            </tr>
+        </c:forEach>
+        </table>
+        
+        <input type="submit" value="<fmt:message key="pam.details.edit"/>" onClick="this.form.portlet_action.value = 'portlet.edit_preference'"  class="portlet-form-button"/>
+        <input type="submit" value="<fmt:message key="pam.details.remove"/>" onClick="this.form.portlet_action.value = 'portlet.remove_preference'"  class="portlet-form-button"/>
+    </form>
+    
+    <hr />
+    
+    
+    <form action="<c:out value="${edit_preferenece_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.add_preference"/>
+        <table>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.name"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="name" class="portlet-form-field-label"/>
+                </td>
+                <%--TODO add combo box of existing keys--%>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.value"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="value" class="portlet-form-field-label"/>
+                </td>
+            </tr>
+            <%--
+            <tr>
+                <td>
+                    <fmt:message key="pam.details.type"/>
+                </td>
+                <td>
+                    <select  class="portlet-form-field">
+                        <option value="string">String</option>
+                        <option value="int">Int</option>
+                    </select>
+                </td>
+            </tr>
+            --%>
+        </table>
+        <input type="submit" value="<fmt:message key="pam.details.add_preference"/>" class="portlet-form-button"/>
+    </form>
+</c:if>
+
+<c:if test="${selectedPortletTab.id == 'pd_languages'}">
+    <c:set var="langSet" value="${selectedPDef.languageSet}"/>
+    
+    <portlet:actionURL var="edit_language_link" >
+    </portlet:actionURL>
+    
+    <form action="<c:out value="${edit_language_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value=""/>
+    <table border="0">
+        <tr>
+            <th class="portlet-section-header">&nbsp;</th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.title"/></th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.short_title"/></th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.keyword"/></th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.locale"/></th>
+        </tr>
+    <c:forEach var="lang" items="${langSet.innerCollection}" varStatus="status">
+        <tr>
+            <td class="portlet-section-body">
+                <input type="checkbox" name="language_remove_id" value="<c:out value="${status.index}"/>"/>
+                <input type="hidden" name="language_edit_id" value="<c:out value="${status.index}"/>"/>
+            </td>
+            <td class="portlet-section-body">
+                <input type="text" name="title:<c:out value="${status.index}"/>" value="<c:out value="${lang.title}"/>" class="portlet-form-field-label"/>
+            </td>
+            <td class="portlet-section-body">
+                <input type="text" name="short_title:<c:out value="${status.index}"/>" value="<c:out value="${lang.shortTitle}"/>"  class="portlet-form-field-label"/>
+            </td>
+            <td class="portlet-section-body">
+                <table>
+                <c:forEach var="keyword" items="${lang.keywords}" varStatus="keywordStatus">
+                    <tr>
+                        <td>
+                            <input type="text" name="keyword:<c:out value="${status.index}"/>:<c:out value="${keywordStatus.index}"/>" value="<c:out value="${keyword}"/>"  class="portlet-form-field-label"/>
+                        </td>
+                    </tr>
+                </c:forEach>
+                </table>
+                <%--
+                <input type="text" name="keyword:<c:out value="${status.index}"/>" value="<c:forEach var="keyword" items="${lang.keywords}" varStatus="keywordStatus"><c:out value="${keyword}"/>,</c:forEach>" class="portlet-form-field-label"/>
+                --%>
+            </td>
+            <td class="portlet-section-body">
+                <c:out value="${lang.locale}"/>
+            </td>
+        </tr>
+    </c:forEach>
+    </table>
+    
+        <input type="submit" value="<fmt:message key="pam.details.edit"/>" onClick="this.form.portlet_action.value = 'portlet.edit_language'"  class="portlet-form-button"/>
+        <input type="submit" value="<fmt:message key="pam.details.remove"/>" onClick="this.form.portlet_action.value = 'portlet.remove_language'"  class="portlet-form-button"/>
+    </form>
+    
+    <form action="<c:out value="${edit_language_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.add_language"/>
+        
+        <table>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.title"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="title" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.title.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.short_title"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="short_title" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.short_title.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.keyword"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="keyword" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.keyword.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.locale"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="locale" value="" size="2"  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.locale.description"/>
+                </td>
+            </tr>
+        </table>
+        
+        <input type="submit" value="<fmt:message key="pam.details.add_language"/>" class="portlet-form-button"/>
+    </form>
+</c:if>
+
+<c:if test="${selectedPortletTab.id == 'pd_parameters'}">
+    <c:set var="paramSet" value="${selectedPDef.initParameterSet}"/>
+    
+    <portlet:actionURL var="edit_parameter_link" >
+    </portlet:actionURL>
+    
+    <%--
+        TODO:  if needed, place iterator into page context
+        see prefs section
+    --%>
+    
+    <form action="<c:out value="${edit_parameter_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value=""/>
+    
+    <table border="0">
+        <tr>
+            <th class="portlet-section-header">&nbsp;</th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.name"/></th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.value"/></th>
+            <th class="portlet-section-header"><fmt:message key="pam.details.locale"/> / <fmt:message key="pam.details.description"/></th>
+        </tr>
+    <c:forEach var="theparam" items="${paramSet.innerCollection}">
+        <tr>
+            <td class="portlet-section-body">
+                <input type="checkbox" name="parameter_remove_id" value="<c:out value="${theparam.name}"/>" />
+            </td>
+            <td class="portlet-section-body">
+                <input type="hidden" name="parameter_edit_id" value="<c:out value="${theparam.name}"/>" />
+                <c:out value="${theparam.name}"/>
+            </td>
+            <td class="portlet-section-body">
+                <input type="text" name="<c:out value="${theparam.name}"/>:value" value="<c:out value="${theparam.value}"/>"  class="portlet-form-field-label"/>
+            </td>
+            <td class="portlet-section-body">
+                <%
+                    ParameterComposite param = (ParameterComposite)pageContext.findAttribute("theparam");
+                    pageContext.setAttribute("description_set", param.getDescriptionSet());
+                %>
+                <table>
+                <c:forEach var="description" items="${description_set.innerCollection}" varStatus="descStatus">
+                    <tr>
+                        <td class="portlet-section-alternate">
+                            <c:out value="${description.locale}"/>
+                        </td>
+                        <td class="portlet-section-body">
+                            <input type="text" name="<c:out value="${theparam.name}"/>:description:<c:out value="${descStatus.index}"/>"
+                                value="<c:out value="${description.description}"/>"  class="portlet-form-field-label"/>
+                        </td>
+                    </tr>
+                </c:forEach>
+                </table>
+            </td>
+        </tr>
+    </c:forEach>
+    </table>
+    
+        <input type="submit" value="<fmt:message key="pam.details.edit"/>" onClick="this.form.portlet_action.value = 'portlet.edit_parameter'"  class="portlet-form-button"/>
+        <input type="submit" value="<fmt:message key="pam.details.remove"/>" onClick="this.form.portlet_action.value = 'portlet.remove_parameter'" class="portlet-form-button"/>
+    
+    </form>
+    
+    <form action="<c:out value="${edit_parameter_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.add_parameter"/>
+        <table>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.name"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="name" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.name.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.value"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="value" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.value.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.description"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="description" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.description.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.locale"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="locale" value="" size="2"  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.locale.description"/>
+                </td>
+            </tr>
+        </table>
+        <input type="submit" value="<fmt:message key="pam.details.add_parameter"/>"  class="portlet-form-button"/>
+    </form>
+    
+</c:if>
+<c:if test="${selectedPortletTab.id == 'pd_security'}">
+    <c:set var="roleSet" value="${selectedPDef.initSecurityRoleRefSet}"/>
+    
+    <portlet:actionURL var="edit_security_link" >
+    </portlet:actionURL>
+
+    <c:if test="${! empty roleSet.innerCollection}">
+    <form action="<c:out value="${edit_security_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value=""/>    
+    
+        <table border="0">
+            <tr>
+                <th class="portlet-section-header">&nbsp;</th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.role_name"/></th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.role_link"/></th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.locale"/> / <fmt:message key="pam.details.description"/></th>
+            </tr>
+        <c:forEach var="therole" items="${roleSet.innerCollection}">
+            <tr>
+                <td class="portlet-section-body">
+                    <input type="checkbox" name="security_remove_id" value="<c:out value="${therole.roleName}"/>"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="hidden" name="security_edit_id" value="<c:out value="${therole.roleName}"/>"/>
+                    <input type="text" name="<c:out value="${therole.roleName}"/>:name" value="<c:out value="${therole.roleName}"/>"  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="<c:out value="${therole.roleName}"/>:link" value="<c:out value="${therole.roleLink}"/>"  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <%
+                        SecurityRoleRefComposite ref = (SecurityRoleRefComposite)pageContext.findAttribute("therole");
+                        pageContext.setAttribute("description_set", ref.getDescriptionSet());
+                    %>
+                    <table>
+                    <c:forEach var="description" items="${description_set.innerCollection}" varStatus="descStatus">
+                        <tr>
+                            <td class="portlet-section-alternate">
+                                <c:out value="${description.locale}"/>
+                            </td>
+                            <td class="portlet-section-body">
+                                <input type="text" name="<c:out value="${therole.roleName}"/>:description:<c:out value="${descStatus.index}"/>"
+                                    value="<c:out value="${description.description}"/>"  class="portlet-form-field-label"/>
+                            </td>
+                        </tr>
+                    </c:forEach>
+                    </table>
+                </td>
+            </tr>
+        </c:forEach>
+        </table>
+    
+        <input type="submit" value="<fmt:message key="pam.details.edit"/>" onClick="this.form.portlet_action.value = 'portlet.edit_security'"  class="portlet-form-button"/>
+        <input type="submit" value="<fmt:message key="pam.details.remove"/>" onClick="this.form.portlet_action.value = 'portlet.remove_security'"  class="portlet-form-button"/>
+    
+    </form>
+    </c:if>
+
+    <form action="<c:out value="${edit_security_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.add_security"/>
+        <table>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.role_name"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="name" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.role_name.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.role_link"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="link" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.role_link.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.description"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="description" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.description.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.locale"/>
+                </td>
+                <td class="portlet-section-body">
+                    <input type="text" name="locale" value="" size="2"  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.locale.description"/>
+                </td>
+            </tr>
+        </table>
+        <input type="submit" value="<fmt:message key="pam.details.add_security"/>"  class="portlet-form-button"/>
+    </form>
+
+</c:if>
+
+<c:if test="${selectedPortletTab.id == 'pd_content_type'}">
+    <c:set var="contentTypeSet" value="${selectedPDef.contentTypeSet}"/>
+    
+    <portlet:actionURL var="edit_content_type_link" >
+    </portlet:actionURL>
+
+    <c:if test="${! empty contentTypeSet.innerCollection}">
+    <form action="<c:out value="${edit_content_type_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value=""/>
+        <table border="0">
+            <tr>
+                <th class="portlet-section-header">&nbsp;</th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.content_type"/></th>
+                <th class="portlet-section-header"><fmt:message key="pam.details.modes"/></th>
+            </tr>
+        <c:forEach var="contentType" items="${contentTypeSet.innerCollection}">
+            <tr>
+                <td class="portlet-section-body">
+                    <input type="checkbox" name="content_type_remove_id" value="<c:out value="${contentType.contentType}"/>"/>
+                </td>
+                <td class="portlet-section-body">
+                    <c:out value="${contentType.contentType}"/>
+                </td>
+                <td class="portlet-section-body">            
+                    <c:forEach var="mode" items="${contentType.portletModes}">
+                        <c:out value="${mode}"/>, 
+                    </c:forEach>
+                </td>            
+            </tr>
+        </c:forEach>
+        </table>
+        
+        <input type="submit" value="<fmt:message key="pam.details.edit"/>" onClick="this.form.portlet_action.value = 'portlet.edit_content_type'"  class="portlet-form-button"/>
+        <input type="submit" value="<fmt:message key="pam.details.remove"/>" onClick="this.form.portlet_action.value = 'portlet.remove_content_type'" class="portlet-form-button"/>
+    </form>
+    </c:if>
+    
+    <form action="<c:out value="${edit_content_type_link}"/>" method="post">
+        <input type="hidden" name="portlet_action" value="portlet.add_content_type"/>
+        <table border="0">
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.content_type"/>
+                </td>
+                <td class="portlet-section-body">
+                    <%--TODO:  this could be a select box--%>
+                    <input type="text" name="content_type" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.content_type.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.portlet_mode"/>
+                </td>
+                <td class="portlet-section-body">
+                    <select name="mode" multiple="true" class="portlet-form-field">
+                        <option value="view"><fmt:message key="pam.details.portlet_mode.view"/></option>
+                        <option value="edit"><fmt:message key="pam.details.portlet_mode.edit"/></option>
+                        <option value="help"><fmt:message key="pam.details.portlet_mode.help"/></option>
+                    </select>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.portlet_mode.description"/>
+                </td>
+            </tr>
+            <tr>
+                <td class="portlet-section-alternate">
+                    <fmt:message key="pam.details.custom_mode"/>
+                </td>
+                <td class="portlet-section-body">
+                    <%--TODO:  this could be a select box--%>
+                    <input type="text" name="custom_modes" value=""  class="portlet-form-field-label"/>
+                </td>
+                <td class="portlet-section-body">
+                    <fmt:message key="pam.details.custom_modes.description"/>
+                </td>
+            </tr>
+        </table>
+        <input type="submit" value="<fmt:message key="pam.details.add_content_type"/>"  class="portlet-form-button"/>
+    </form>
+</c:if>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-admin.jsp
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-admin.jsp?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-admin.jsp (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-admin.jsp Thu Nov 24 18:24:19 2005
@@ -0,0 +1,131 @@
+<%@ page session="true" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/extensions" prefix="x"%>
+
+<!--
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+//-->
+
+<f:loadBundle basename="org.apache.jetspeed.portlets.profiler.resources.ProfilerResources" var="MESSAGE" />
+
+<f:view>
+<h:panelGrid columns='2'>
+<h:panelGroup>
+<h:dataTable
+    value="#{rules.extent}"
+    var="mRule"
+    styleClass="portlet-menu"
+    headerClass="portlet-menu-caption"
+>
+    <h:column>
+       <f:facet name="header">
+          <h:outputText  styleClass='portlet-menu-item' value="#{MESSAGE['profiler.title.rules']}" />          
+       </f:facet>
+       <x:commandLink actionListener="#{rule.listen}" immediate="true" >
+            <h:outputText value="#{mRule.id}" />
+            <f:param name='selectedRule' value="#{mRule.id}"/>
+       </x:commandLink>
+    </h:column>
+</h:dataTable>
+</h:panelGroup>
+<h:panelGroup rendered="#{rule != null && rule.id != '{empty}'}">
+
+    <h:form id="ruleForm" name="ruleForm">
+        <h:panelGrid columns="3">
+
+        <h:outputLabel for="xid" value="#{MESSAGE['profiler.rule.id']}: "/>
+        <h:inputText readonly='#{rule.updating}' id="xid" styleClass='portlet-form-label' value="#{rule.id}" size='80'/>
+        <h:message for="xid" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+
+        <h:outputLabel for="title" value="#{MESSAGE['profiler.rule.title']}: "/>
+        <h:inputText id="title" styleClass='portlet-form-label' value="#{rule.title}"  size='100'/>
+        <h:message for="title" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+
+        <h:outputLabel for="classname" value="#{MESSAGE['profiler.rule.class']}: "/>
+        <h:selectOneMenu id="classname" styleClass='portlet-form-label' value="#{rule.classname}">
+        	<f:selectItems value="#{rule.classnames}"/>
+        </h:selectOneMenu>
+        <h:message for="classname" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+        
+        </h:panelGrid>        
+        
+        <h:panelGroup/>
+	    <h:commandButton id="saveProfile" value="#{MESSAGE['profiler.rule.save']}" action="#{rule.saveProfile}"/>
+	    <h:commandButton id="newProfile" value="#{MESSAGE['profiler.rule.new']}" action="#{rule.createNewProfile}"/>
+	    <h:commandButton id="removeProfile" value="#{MESSAGE['profiler.rule.remove']}" action="#{rule.removeProfile}"/>
+        <h:panelGroup/>
+                
+    </h:form>
+
+<!-- criteria -->
+    <br/>
+    <div>
+	<h:outputText styleClass='portlet-section-header' value="#{MESSAGE['criteria.title']}"/>
+    </div>
+	<br/>
+	
+	<h:dataTable
+	    value="#{rule.criteria}"
+	    var="mCriterion"
+	    styleClass="portlet-menu"
+	    headerClass="portlet-menu-caption"	    
+	>
+	    <h:column>
+	       <f:facet name="header">
+	          <h:outputText styleClass="portlet-font" value="#{MESSAGE['criterion.name']}" />          
+	       </f:facet>
+	       <x:commandLink action='gotoCriterionForm' actionListener="#{criterion.listen}" immediate="true" >
+	            <h:outputText value="#{mCriterion.name}" />
+	            <f:param name='selectedCriterion' value="#{mCriterion.name}"/>
+	            <f:param name='selectedRule' value="#{rule.id}"/>	            
+	       </x:commandLink>
+	    </h:column>
+	     <h:column>      
+	       <f:facet name="header">
+	          <h:outputText styleClass="portlet-font" value="#{MESSAGE['criterion.value']}" />          
+	       </f:facet>
+	        <h:outputText value="#{mCriterion.value}" />       
+	    </h:column>
+	     <h:column>      
+	       <f:facet name="header">
+	          <h:outputText styleClass="portlet-font" value="#{MESSAGE['criterion.resolver']}" />          
+	       </f:facet>
+	        <h:outputText value="#{mCriterion.type}" />       
+	    </h:column>
+	     <h:column>      
+	       <f:facet name="header">
+	          <h:outputText styleClass="portlet-font" value="#{MESSAGE['criterion.fallback.order']}" />          
+	       </f:facet>
+	        <h:outputText value="#{mCriterion.fallbackOrder}" />       
+	    </h:column>
+	    
+	</h:dataTable>
+        
+        <h:panelGroup/>
+	    <h:commandLink id="addCriterion" value="#{MESSAGE['criteria.new']}"  immediate='true'
+	                     action="gotoCriterionForm" actionListener="#{criterion.listen}">
+	    	<f:param name='selectedRule' value="#{rule.id}" />	            	    
+	    </h:commandLink>
+        <h:panelGroup/>
+        
+    
+</h:panelGroup>
+
+</h:panelGrid>
+
+</f:view>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-criterion.jsp
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-criterion.jsp?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-criterion.jsp (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-criterion.jsp Thu Nov 24 18:24:19 2005
@@ -0,0 +1,78 @@
+<%@ page session="true" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/extensions" prefix="x"%>
+
+<!--
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+//-->
+
+<f:loadBundle basename="org.apache.jetspeed.portlets.profiler.resources.ProfilerResources" var="MESSAGE" />
+
+<f:view>
+<h:panelGrid>
+<h:panelGroup>
+    <br/>
+	<h:outputText styleClass='portlet-section-header' value="#{MESSAGE['criteria.title']}"/>
+	<br/>
+	<br/>
+
+    <h:form id="criterionForm" name="criterionForm">
+        <h:panelGrid columns="3">
+
+        <h:outputLabel for="name" value="#{MESSAGE['criterion.name']}: "/>
+        <h:inputText required='true' id="name" styleClass='portlet-form-label' value="#{criterion.name}" size='80'/>
+        <h:message for="name" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+
+        <h:outputLabel for="value" value="#{MESSAGE['criterion.value']}: "/>
+        <h:inputText id="value" styleClass='portlet-form-label' value="#{criterion.value}"  size='128'/>
+        <h:message for="value" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+
+        <h:outputLabel for="resolver" value="#{MESSAGE['criterion.resolver']}: "/>
+        <h:selectOneMenu id="resolver" styleClass='portlet-form-field-label' value="#{criterion.resolver}">
+        	<f:selectItems value="#{criterion.resolvers}"/>
+        </h:selectOneMenu>        
+        <h:message for="resolver" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+
+        <h:outputLabel for="fallbackType" value="#{MESSAGE['criterion.fallback.type']}: "/>
+        <h:selectOneMenu id="fallbackType" styleClass='portlet-form-field-label' value="#{criterion.fallbackType}">
+        	<f:selectItems value="#{criterion.fallbackTypes}"/>
+        </h:selectOneMenu>        
+        <h:message for="fallbackType" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+
+        <h:outputLabel for="fallbackOrder" value="#{MESSAGE['criterion.fallback.order']}: "/>
+        <h:inputText id="fallbackOrder" styleClass='portlet-form-label' value="#{criterion.fallbackOrder}"  />
+        <h:message for="fallbackOrder" styleClass="portlet-msg-error" showDetail="true" showSummary="false" />
+        
+        </h:panelGrid>        
+        
+        <h:panelGroup/>
+	    <h:commandButton id="saveCriterion" value="#{MESSAGE['profiler.rule.save']}" action="#{criterion.saveCriterion}"/>
+	    <h:commandButton id="removeCriteria" value="#{MESSAGE['criteria.remove']}" action="#{criterion.removeCriterion}"/>	    
+ 	    <h:commandButton id="cancelCriterion" value="#{MESSAGE['profiler.rule.cancel']}" 
+	                     action="returnFromCriterion" immediate='true'>
+	    </h:commandButton>
+
+        <h:panelGroup/>
+                
+    </h:form>        
+    
+</h:panelGroup>
+
+</h:panelGrid>
+
+</f:view>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-help.html
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-help.html?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-help.html (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/profiler-help.html Thu Nov 24 18:24:19 2005
@@ -0,0 +1,147 @@
+<h1>
+Profiler Help
+</h1>
+<h3>NOTE: This help file is in English Only. TODO: add a option to locate by locale to the GenericServletPortlet</h3>
+<h3>NOTE: Please DO NOT TRANSLATE since its still under construction.</h3>
+<p>
+The Profiler locates portal resources given a set of request parameters, properties, and attributes
+The Profiler is invoked during the request processing pipeline.
+It requires that the request context is already populated with the portal request and response,
+and capability and user information. The request context parameters, properties and attributes
+make up the profile criterion which the profiler uses to locate portal resources:
+<ul>
+<li>page
+<li>navigations
+<li>document lists
+</ul>
+ The profiler does not actually locate the document.
+ It creates a Profile Locator, an abstract definition of a resource locator.
+</p>
+<h2>Rules</h2>
+Rules define how a resource locator is created.
+A rule is an ordered sequence of one or more criterion.
+The profiler will apply all criteria for a given rule in fallback order.
+It will start from the lowest fallback number for a criteria, and continue
+trying to locate until it either locates a resource, or until the fallback type of the
+criteria dictates that it either stop or continue to loop.
+<h2>Resolvers</h2>
+Resolvers are Java classes associated with a criterion. 
+A resolver determines what runtime parameters and state to look at when building a profile locator.
+<table>
+<tr>
+<td>
+path
+</td>
+<td>
+<ul>
+<li>Looks at the Request Path of the request.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+group
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter. 
+<li>Next looks at current authenticated subject, finding all group principals for the subject.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+role
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter. 
+<li>Next looks at current authenticated subject, finding all role principals for the subject.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+user
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter. 
+<li>Next looks at current authenticated subject, finding all user principals for the subject.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+language
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter. 
+<li>Next looks at the Locale.LanguageCode for the current request.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+mediatype
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter.
+<li>Next looks at the Mediatype (Mime Type) for the current request.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+country
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter.
+<li>Next looks at the Locale.CountryCode for the current request.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+hard.coded
+</td>
+<td>
+<ul>
+<li>Applies the value specified in this rule as a constant.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+path.session
+</td>
+<td>
+<ul>
+<li>Looks in HTTP Request Parameter (Standard) for the named parameter.
+<li>Looks in Portal's Servlet Session for the named attribute.
+</ul>
+</td>
+</tr>
+<tr>
+<td>
+group.user.role
+</td>
+<td>
+<ul>
+<li>todo
+</ul>
+</td>
+</tr>
+
+</tr>
+</table>
+<h2>Fallback Types</h2>
+<table>
+<tr>
+<td>
+</td>
+</tr>
+</table>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/prototype.jsp
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/prototype.jsp?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/prototype.jsp (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/prototype.jsp Thu Nov 24 18:24:19 2005
@@ -0,0 +1,87 @@
+<%--
+Copyright 2004 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+    http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+--%>
+<%@ taglib uri='/WEB-INF/portlet.tld' prefix='portlet'%>
+<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<%@ taglib uri="http://myfaces.apache.org/extensions" prefix="x"%>
+
+<link href='css/security-admin.css' type='text/css'/>
+
+<f:view>
+<h:panelGrid columns='2'>
+<h:panelGroup>
+<h:dataTable
+    value="#{users.users}"
+    var="user"
+    styleClass="portlet-section-body"
+    headerClass="portlet-section-header"
+    rowClasses="portlet-section-body,portlet-section-alternate"
+>
+    <h:column>
+       <f:facet name="header">
+         <h:outputText value="User"
+            style="font-weight: bold"/>
+       </f:facet>
+        <h:outputText value='#{user.last}'/>
+    </h:column>
+    <h:column>
+        <f:verbatim>
+        ...
+       </f:verbatim>        
+    </h:column>    
+    <h:column>
+        <h:selectBooleanCheckbox value="false"/>
+    </h:column>
+</h:dataTable>
+</h:panelGroup>
+<h:panelGroup>
+
+<x:panelTabbedPane bgcolor="#FFFFCC" >
+
+    <f:verbatim>
+        <p>User Information</p>
+    </f:verbatim>
+
+    <x:panelTab id="tab1" label="Attributes" rendered="#{tabbedPaneBean.tab1Visible}">
+        <h:inputText id="inp1"/><f:verbatim><br></f:verbatim>
+        <h:inputText id="inp2" required="true" /><h:message for="inp2" showSummary="false" showDetail="true" />
+    </x:panelTab>
+
+    <x:panelTab id="tab2" label="Roles" rendered="#{tabbedPaneBean.tab2Visible}">
+
+    <f:verbatim>
+        <p> TAB TWO </p>
+    </f:verbatim>
+    </x:panelTab>
+
+    <x:panelTab id="tab3" label="Prefs" rendered="#{tabbedPaneBean.tab3Visible}">
+        <h:inputText id="inp3"/><f:verbatim><br></f:verbatim>
+        <h:inputText id="inp4"/><f:verbatim><br></f:verbatim>
+        <h:inputText id="inp5"/><f:verbatim><br></f:verbatim>
+    </x:panelTab>
+
+    <f:verbatim><br></f:verbatim>
+
+    <h:selectBooleanCheckbox value="#{tabbedPaneBean.tab1Visible}"/><f:verbatim>Tab 1 visible<br></f:verbatim>
+    <h:selectBooleanCheckbox value="#{tabbedPaneBean.tab2Visible}"/><f:verbatim>Tab 2 visible<br></f:verbatim>
+    <h:selectBooleanCheckbox value="#{tabbedPaneBean.tab3Visible}"/><f:verbatim>Tab 3 visible<br></f:verbatim>
+
+    <h:commandButton value="Save" />
+
+</x:panelTabbedPane>
+
+
+</h:panelGroup>
+</h:panelGrid>
+</f:view>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/selectors/portlet-selector.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/selectors/portlet-selector.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/selectors/portlet-selector.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/selectors/portlet-selector.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,191 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:taylor@apache.org">David Sean Taylor</a>
+@version $Id: portlet-selector.vm 348264 2005-11-22 22:06:45Z taylor $
+
+*#
+
+<script language="JavaScript" type="text/javascript">
+    <!--
+    function select(value)
+    {
+        var openerForm = opener.document.forms['portletform'];
+        var openerEl = openerForm.elements['portlets'];
+        window.close();
+    }
+	function rowHover(row)
+	{
+	    row.oldClassName = row.className;
+	    row.className = 'jetdbLight';
+	    row.onmouseout = function()
+	    {
+	        this.className = this.oldClassName;
+	    }
+	}    
+	function sendChecks(form)
+	{
+		var result = "";
+		for(var i = 0; i < form.length; i++)
+		{
+		   var e = form.elements[i];
+		   if (e.type == "checkbox")
+		   {
+		       if (e.checked == true)
+		       {
+		       	   result = result + "," + e.name;
+		       }
+		   }
+		}
+        var openerForm = opener.document.forms['portletform'];
+        var openerEl = openerForm.elements['portlets'];
+        openerEl.value = result;
+        window.close();
+        openerForm.submit();		
+	}
+    //-->
+</script>
+
+
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+<form name='userform' onSubmit='sendChecks(this)'/>
+<table cellpadding=0 cellspacing=1 border=0 width='100%' >
+  <tr>
+    #foreach ($column in $title)    
+      <td align='center' class="jetdbHeadNoLink" nowrap>
+        $column
+      </td>
+    #end
+      <th class="jetdbHeadNoLink" width="10"></th>        
+  </tr>
+  #foreach ( $portlet in $table )
+  <tr>
+    #if ($velocityCount % 2 == 0)
+       #set($rowstyle = "jetdbEven")
+    #else
+       #set($rowstyle = "jetdbOdd")
+    #end   
+      <td class="$rowstyle" width="40%" onmouseover="rowHover(this)">
+        <div align="left">$!portlet.DisplayName</div>
+      </td>
+      <td class="$rowstyle" width="55%" onmouseover="rowHover(this)">
+        <div align="left">$!portlet.Description</div>
+      </td>      
+	  <td class="$rowstyle" width="10">
+  	    <input type="checkbox" name="box_$portlet.Name"/>
+	  </td>    
+   </tr>
+  #end
+</table>
+ <input type="submit" name="select.portlets" value="Select Portlets" class="jetdbButton"  />
+ <input type='hidden' name='searchColumn' value='1'/>                      	
+ 
+</form>
+
+<!-- controls -->
+<table width="200" border="0" cellspacing="0" cellpadding="0" align="center">
+  <tr>
+    #if ($prev)
+      <td valign="middle" height="30">
+        <div align="center">
+          <form action="$renderResponse.createActionURL()" method="post">
+          	<input type='hidden' name='db.browser.action' value='first' />                    
+            <input class="jetdbButton" type="submit" value="<<">
+            <input type="hidden" name="start" value="0">
+          </form>
+        </div>
+      </td>  
+      <td valign="middle" height="30">
+        <div align="center">
+          <form action="$renderResponse.createActionURL()" method="post">
+          	<input type='hidden' name='db.browser.action' value='prev'/>                    
+            <input class="jetdbButton" type="submit" value="<">
+            <input type="hidden" name="start" value="$prev">
+          </form>
+        </div>
+      </td>
+    #end
+    #if ($tableSize > 0)
+      <form action="$renderResponse.createActionURL()" method="post">
+      <td valign="middle" height="30">
+        <div align="center">
+          	<input type='hidden' name='db.browser.action' value='change'/>                    
+            <input type="input" name='start' size='5' value="$start" class="portlet-form-field-label">
+        </div>
+      </td>  
+      <td valign="middle" height="30">
+        <div align="center">
+            <input type="input" readonly size='10' value="of $tableSize" class="portlet-form-field-label">            
+        </div>
+      </td>  
+      <td valign="middle" height="30">
+        <div align="center">
+            <input class="jetdbButton" type="submit" value="Go">            
+        </div>
+      </td>  
+
+      </form>
+
+      
+    #end    
+    #if ($next)
+      <td valign="middle">
+        <div align="center">
+          <form action="$renderResponse.createActionURL()" method="post">
+          	<input type='hidden' name='db.browser.action' value='next'/>          
+            <input class="jetdbButton" type="submit" value=">">
+            <input type="hidden" name="start" value="$next">
+          </form>
+        </div>
+      </td>
+      <td valign="middle" height="30">
+        <div align="center">
+          <form action="$renderResponse.createActionURL()" method="post">
+          	<input type='hidden' name='db.browser.action' value='last'/>                    
+            <input class="jetdbButton" type="submit" value=">>">
+            <input type="hidden" name="start" value="$tableSize">
+          </form>
+        </div>
+      </td>  
+    #end
+    #if ($tableSize > 0)
+      <td valign="middle">
+        <div align="center">
+          <form action="$renderResponse.createActionURL()" method="post">
+          	<input type='hidden' name='db.browser.action' value='refresh'/>
+            <input class="jetdbButton" type="submit" name="eventSubmit_doRefresh" value="Refresh" />
+          </form>
+        </div>
+      </td>
+    #end
+  </tr>
+</table>
+<form action="$renderResponse.createActionURL()" method="post">
+  	<input type='hidden' name='db.browser.action' value='search'/>                    
+  	<input type='hidden' name='searchColumn' value='1'/>                      	
+    <input class="jetdbButton" type="submit" value="Search">
+	<input type="text" name="searchString" size="30" value="" class="portlet-form-field-label">    
+	<table>
+	<tr>
+    <td nowrap class="portlet-section-alternate" align="right">Filter by Keyword:&nbsp;</td>
+    <td>	
+	<input type="checkbox"  #if($filtered == "on") checked=1 #end name="filtered">
+	</td>
+	</tr>
+	</table>		
+</form>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site-detail.jsp
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site-detail.jsp?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site-detail.jsp (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site-detail.jsp Thu Nov 24 18:24:19 2005
@@ -0,0 +1,141 @@
+<%--
+Copyright 2004 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+    http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+--%>
+
+<%@ page session="true" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri='/WEB-INF/portlet.tld' prefix='portlet'%>
+<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
+<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
+<%@ taglib uri="/WEB-INF/pam.tld" prefix="pam" %>
+
+<%@ page import="org.apache.portals.bridges.TabBean" %>
+<%@ page import="org.apache.jetspeed.page.document.*" %>
+
+<fmt:setBundle basename="org.apache.jetspeed.portlets.site.resources.SiteResources" />
+
+<!--
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+//-->
+
+<c:set var="selectedTab" value="${requestScope.selected_tab}"/>
+
+<c:if test="${folder == null && page == null}">
+	<fmt:message key="site.details.choose_folder_or_page"/>
+</c:if>
+
+<div id="tabs">
+	<c:set var="tab_items" value="${requestScope.tabs}"/>
+	<c:set var="currentTab" value="${selectedTab}"/>
+	<c:set var="url_param_name" value="selected_site_tab"/>
+	<%@ include file="tabs.jsp"%>
+</div>
+
+<c:set var="node" value="${folder}"/>
+<c:if test="${page != null}">
+	<c:set var="node" value="${page}"/>
+</c:if>
+
+<c:if test="${currentTab.id == 'site_details' && node != null}">
+	Name (Node): <c:out value="${node.name}"/> <br />
+	Path (Node): <c:out value="${node.path}"/> <br />
+	Title (BaseElement): <c:out value="${node.title}"/> <br />
+	Parent (Node): <c:out value="${node.parent.title}"/> <br />
+	ID (BaseElement): <c:out value="${node.id}"/> <br />
+	Type (Node): <c:out value="${node.type}"/> <br />
+	URL (Node): <c:out value="${node.url}"/> <br />
+	ACL (SecuredResource): <c:out value="${node.acl}"/> <br />
+	Hidden (Node): <c:out value="${node.hidden}"/> <br />
+
+
+	<c:choose>
+		<c:when test="${folder != null}">
+			Default Page (Folder): <c:out value="${folder.defaultPage}"/> <br />
+			Default Theme (Folder): <c:out value="${folder.defaultTheme}"/> <br />
+			
+			
+			<c:forEach var="field" items="${folder.metadataFields}">
+				<c:out value="${field.name}"/> | <c:out value="${field.value}"/> | <c:out value="${field.locale}"/> <br />
+			</c:forEach>
+			
+			
+		</c:when>
+
+		<c:when test="${page != null}">
+		
+			Name: <c:out value="${page.name}"/> <br />
+			Title: <c:out value="${page.title}"/> <br />
+			Parent: <c:out value="${page.parent.title}"/> <br />
+			
+		</c:when>
+		
+
+	</c:choose>
+</c:if>
+
+<c:if test="${currentTab.id == 'site_security'  && node != null}">
+		<portlet:actionURL var="edit_page_link" />
+
+		<form action="<c:out value="${edit_page_link}"/>" method="post">
+			<c:if test="${folder != null}">
+				<input type="hidden" name="action_type" value="folder"/>
+			</c:if>
+			<c:if test="${page != null}">
+				<input type="hidden" name="action_type" value="page"/>
+			</c:if>
+			
+			<input type="hidden" name="node_name" value="<c:out value="${node.name}"/>"/>
+		<table>
+			<tr>
+				<td>Node Name</td>
+				<td><c:out value="${node.name}"/></td>
+			</tr>
+			<tr>
+				<td>Current ACL</td>
+				<td>
+					<%
+						Node node = (Node)pageContext.findAttribute("node");
+						out.write("" + node.getAcl());
+					%>
+				</td>
+			</tr>
+			<tr>
+				<td>New Role</td>
+				<td>
+					<select name="acl">
+						<option value="user">User</option>
+						<option value="admin">Admin</option>
+						<option value="guest">Guest</option>
+					</select>
+				</td>
+			</tr>
+			<tr>
+				<td>
+					<input type="submit" value="Add Role"/>
+				</td>
+			</tr>
+		</table>
+		</form>
+	</c:if>

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-link.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-link.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-link.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-link.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,7 @@
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<h2 class="portlet-section-header">$MESSAGES.getString('add.link')</h2>
+
+<a href="$forward.getView('folder-view')">$MESSAGES.getString('folder.details')</a>
+
+#ErrorMessages($ERRORS)

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-page.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-page.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-page.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-page.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,20 @@
+
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<h2 class="portlet-section-header">$MESSAGES.getString('add.page')</h2>
+
+<form action="$renderResponse.createActionURL()" method="post">
+<input type='hidden' name='portlet.action' value='processAddPageAction'/>
+<table>
+    #formField('Name' "$!pageBean.Key" "40" 'key' $MESSAGES $ERRORS)
+	#formField('Title' "$!pageBean.Title" "40" 'title' $MESSAGES $ERRORS)
+    #formField('ShortTitle' "$!pageBean.ShortTitle" "40" 'shortTitle' $MESSAGES $ERRORS)
+    #formField('Version' "$!pageBean.Version" "40" 'version' $MESSAGES $ERRORS)
+	<input type='hidden' name='bridges.view.view' value='add-page'/>
+	
+</table>
+<br/>
+<input type="submit" name="Save" value="$MESSAGES.getString('save')" />
+</form>
+
+#ErrorMessages($ERRORS)

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-subfolder.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-subfolder.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-subfolder.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/add-subfolder.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,17 @@
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<h2 class="portlet-section-header">$MESSAGES.getString('add.subfolder')</h2>
+
+<form action="$renderResponse.createActionURL()" method="post">
+<input type='hidden' name='portlet.action' value='processAddFolderAction'/>
+<table>
+    #formField('Name' "$!folderBean.Key" "40" 'key' $MESSAGES $ERRORS)
+    #formField('Title' "$!folderBean.Title" "40" 'title' $MESSAGES $ERRORS)
+    #formField('ShortTitle' "$!folderBean.ShortTitle" "40" 'shortTitle' $MESSAGES $ERRORS)
+    #formField('DefaultPage' "$!folderBean.DefaultPage" "40" 'defaultPage' $MESSAGES $ERRORS)
+</table>
+<br/>
+<input type="submit" name="Save" value="$MESSAGES.getString('save')" />
+<a href="$forward.getView('folder-view')">$MESSAGES.getString('folder.details')</a>
+</form>
+#ErrorMessages($ERRORS)

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/doc-order.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/doc-order.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/doc-order.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/doc-order.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,7 @@
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<h2 class="portlet-section-header">$MESSAGES.getString('doc.order')</h2>
+
+<a href="$forward.getView('folder-view')">$MESSAGES.getString('folder.details')</a>
+
+#ErrorMessages($ERRORS)

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/folder-details.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/folder-details.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/folder-details.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/folder-details.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,34 @@
+<script language="javascript" src="${request.contextPath}/javascript/pam.js"></script>
+
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+#if ($!folderBean.isNew())
+
+#else
+<h2 class="portlet-section-header">$MESSAGES.getString('folder.details')</h2>
+
+<form action="$renderResponse.createActionURL()" method="post">
+<input type='hidden' name='portlet.action' value='processSaveFolderAction'/>
+<table>
+	#readField('Name' "$!folderBean.Path" "40" 'path' $MESSAGES $ERRORS)
+    #formField('Title' "$!folderBean.Title" "40" 'title' $MESSAGES $ERRORS)
+    #formField('ShortTitle' "$!folderBean.ShortTitle" "40" 'shortTitle' $MESSAGES $ERRORS)
+    #formField('DefaultPage' "$!folderBean.DefaultPage" "40" 'defaultPage' $MESSAGES $ERRORS)
+</table>
+<br/>
+<input type="submit" name="Save" value="$MESSAGES.getString('save')" />
+<!-- <a href="#" onClick='return checkSubmit("Remove","${pa.name}")'>$MESSAGES.getString('remove')</a> -->
+#set ($sub = $forward.getView('add-subfolder'))
+$sub.setParameter('parent', $!folderBean.Key)
+#set ($page = $forward.getView('add-page'))
+$page.setParameter('parent', $!folderBean.Key)
+<a href="$sub">[$MESSAGES.getString('add.subfolder')]</a>
+<a href="$page">[$MESSAGES.getString('add.page')]</a>
+<a href="$forward.getView('add-link')">[$MESSAGES.getString('add.link')]</a>
+<a href="$forward.getView('doc-order')">[$MESSAGES.getString('doc.order')]</a>
+<a href="$forward.getView('menus')">[$MESSAGES.getString('menus')]</a>
+<a href="$forward.getView('security')">[$MESSAGES.getString('security')]</a>
+</form>
+
+#ErrorMessages($ERRORS)
+#end
\ No newline at end of file

Added: portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/menus.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/menus.vm?rev=348854&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/menus.vm (added)
+++ portals/jetspeed-2/trunk/applications/j2-admin/src/webapp/WEB-INF/view/site/menus.vm Thu Nov 24 18:24:19 2005
@@ -0,0 +1,7 @@
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<h2 class="portlet-section-header">$MESSAGES.getString('menus')</h2>
+
+<a href="$forward.getView('folder-view')">$MESSAGES.getString('folder.details')</a>
+
+#ErrorMessages($ERRORS)



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org


Mime
View raw message