You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2005/09/01 11:10:38 UTC

svn commit: r265679 [11/12] - in /cocoon/blocks/portal-sample/trunk: ./ WEB-INF/ WEB-INF/xconf/ conf/ java/ java/org/ java/org/apache/ java/org/apache/cocoon/ java/org/apache/cocoon/portal/ java/org/apache/cocoon/portal/coplets/ java/org/apache/cocoon/...

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/default/tool.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/default/tool.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/default/tool.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/default/tool.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,22 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+	<tool name="Default" id="default">
+	<i18n>
+		<catalogue id="default" name="default"/>
+		<catalogue id="FormsMessages" name="FormsMessages"/>
+	</i18n>
+</tool>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/default/tool.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/default/tool.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/flow.js
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/flow.js?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/flow.js (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/flow.js Thu Sep  1 02:08:10 2005
@@ -0,0 +1,147 @@
+/*
+ * Copyright 1999-2005 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.
+ */
+cocoon.load("resource://org/apache/cocoon/portal/tools/ptm.js");
+
+/* component authenticationManager contains the data from the file 'sunrise-user.xml' */
+
+function getContext ()
+{
+	var contextMan = 
+	cocoon.getComponent(Packages.org.apache.cocoon.webapps.session.ContextManager.ROLE);
+	var context = contextMan.getContext("authentication");
+
+	var authenticationManager = cocoon.getComponent("org.apache.cocoon.webapps.authentication.AuthenticationManager");
+	/* get current user data */
+	var context = authenticationManager.getState().getHandler().getContext();
+
+	var grabber = new Packages.org.apache.cocoon.portal.tools.userManagement.ContextGrabber();
+	var obj = grabber.grab(context);
+	
+	var pic = obj.getContextItem ("picture");
+	if (pic != null)
+		obj.setPicture (pic);
+	
+	cocoon.releaseComponent(contextMan);
+	cocoon.releaseComponent(authenticationManager);
+	return obj;
+}
+
+/* public function: print the data of an user
+ */
+function showUser() {
+	
+	var obj = getContext ();
+	
+	/* show form */
+	var form = new Form("cocoon:/page/model/userData?mode=readonly");
+	form.createBinding("cocoon:/page/binding/userData?mode=readonly");
+    form.load(obj);
+    form.showForm("page/form/userData?mode=readonly");
+}
+
+/* public function: print and edit the data of an user
+ */
+function editUser() {
+
+	var obj = getContext ();
+	
+	/* show form */
+	var form = new Form("cocoon:/page/model/userData?mode=edit");
+	form.createBinding("cocoon:/page/binding/userData?mode=edit");
+    form.load(obj);
+    form.showForm("page/form/userData?mode=edit");
+}
+
+/* public function: you can create a new user
+ */
+function addUser() {
+	
+	var authenticationManager = cocoon.getComponent("org.apache.cocoon.webapps.authentication.AuthenticationManager");
+	
+	/* get current user data */
+	var obj = new Packages.org.apache.cocoon.portal.tools.userManagement.UserBean();
+	var context = authenticationManager.getState().getHandler().getContext();
+	createDefaultKeys (context.getXML("/authentication/"),0,obj);
+	
+	var mf = obj.getContext();
+	for(var it = mf.iterator();it.hasNext();) {
+		var e = it.next()
+		print(e.getValue());
+	}
+	
+	/* show form */
+	var form = new Form("cocoon:/page/model/userData?mode=add");
+	form.createBinding("cocoon:/page/binding/userData?mode=add");
+    form.load(obj);
+    form.showForm("page/form/userData?mode=add");
+
+    cocoon.releaseComponent(authenticationManager);
+}
+
+/* internal function: creating an empty context of user data from the authenticationManager
+ */
+function createDefaultKeys (node,lev, obj) {
+	
+	node = node.firstChild;
+	while (node != null)
+	{
+		if (node.nodeName == '#text')
+		{
+			createDefaultKeys(node,lev+1,obj);
+		}
+		else if (node.firstChild == null) 
+		{
+			obj.addContext (node.nodeName,"");
+		}
+		else if (node.firstChild.nodeValue == null)
+		{
+			createDefaultKeys(node,lev+1,obj);
+		}
+		else
+		{
+			obj.addContext (node.nodeName,"");
+		}
+		node = node.nextSibling;
+	}
+}
+
+/* internal function: creates the context of the user data from the authenticationManager
+ */
+function printRek (node,lev, obj)
+{
+	node = node.firstChild;
+	while (node != null)
+	{
+		if (node.nodeName == '#text')
+		{
+			printRek(node,lev+1,obj);
+		}
+		else if (node.firstChild == null) 
+		{
+			obj.addContext (node.nodeName,"");
+		}
+		else if (node.firstChild.nodeValue == null)
+		{
+			printRek(node,lev+1,obj);
+		}
+		else
+		{
+			obj.addContext (node.nodeName,node.firstChild.nodeValue);
+		}
+		node = node.nextSibling;
+	}
+
+}
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/flow.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/flow.js
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_binding.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_binding.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_binding.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_binding.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,36 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<fb:context xmlns:fb="http://apache.org/cocoon/forms/1.0#binding" 
+			xmlns:fd="http://apache.org/cocoon/forms/1.0#definition" 
+			path="/">
+	
+	<fb:value id="picture" path="picture"/>
+	
+	<fb:repeater id="context" parent-path="." row-path="context">
+		
+		<fb:identity>
+			<fb:value id="id" path="@id"/>
+		</fb:identity>
+		
+		<fb:on-bind>
+			<fb:value id="key" path="key"/>
+			<fb:value id="value" path="value"/>
+		</fb:on-bind>
+		
+	</fb:repeater>
+	
+</fb:context>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_binding.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_binding.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_add.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_add.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_add.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_add.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,52 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<fd:form xmlns:fd="http://apache.org/cocoon/forms/1.0#definition">
+	
+	<fd:widgets>
+		
+		<fd:upload id="pic_file">
+			<fd:label></fd:label>
+		</fd:upload>
+		
+		<fd:output id="picture">
+			<fd:datatype base="string"/>
+		</fd:output>
+		
+		<fd:repeater id="context">
+			  <fd:label>Context</fd:label>
+			  
+			  <fd:widgets>
+				
+				<fd:output id="id">
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+				<fd:output id="key">
+					<fd:label>Key</fd:label>
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+				<fd:field id="value">
+					<fd:label>Value</fd:label>
+					<fd:datatype base="string"/>
+				</fd:field>
+				
+			</fd:widgets>
+		</fd:repeater>
+		
+	</fd:widgets>
+</fd:form>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_add.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_add.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_edit.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_edit.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_edit.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_edit.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<fd:form xmlns:fd="http://apache.org/cocoon/forms/1.0#definition">
+
+	<fd:widgets>
+	
+		<!-- dummy for add user -->
+		<fd:output id="pic_file">
+			<fd:datatype base="string"/>
+		</fd:output>
+	
+		<fd:output id="picture">
+			<fd:datatype base="string"/>
+		</fd:output>
+	
+		<fd:repeater id="context">
+			  <fd:label>Context</fd:label>
+			  
+			  <fd:widgets>
+				
+				<fd:output id="id">
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+				<fd:output id="key">
+					<fd:label>Key</fd:label>
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+				<fd:field id="value">
+					<fd:label>Value</fd:label>
+					<fd:datatype base="string"/>
+				</fd:field>
+				
+			</fd:widgets>
+		</fd:repeater>
+		
+	</fd:widgets>
+</fd:form>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_edit.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_edit.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_readonly.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_readonly.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_readonly.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_readonly.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<fd:form xmlns:fd="http://apache.org/cocoon/forms/1.0#definition">
+
+	<fd:widgets>
+		
+		<!-- dummy for add user -->
+		<fd:output id="pic_file">
+			<fd:datatype base="string"/>
+		</fd:output>
+		
+		<fd:output id="picture">
+			<fd:datatype base="string"/>
+		</fd:output>
+	
+		<fd:repeater id="context">
+			  <fd:label>Context</fd:label>
+			  
+			  <fd:widgets>
+				
+				<fd:output id="id">
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+				<fd:output id="key">
+					<fd:label>Key</fd:label>
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+				<fd:output id="value">
+					<fd:label>Value</fd:label>
+					<fd:datatype base="string"/>
+				</fd:output>
+				
+			</fd:widgets>
+		</fd:repeater>
+		
+	</fd:widgets>
+</fd:form>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_readonly.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_form_readonly.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_style.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_style.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_style.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_style.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<abstractFormStyle>
+	<items name="userManagement.userData_basicInformation">
+		<item>firstname</item>
+		<item>lastname</item>
+		<item>title</item>
+		<item>name</item>
+		<item>role</item>
+		<item>language</item>
+	</items>
+	<items name="userManagement.userData_contact">
+		<item>email</item>
+		<item>phoneHome</item>
+		<item>mobileHome</item>
+		<item>phoneWork</item>
+		<item>addressStreet</item>
+		<item>addressTown</item>
+	</items>
+</abstractFormStyle>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_style.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_style.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_template.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_template.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_template.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_template.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,77 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<div style="padding-left:10px;" 
+	xmlns:i18n="http://apache.org/cocoon/i18n/2.1"
+	xmlns:ft="http://apache.org/cocoon/forms/1.0#template"
+	xmlns:fi="http://apache.org/cocoon/forms/1.0#instance">
+	
+	<ft:form-template action="tools/plugins/userManagement/#{$continuation/id}.continue" method="POST">
+		
+		<p><b><i18n:text i18n:key="userManagement.userData_headline"/>:</b></p>
+		
+		<table width="100%">
+			<tr>
+			
+				<td valign="top"  width="200">
+					<table width="100%">
+						<tr>
+							<td>
+								<formularImage>
+									<src><ft:widget id="picture"/></src>
+								</formularImage>
+								<ft:widget id="pic_file"/>
+							</td>
+						</tr>
+					</table>
+				</td>
+				
+				<td>
+					&#160;
+				</td>
+				
+				<td valign="top" >
+					
+					<table width="100%">
+						<col width="200px"/>
+						<col/>
+						
+						<abstractFormular>
+							<ft:repeater-widget id="context">
+								<tr>
+									<td style="border-bottom-style:dotted;border-bottom-color:#cccccc;border-bottom-width:1px;"><ft:widget id="key"/></td>
+									<td style="border-bottom-style:dotted;border-bottom-color:#cccccc;border-bottom-width:1px;">
+										<ft:widget id="value">
+											<fi:styling style="width:100%"/>
+										</ft:widget>
+									</td>
+								</tr>
+							</ft:repeater-widget>
+						</abstractFormular>
+						
+					</table>
+					<br/>
+				</td>
+			</tr>
+			<tr>
+				<td colspan="2"></td>
+				<td>
+					<input type="submit" value="userManagement.userData_save" i18n:attr="value" onClick="alert ('Sorry, not implemented in the portal yet.'); return false;"/>
+				</td>
+			</tr>
+		</table>
+	</ft:form-template>
+</div>

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_template.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/form/userData_template.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<catalogue>
+	<message key="userManagement.title">User management</message>
+	
+	<message key="userManagement.showUser">Show user</message>
+	<message key="userManagement.editUser">Edit user</message>
+	<message key="userManagement.addUser">Add user</message>
+	
+	<message key="userManagement.userData_headline">User data</message>
+	<message key="userManagement.userData_basicInformation">Basic informations</message>
+	<message key="userManagement.userData_contact">Contact</message>
+	
+	<message key="userManagement.userData_lastname">lastname</message>
+	<message key="userManagement.userData_firstname">firstname</message>
+	<message key="userManagement.userData_name">userID</message>
+	<message key="userManagement.userData_title">titel</message>
+	<message key="userManagement.userData_role">current role</message>
+	<message key="userManagement.userData_language">selected language</message>
+	<message key="userManagement.userData_email">email</message>
+	<message key="userManagement.userData_phoneHome">phone (home)</message>
+	<message key="userManagement.userData_mobileHome">mobile (home)</message>
+	<message key="userManagement.userData_phoneWork">phone (work)</message>
+	<message key="userManagement.userData_addressStreet">street</message>
+	<message key="userManagement.userData_addressTown">town</message>
+	
+	<message key="userManagement.userData_save">save</message>
+	<message key="userManagement.userData_nopicture">No picture available</message>
+
+</catalogue>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_de.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_de.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_de.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_de.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<catalogue>
+	
+	<message key="userManagement.title">Benutzer-Verwaltung</message>
+	
+	<message key="userManagement.showUser">Benutzerdaten anzeigen</message>
+	<message key="userManagement.editUser">Benutzerdaten editieren</message>
+	<message key="userManagement.addUser">Benutzer hinzuf&#252;gen</message>
+	
+	<message key="userManagement.userData_headline">Benutzerdaten</message>
+	<message key="userManagement.userData_basicInformation">Basis-Informationen</message>
+	<message key="userManagement.userData_contact">Kontaktdaten</message>
+	
+	<message key="userManagement.userData_lastname">Nachname</message>
+	<message key="userManagement.userData_firstname">Vorname</message>
+	<message key="userManagement.userData_name">UserID</message>
+	<message key="userManagement.userData_title">Titel</message>
+	<message key="userManagement.userData_role">derzeitige Rolle</message>
+	<message key="userManagement.userData_language">bevorzugte Spracheinstellung</message>
+	<message key="userManagement.userData_email">eMail</message>
+	<message key="userManagement.userData_phoneHome">Telefon (privat)</message>
+	<message key="userManagement.userData_mobileHome">Handy (privat)</message>
+	<message key="userManagement.userData_phoneWork">Telefon (Arbeit)</message>
+	<message key="userManagement.userData_addressStreet">Stra&#223;e</message>
+	<message key="userManagement.userData_addressTown">PLZ, Stadt</message>
+	
+	<message key="userManagement.userData_save">speichern</message>	
+	<message key="userManagement.userData_nopicture">Kein Foto vorhanden</message>	
+</catalogue>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_de.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_de.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_en.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_en.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_en.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_en.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<catalogue>
+	<message key="userManagement.title">User management</message>
+	
+	<message key="userManagement.showUser">Show user</message>
+	<message key="userManagement.editUser">Edit user</message>
+	<message key="userManagement.addUser">Add user</message>
+	
+	<message key="userManagement.userData_headline">User data</message>
+	<message key="userManagement.userData_basicInformation">Basic informations</message>
+	<message key="userManagement.userData_contact">Contact</message>
+	
+	<message key="userManagement.userData_lastname">lastname</message>
+	<message key="userManagement.userData_firstname">firstname</message>
+	<message key="userManagement.userData_name">userID</message>
+	<message key="userManagement.userData_title">titel</message>
+	<message key="userManagement.userData_role">current role</message>
+	<message key="userManagement.userData_language">selected language</message>
+	<message key="userManagement.userData_email">email</message>
+	<message key="userManagement.userData_phoneHome">phone (home)</message>
+	<message key="userManagement.userData_mobileHome">mobile (home)</message>
+	<message key="userManagement.userData_phoneWork">phone (work)</message>
+	<message key="userManagement.userData_addressStreet">street</message>
+	<message key="userManagement.userData_addressTown">town</message>
+	
+	<message key="userManagement.userData_save">save</message>
+	<message key="userManagement.userData_nopicture">No picture available</message>
+
+</catalogue>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_en.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/i18n/userManagement_en.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/sitemap.xmap
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/sitemap.xmap?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/sitemap.xmap (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/sitemap.xmap Thu Sep  1 02:08:10 2005
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
+	
+	<!-- components -->
+	<map:components>
+		<map:transformers default="xalan">
+		</map:transformers>
+	</map:components>
+	
+	<!-- flow script -->
+	<map:flow language="javascript">
+		<map:script src="flow.js"/>
+	</map:flow>
+	
+	<map:pipelines>
+
+		<!-- accessible pipeline -->
+		<map:pipeline>
+			
+			<!-- necessary standard matcher -->
+			<map:match pattern="main">
+				<map:generate src="tool.xml"/>
+				<map:serialize type="xml"/>
+			</map:match>
+     		
+     	<map:match pattern="i18n/**">
+			<map:generate src="{1}" type="i18nc"/>
+			<map:serialize type="xml"/>
+		</map:match>
+     		
+			<map:match pattern="*">
+				<map:call function="{1}">
+					<map:parameter name="user" value="{ID}"/>
+				</map:call>
+			</map:match>
+			
+		
+			<!-- matcher for this plugin -->
+			
+			<map:match pattern="page/form/*">
+				<map:generate src="form/{1}_template.xml"/>
+				<map:transform type="forms" />
+				<map:transform type="tool-layout">
+					<map:parameter name="selected" value="userManagement" />
+				</map:transform>
+				<map:transform src="{portal-skin:skin.basepath}/styles/forms-styling.xsl" />
+				<map:transform src="stylesheets/convertAbstractForm.xsl">
+					<map:parameter name="mode" value="{request-param:mode}"/>
+				</map:transform>
+				<map:transform type="i18n" />
+				<map:transform src="{portal-skin:skin.basepath}/styles/tab.xsl" />
+				<map:transform src="../../skins/{portal-skin:skin}/styles/function.xsl" />
+				<map:transform src="{portal-skin:skin.basepath}/styles/portal-page.xsl">
+					<map:parameter name="base" value="{portalpath:relative}"/>
+					<map:parameter name="title" value="{global:toolsTitle}"/>
+				</map:transform>
+				<map:serialize type="html" />
+			</map:match>
+			
+			<map:match pattern="page/model/*">
+				<map:generate src="form/{1}_form_{request-param:mode}.xml"/>
+				<map:serialize type="xml"/>
+			</map:match>
+			
+			<map:match pattern="page/binding/*">
+				<map:generate src="form/{1}_binding.xml"/>
+				<map:serialize type="xml"/>
+			</map:match>
+			
+			<map:match pattern="page/abstractForm">
+				<map:generate src="form/userData_style.xml"/>
+				<map:serialize type="xml"/>
+			</map:match>
+			
+		</map:pipeline>
+		
+	</map:pipelines>
+	
+</map:sitemap>
+
+<!-- end of file -->

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/sitemap.xmap
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/sitemap.xmap
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/stylesheets/convertAbstractForm.xsl
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/stylesheets/convertAbstractForm.xsl?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/stylesheets/convertAbstractForm.xsl (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/stylesheets/convertAbstractForm.xsl Thu Sep  1 02:08:10 2005
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<xsl:stylesheet version="1.0" 
+	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+	xmlns:i18n="http://apache.org/cocoon/i18n/2.1">
+
+<xsl:param name="mode"/>
+
+<xsl:template match="/">
+	<xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template match="formularImage">
+	<xsl:choose>
+		<xsl:when test="string-length(src/.) &gt; 0">
+			<img>
+				<xsl:attribute name="src">userImages/<xsl:value-of select="src/."/></xsl:attribute>
+			</img>
+		</xsl:when>
+		<xsl:otherwise>
+			<p style="font-size:9px;" align="center"><i18n:text i18n:key="userManagement.userData_nopicture"/></p>
+		</xsl:otherwise>
+	</xsl:choose>
+</xsl:template>
+
+<xsl:template match="input">
+	<xsl:if test="not (@type = 'submit' and $mode = 'readonly')">
+		<xsl:copy>
+			<xsl:apply-templates select="@*|node()" />
+		</xsl:copy>
+	</xsl:if>
+</xsl:template>
+
+<xsl:template match="abstractFormular">
+	
+	<xsl:variable name="abstractForm" select="document('cocoon:/page/abstractForm')"/>
+	<xsl:variable name="currentNode" select="current()"/>
+	
+	<xsl:for-each select="$abstractForm/abstractFormStyle/items">
+		<tr>
+			<td colspan="2" style="background-color:#cccccc; font-size:13px; color:#ffffff">
+				<b>
+					<i18n:text>
+						<xsl:attribute name="i18n:key"><xsl:value-of select="@name"/></xsl:attribute>
+					</i18n:text>
+				</b>
+			</td>
+		</tr>
+		<xsl:for-each select="item">
+			<xsl:apply-templates mode="getData">
+				<xsl:with-param name="item"><xsl:value-of select="."/></xsl:with-param>
+				<xsl:with-param name="currentNode" select="$currentNode"/>
+			</xsl:apply-templates>
+		</xsl:for-each>
+		<tr><td colspan="2">&#160;</td></tr>
+	</xsl:for-each>
+</xsl:template>
+
+<xsl:template match="@*|node()" mode="getData">
+	<xsl:param name="item"/>
+	<xsl:param name="currentNode"/>
+	
+
+
+	<xsl:for-each select="$currentNode/tr">
+		<xsl:if test="td[1] = $item">
+			<tr>
+				<td style="border-bottom-style:dotted;border-bottom-color:#cccccc;border-bottom-width:1px;">
+					<i18n:text>
+						<xsl:attribute name="i18n:key">userManagement.userData_<xsl:value-of select="$item"/></xsl:attribute>
+					</i18n:text>:
+				</td>
+				
+				<xsl:copy-of select="td[2]"/>
+			</tr>
+		</xsl:if>
+	</xsl:for-each>
+
+</xsl:template>
+
+<xsl:template match="@*|node()" priority="-1">
+	<xsl:copy>
+		<xsl:apply-templates select="@*|node()" />
+	</xsl:copy>
+</xsl:template>
+
+
+</xsl:stylesheet>

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/stylesheets/convertAbstractForm.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/stylesheets/convertAbstractForm.xsl
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/tool.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/tool.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/tool.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/tool.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<tool name="userManagement.title" id="userManagement">
+	<functions>
+		<function name="userManagement.showUser" id="userMangementShow" pipeline="showUser"/>
+		<function name="userManagement.editUser" id="userMangementEdit" pipeline="editUser"/>
+		<function name="userManagement.addUser" id="userMangementAdd" pipeline="addUser"/>
+	</functions>
+	<i18n>
+		<catalogue id="userManagement" name="userManagement"/>
+	</i18n>
+</tool>
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/tool.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/tool.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/userImages/1.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/userImages/1.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/plugins/userManagement/userImages/1.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/portal-bottom.xml
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/portal-bottom.xml?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/portal-bottom.xml (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/portal-bottom.xml Thu Sep  1 02:08:10 2005
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Copyright 1999-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.
+-->
+<document> 
+  <header> 
+	 <title>Further Information</title>
+	 <version>0.1</version> 
+	 <type>Overview document</type> 
+  </header> 
+  <body> 
+	 <s1 title="Further Information"> 
+		<p>For further information have a look at the Cocoon documentation
+              and at the other portal demos available using the tab above.</p>
+   </s1> 
+
+  </body>
+</document>

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/portal-bottom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/portal-bottom.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/sitemap.xmap
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/sitemap.xmap?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/sitemap.xmap (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/sitemap.xmap Thu Sep  1 02:08:10 2005
@@ -0,0 +1,126 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
+  <map:components>
+    <map:transformers default="xslt">
+      <map:transformer name="tool-layout"
+                       src="org.apache.cocoon.portal.tools.transformation.PortalToolsLayoutTransformer" />
+	  <map:transformer name="i18n" 
+	                   src="org.apache.cocoon.portal.tools.transformation.PortalToolsI18nTransformer">
+        <catalogues default="portalTools" new="no">
+          <catalogue id="portalTools" name="portalTools" location="cocoon:/i18n"/>
+        </catalogues>
+        <cache-at-startup>true</cache-at-startup>
+      </map:transformer>
+    </map:transformers>
+    <map:generators default="file">
+	  <map:generator name="i18nc" src="org.apache.cocoon.portal.tools.generation.I18nCatalogueGenerator"/>
+    </map:generators>
+    <map:actions>
+    	<map:action name="check-access-action" src="org.apache.cocoon.portal.tools.acting.CheckAccessAction"/>
+    </map:actions>
+  </map:components>
+
+<!-- flow script -->
+  <map:flow language="javascript">
+    <map:script src="flow.js" />
+  </map:flow>
+
+  <map:pipelines>
+
+<!-- select skin to use -->
+    <map:component-configurations>
+      <map:global-variables>
+      	
+      </map:global-variables>
+
+    </map:component-configurations>
+
+<!-- Now the accessible pipelines -->
+    <map:pipeline>
+		
+		<map:match pattern="">
+			<map:redirect-to uri="tools"/>
+		</map:match>
+
+		<map:match pattern="i18n/**">
+			<map:generate src="{1}" type="i18nc"/>
+			<map:serialize type="xml"/>
+		</map:match>
+		
+      <map:match pattern="*.continue">
+        <map:call continuation="{1}" />
+      </map:match>
+
+      <map:match pattern="*.jx">
+        <map:generate type="jx" src="main/{1}.jx">
+          <map:parameter name="lenient-xpath" value="false" />
+        </map:generate>
+        <map:transform type="tool-layout"></map:transform>
+        <map:transform type="i18n"/>
+        <map:transform src="{portal-skin:skin.basepath}/styles/tab.xsl" />
+        <map:transform src="skins/{portal-skin:skin}/styles/function.xsl" />
+        <map:transform src="{portal-skin:skin.basepath}/styles/portal-page.xsl">
+					<map:parameter name="base" value="{portalpath:relative}"/>
+					<map:parameter name="title" value="{global:toolsTitle}"/>
+        </map:transform>
+        <map:serialize type="html"></map:serialize>
+      </map:match>
+
+      <map:match pattern="*/*.jx">
+        <map:generate type="jx" src="main/{2}.jx">
+          <map:parameter name="lenient-xpath" value="false" />
+        </map:generate>
+        <map:transform type="tool-layout">
+          <map:parameter name="selected" value="{1}" />
+        </map:transform>
+        <map:transform type="i18n"></map:transform>
+        <map:transform src="{portal-skin:skin.basepath}/styles/tab.xsl" />
+        <map:transform src="skins/{portal-skin:skin}/styles/function.xsl" />
+        <map:transform src="{portal-skin:skin.basepath}/styles/portal-page.xsl">
+					<map:parameter name="base" value="{portalpath:relative}"/>
+					<map:parameter name="title" value="{global:toolsTitle}"/>
+        </map:transform>
+        <map:serialize type="html"></map:serialize>
+      </map:match>
+
+      <map:match pattern="*">
+        <map:call function="{1}"></map:call>
+      </map:match>
+
+      <map:match pattern="functions/*">
+        <map:call function="functions">
+          <map:parameter name="name" value="{1}" />
+        </map:call>
+      </map:match>
+
+<!-- mount sub-sitemaps -->
+      <map:match pattern="plugins/*/**">
+     	 <map:act type="cowarp-is-logged-in">
+            <map:parameter name="application" value="portal"/> 
+	      	<map:act type="check-access-action">
+	    		<map:parameter name="url" value="{../1}/{../2}"/>
+      		    
+      		    <map:mount uri-prefix="plugins/{../../1}" check-reload="yes" src="plugins/{../../1}/sitemap.xmap"/>
+			</map:act>
+		</map:act>
+      </map:match>
+
+    </map:pipeline>
+  </map:pipelines>
+</map:sitemap>
+<!-- end of file -->
\ No newline at end of file

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/sitemap.xmap
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/sitemap.xmap
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addCol.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addCol.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addCol.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addCoplet.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addCoplet.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addCoplet.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addRow.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addRow.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addRow.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addTab.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addTab.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/addTab.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/del.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/del.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/del.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/down.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/down.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/down.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/drillDown.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/drillDown.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/drillDown.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/edit.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/edit.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/edit.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/goUp.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/goUp.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/goUp.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/left.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/left.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/left.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/right.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/right.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/right.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/tabs.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/tabs.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/tabs.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/tools.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/tools.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/tools.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/up.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/up.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/images/up.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/function.xsl
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/function.xsl?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/function.xsl (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/function.xsl Thu Sep  1 02:08:10 2005
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<xsl:stylesheet version="1.0" 
+                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+
+<!-- Process a tab  -->
+<xsl:template match="tool-functions">
+				<table style="height: 1.8em" border="0" cellpadding="0" cellspacing="0" width="100%" xmlns:i18n="http://apache.org/cocoon/i18n/2.1">
+					<tr>
+						<td valign="middle" bgcolor="#cccccc" >
+							<div class="tab">
+								<xsl:for-each select="function">
+								 | <a href="{@parameter}" style=" font-size : 85%; border: 0; color: #000000;">
+									<xsl:value-of select="@name"/>
+								</a>
+								</xsl:for-each>
+							</div>
+						</td>
+					</tr>
+				</table>
+
+</xsl:template>
+
+<!-- Copy all and apply templates -->
+
+<xsl:template match="@*|node()">
+  <xsl:copy>
+    <xsl:apply-templates select="@*|node()" />
+  </xsl:copy>
+</xsl:template>
+
+</xsl:stylesheet>

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/function.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/function.xsl
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/showTab.xsl
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/showTab.xsl?rev=265679&view=auto
==============================================================================
--- cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/showTab.xsl (added)
+++ cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/showTab.xsl Thu Sep  1 02:08:10 2005
@@ -0,0 +1,568 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 1999-2005 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.
+-->
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+								xmlns:i18n="http://apache.org/cocoon/i18n/2.1">
+
+	<!-- id of the current item -->
+	<xsl:param name="current"/>
+	<xsl:param name="currentSkin"/>
+	
+	<xsl:variable name="skin">
+		<xsl:value-of select="$currentSkin"/>
+		<!--xsl:call-template name="getSkin">
+			<xsl:with-param name="skin4search"><xsl:value-of select="substring($currentSkin,0,string-length($currentSkin))"/></xsl:with-param>
+		</xsl:call-template-->
+	</xsl:variable>
+	
+	<xsl:template name="getSkin">
+		<xsl:param name="skin4search"/>
+		
+		<xsl:choose>
+			<xsl:when test="contains($skin4search,'/')">
+				<xsl:call-template name="getSkin">
+					<xsl:with-param name="skin4search"><xsl:value-of select="substring-after($skin4search,'/')"/></xsl:with-param>
+				</xsl:call-template>
+			</xsl:when>
+			<xsl:otherwise>
+				<xsl:value-of select="$skin4search"/>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
+	
+	
+	<!-- root -->
+	<xsl:template match="/">
+		<div>
+			<xsl:apply-templates/>
+			<br/>
+		<table>
+			<tr>
+				<td><i><i18n:text key="copletManagement.actions.title"/>:</i></td>
+				<td></td>				
+				<td></td>
+				<td></td>
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/left.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveLeft"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/right.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveRight"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/up.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveUp"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/down.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveDown"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/del.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.removeItem"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addTab.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addTab"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addCol.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addCol"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addRow.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addRow"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addCoplet.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addCoplet"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/drillDown.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.drillDown"/></td>				
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.goUp"/></td>				
+				<td></td>
+				<td></td>
+			</tr>
+		</table>		</div>
+	</xsl:template>
+	
+	<xsl:template match="named-item">
+		<table style="border-width:1px; border-style:solid; border-color:#292c63; spacing:3px; padding:5px;" border="0" cellpadding="3" cellspacing="0" bordercolor="#292c63">
+		  <tr>
+		    <td bgcolor="#292c63">
+				<div align="left">
+					<xsl:if test="@parent">
+						<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="@parent"/></xsl:attribute>
+							<img border="0">
+								<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+							</img>
+						</a>
+					</xsl:if>
+					<font color="#ffffff"><i18n:text key="copletManagement.items.tab"/>: <xsl:value-of select="@name"/></font>
+				</div>
+			</td>
+		    <td bgcolor="#292c63">
+				<div align="right">
+					<xsl:if test="count(child::*) = 0">
+						<xsl:call-template name="drawToolActions">
+							<xsl:with-param name="id"><xsl:value-of select="$current"/></xsl:with-param>
+							<xsl:with-param name="actionitem"><xsl:value-of select="@id"/></xsl:with-param>
+							<xsl:with-param name="forceAddButtons">true</xsl:with-param>
+							<xsl:with-param name="forceAddTabButton">true</xsl:with-param>
+						</xsl:call-template>
+					</xsl:if>
+				</div>
+			</td>
+		  </tr>
+		  <tr>
+		    <td colspan="2">
+				<xsl:apply-templates/>
+			</td>
+		  </tr>
+		</table>
+	</xsl:template>
+	
+	<xsl:template match="composite-layout">
+		
+		<!-- column -->
+		<xsl:if test="@name = 'column'">
+			<table style="border-width:1px; border-style:solid; border-color:#292c63; spacing:3px; padding:5px;" border="0" cellpadding="3" cellspacing="0" bordercolor="#386c84">
+			  <tr>
+				<td bgcolor="#386c84">
+					<div align="left">
+						<xsl:if test="@parent">
+							<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="@parent"/></xsl:attribute>
+								<img border="0">
+									<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+								</img>
+							</a>
+						</xsl:if>
+						<font color="#ffffff"><i18n:text key="copletManagement.items.col"/></font>
+					</div>
+				</td>
+				<td bgcolor="#386c84">
+					<div align="right">
+						<xsl:call-template name="drawToolActions">
+							<xsl:with-param name="id"><xsl:value-of select="$current"/></xsl:with-param>
+							<xsl:with-param name="actionitem"><xsl:value-of select="@id"/></xsl:with-param>
+							<xsl:with-param name="forceDeleteButton">true</xsl:with-param>
+							<xsl:with-param name="forceAddButtons">true</xsl:with-param>
+							<xsl:with-param name="forceAddTabButton">true</xsl:with-param>
+							<xsl:with-param name="forceDrillDownButton">true</xsl:with-param>
+						</xsl:call-template>
+					</div>
+				</td>
+			  </tr>
+			  <tr>
+				<td colspan="2">
+					<table>
+						<tr>
+							<xsl:for-each select="item">
+								<td>
+									<xsl:apply-templates/> 
+								</td>
+							</xsl:for-each>
+						</tr>
+					</table>
+				</td>
+			  </tr>
+			</table>	
+		</xsl:if>
+		
+		<!-- row -->
+		<xsl:if test="@name = 'row'">
+			<table style="border-width:1px; border-style:solid; border-color:#292c63; spacing:3px; padding:5px;" border="0" cellpadding="3" cellspacing="0" bordercolor="#295163">
+			  <tr>
+				<td bgcolor="#295163">
+					<div align="left">
+						<xsl:if test="@parent">
+							<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="@parent"/></xsl:attribute>
+								<img border="0">
+									<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+								</img>
+							</a>
+						</xsl:if>
+						<font color="#ffffff"><i18n:text key="copletManagement.items.row"/></font>
+					</div>
+				</td>
+				<td bgcolor="#295163">
+					<div align="right">
+						<xsl:call-template name="drawToolActions">
+							<xsl:with-param name="id"><xsl:value-of select="$current"/></xsl:with-param>
+							<xsl:with-param name="actionitem"><xsl:value-of select="@id"/></xsl:with-param>
+							<xsl:with-param name="forceDeleteButton">true</xsl:with-param>
+							<xsl:with-param name="forceAddButtons">true</xsl:with-param>
+							<xsl:with-param name="forceAddTabButton">true</xsl:with-param>
+							<xsl:with-param name="forceDrillDownButton">true</xsl:with-param>
+						</xsl:call-template>
+					</div>
+				</td>
+			  </tr>
+			  <tr>
+				<td colspan="2">
+					<xsl:for-each select="item">
+						<xsl:apply-templates/> 
+					</xsl:for-each>
+				</td>
+			  </tr>
+			</table>
+		</xsl:if>
+		
+		<!-- tab -->
+		<xsl:if test="contains(@name,'tab')">
+			<table style="border-width:1px; border-style:solid; border-color:#292c63; spacing:3px; padding:5px;" border="0" cellpadding="3" cellspacing="0" bordercolor="#3a3fa6">
+			  <tr>
+				<td bgcolor="#3a3fa6">
+					<div align="left">
+						<xsl:if test="@parent">
+							<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="@parent"/></xsl:attribute>
+								<img border="0">
+									<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+								</img>
+							</a>
+						</xsl:if>
+						<font color="#ffffff"><i18n:text key="copletManagement.items.tabFolder"/></font>
+					</div>
+				</td>
+				<td bgcolor="#3a3fa6">
+					<div align="right">
+						<xsl:call-template name="drawToolActions">
+							<xsl:with-param name="id"><xsl:value-of select="$current"/></xsl:with-param>
+							<xsl:with-param name="actionitem"><xsl:value-of select="@id"/></xsl:with-param>
+							<xsl:with-param name="forceDeleteButton">false</xsl:with-param>
+							<xsl:with-param name="forceAddTabButton">true</xsl:with-param>
+						</xsl:call-template>
+					</div>
+				</td>
+			  </tr>
+			  <tr>
+				<td colspan="2">
+					<table>
+						<tr>
+							<xsl:for-each select="named-item">
+								<td>
+									<table style="border-width:1px; border-style:solid; border-color:#292c63; spacing:3px; padding:5px;" border="0" cellpadding="3" cellspacing="0" bordercolor="#292c63">
+									  <tr>
+										<td bgcolor="#292c63">
+											<div align="left">
+												<xsl:if test="@parent">
+													<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="@parent"/></xsl:attribute>
+														<img border="0">
+															<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+														</img>
+													</a>
+												</xsl:if>	
+												<font color="#ffffff"><i18n:text key="copletManagement.items.tab"/>: <xsl:value-of select="@name"/></font>
+											</div>
+										</td>
+										<td bgcolor="#292c63">
+											<div align="right">
+												<xsl:call-template name="drawToolActions">
+													<xsl:with-param name="id"><xsl:value-of select="$current"/></xsl:with-param>
+													<xsl:with-param name="actionitem"><xsl:value-of select="@id"/></xsl:with-param>
+													<xsl:with-param name="forceMoveButtons">true</xsl:with-param>
+													<xsl:with-param name="forceDeleteButton">true</xsl:with-param>
+													<xsl:with-param name="forceDrillDownButton">true</xsl:with-param>
+												</xsl:call-template>
+											</div>
+										</td>
+									  </tr>
+									  <tr>
+										<td colspan="2">
+											<xsl:value-of select="@name"/>
+										</td>
+									  </tr>
+									</table>				
+								</td>
+							</xsl:for-each>
+						</tr>
+					</table>
+				</td>
+			  </tr>
+			</table>
+		</xsl:if>
+	</xsl:template>
+	
+	<xsl:template match="coplet-layout|frame-layout">
+		<table style="border-width:1px; border-style:solid; border-color:#292c63; spacing:3px; padding:5px;" border="0" cellpadding="3" cellspacing="0" bordercolor="#4e95b6">
+		  <tr>
+			<td bgcolor="#4e95b6">
+				<div align="left">
+					<xsl:if test="@parent">
+						<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="@parent"/></xsl:attribute>
+							<img border="0">
+								<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+							</img>
+						</a>
+					</xsl:if>	
+					<font color="#ffffff"><i18n:text key="copletManagement.items.coplet"/></font>
+				</div>
+			</td>
+			<td bgcolor="#4e95b6">
+				<div align="right">
+					<xsl:call-template name="drawToolActions">
+						<xsl:with-param name="id"><xsl:value-of select="$current"/></xsl:with-param>
+						<xsl:with-param name="actionitem"><xsl:value-of select="@id"/></xsl:with-param>
+						<xsl:with-param name="forceDeleteButton">true</xsl:with-param>
+						<xsl:with-param name="forceDrillDownButton">true</xsl:with-param>
+						<xsl:with-param name="forceEditCopletButton">true</xsl:with-param>
+					</xsl:call-template>
+				</div>
+			</td>
+		  </tr>
+		  <tr>
+			<td colspan="2">
+				<xsl:choose>
+					<xsl:when test="coplet-instance-data/.">
+						Coplet: <xsl:value-of select="coplet-instance-data/."/>
+ 					</xsl:when>
+ 					<xsl:otherwise>
+ 						Coplet				
+					</xsl:otherwise>
+				</xsl:choose>
+			</td>
+		  </tr>
+		</table>	
+	</xsl:template>
+	
+
+	<xsl:template match="help" mode="foo">
+		<a href="tools/plugins/copletManagement/showTab?action=save">Save</a> - <a href="tools/plugins/copletManagement/showTab?action=restore">Restore</a>
+		<table>
+			<tr>
+				<td><i18n:text key="copletManagement.actions.title"/></td>
+				<td></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/left.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveLeft"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/right.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveRight"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/up.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveUp"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/down.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.moveDown"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/del.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.removeItem"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addTab.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addTab"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addCol.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addCol"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addRow.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addRow"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addCoplet.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.addCoplet"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/drillDown.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.drillDown"/></td>				
+			</tr>
+			<tr>
+				<td>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/goUp.jpg</xsl:attribute>
+					</img>
+				</td>
+				<td><i18n:text key="copletManagement.actions.goUp"/></td>				
+			</tr>
+		</table>
+	</xsl:template>
+
+	<xsl:template match="@*|node()">
+		<xsl:copy>
+			<xsl:apply-templates select="@*|node()" />
+		</xsl:copy>
+	</xsl:template>
+	
+	<xsl:template name="drawToolActions">
+		<xsl:param name="id"/>
+		<xsl:param name="actionitem"/>
+		<xsl:param name="forceMoveButtons"/>
+		<xsl:param name="forceDeleteButton"/>
+		<xsl:param name="forceAddTabButton"/>
+		<xsl:param name="forceAddButtons"/>
+		<xsl:param name="forceDrillDownButton"/>
+		<xsl:param name="forceEditCopletButton"/>
+		
+		<xsl:if test="$forceEditCopletButton = 'true'">
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/editCoplet?actionitem=<xsl:value-of select="$actionitem"/>&amp;id=<xsl:value-of select="$id"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/edit.jpg</xsl:attribute>
+				</img>
+			</a>
+		</xsl:if>
+		
+		<xsl:if test="$forceDeleteButton = 'true'">
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=del&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/del.jpg</xsl:attribute>
+				</img>
+			</a>
+		</xsl:if>
+		
+		<xsl:if test="count(../../node()) > 1 or $forceMoveButtons = 'true'">
+		<xsl:choose>
+			<xsl:when test="(../../@name) = 'row'">
+				<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=up&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/up.jpg</xsl:attribute>
+					</img>
+				</a>
+				<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=down&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/down.jpg</xsl:attribute>
+					</img>
+				</a>
+			</xsl:when>
+			<xsl:otherwise>
+				<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=up&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/left.jpg</xsl:attribute>
+					</img>
+				</a>
+				<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=down&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+					<img border="0">
+						<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/right.jpg</xsl:attribute>
+					</img>
+				</a>
+			</xsl:otherwise>
+		</xsl:choose>
+		</xsl:if>
+		
+		<xsl:if test="$forceAddTabButton = 'true'">
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=addTab&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addTab.jpg</xsl:attribute>
+				</img>
+			</a>
+		</xsl:if>
+		
+		<xsl:if test="$forceAddButtons = 'true'">
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=addRow&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addRow.jpg</xsl:attribute>
+				</img>
+			</a>
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=addCol&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addCol.jpg</xsl:attribute>
+				</img>
+			</a>
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$id"/>&amp;action=addCoplet&amp;actionitem=<xsl:value-of select="$actionitem"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/addCoplet.jpg</xsl:attribute>
+				</img>
+			</a>
+		</xsl:if>
+		
+		<xsl:if test="$forceDrillDownButton = 'true'">
+			<a><xsl:attribute name="href">tools/plugins/copletManagement/showTab?id=<xsl:value-of select="$actionitem"/></xsl:attribute>
+				<img border="0">
+					<xsl:attribute name="src">toolImages/<xsl:value-of select="$skin"/>/drillDown.jpg</xsl:attribute>
+				</img>
+			</a>
+		</xsl:if>
+	</xsl:template>
+
+</xsl:stylesheet>

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/showTab.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/basic/styles/showTab.xsl
------------------------------------------------------------------------------
    svn:keywords = Id

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/Thumbs.db
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/Thumbs.db?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/Thumbs.db
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addCol.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addCol.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addCol.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addCoplet.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addCoplet.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addCoplet.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addRow.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addRow.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addRow.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addTab.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addTab.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/addTab.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/del.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/del.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/del.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/down.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/down.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/down.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/drillDown.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/drillDown.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/drillDown.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/edit.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/edit.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/edit.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/goUp.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/goUp.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/goUp.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/left.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/left.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/left.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/right.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/right.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/right.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/tabs.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/tabs.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/tabs.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/tools.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/tools.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.

Propchange: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/tools.jpg
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/up.jpg
URL: http://svn.apache.org/viewcvs/cocoon/blocks/portal-sample/trunk/samples/tools/skins/common/images/up.jpg?rev=265679&view=auto
==============================================================================
Binary file - no diff available.