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 2003/12/17 16:03:28 UTC
cvs commit: cocoon-2.1/src/blocks/portal/samples/skins/common/styles portal-page.xsl
cziegeler 2003/12/17 07:03:28
Modified: src/blocks/portal/samples/profiles/copletinstancedata
portal.xml
src/blocks/portal/samples/resources sunrise-user.xml
src/blocks/portal/samples sitemap.xmap
src/blocks/portal/java/org/apache/cocoon/portal/coplet
copletdata.xml
src/blocks/portal/samples/profiles/copletdata portal.xml
src/blocks/portal/samples/coplets sitemap.xmap
src/blocks/portal/samples/news/content/xdocs
portal-intro.xml
src/blocks/portal/java/org/apache/cocoon/portal/profile/impl
AbstractProfileManager.java
AbstractUserProfileManager.java
src/blocks/portal/samples/skins/basic/styles portal-page.xsl
src/blocks/portal/samples/profiles/layout portal.xml
src/blocks/portal/samples/styles authenticate.xsl
src/blocks/portal/samples/skins/common/styles
portal-page.xsl
Added: src/blocks/portal/samples/coplets/login sitemap.xmap
login.xml
src/blocks/portal/samples/coplets/gallery sitemap.xmap
src/blocks/portal/samples/news/content/xdocs portal-demo.xml
src/blocks/portal/samples/profiles/layout
portal-user-anonymous.xml
Log:
Enhancing portal demo
Revision Changes Path
1.1 cocoon-2.1/src/blocks/portal/samples/coplets/login/sitemap.xmap
Index: sitemap.xmap
===================================================================
<?xml version="1.0"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<map:pipelines>
<map:pipeline>
<!-- this is a login coplet -->
<map:match pattern="coplet">
<map:generate src="login.xml"/>
<map:transform src="../../{global:skin}styles/login-html.xsl"/>
<map:serialize type="xml"/>
</map:match>
</map:pipeline>
</map:pipelines>
</map:sitemap>
1.1 cocoon-2.1/src/blocks/portal/samples/coplets/login/login.xml
Index: login.xml
===================================================================
<?xml version="1.0"?>
<!-- $Id: login.xml,v 1.1 2003/12/17 15:03:27 cziegeler Exp $
Description: The login form for the portal
-->
<content>
<form>
<url>auth</url>
<field name="name" type="text" length="24" description="User"/>
<field name="password" type="password" length="10" description="Password"/>
</form>
</content>
1.6 +7 -0 cocoon-2.1/src/blocks/portal/samples/profiles/copletinstancedata/portal.xml
Index: portal.xml
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/profiles/copletinstancedata/portal.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- portal.xml 11 Dec 2003 16:05:01 -0000 1.5
+++ portal.xml 17 Dec 2003 15:03:27 -0000 1.6
@@ -60,11 +60,18 @@
<coplet-instance-data id="Portal-Bottom-1" name="standard">
<coplet-data>Portal-Bottom</coplet-data>
</coplet-instance-data>
+ <coplet-instance-data id="Portal-Demo-1" name="standard">
+ <coplet-data>Portal-Demo</coplet-data>
+ </coplet-instance-data>
<coplet-instance-data id="Gallery-Petstore" name="standard">
<coplet-data>Gallery</coplet-data>
</coplet-instance-data>
<coplet-instance-data id="GalleryViewer-1" name="standard">
<coplet-data>GalleryViewer</coplet-data>
+ </coplet-instance-data>
+
+ <coplet-instance-data id="Login-1" name="standard">
+ <coplet-data>Login</coplet-data>
</coplet-instance-data>
</coplets>
1.2 +6 -29 cocoon-2.1/src/blocks/portal/samples/resources/sunrise-user.xml
Index: sunrise-user.xml
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/resources/sunrise-user.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sunrise-user.xml 19 May 2003 09:14:07 -0000 1.1
+++ sunrise-user.xml 17 Dec 2003 15:03:27 -0000 1.2
@@ -11,39 +11,16 @@
<name>cocoon</name>
<password>cocoon</password>
<role>admin</role>
- <title>Mr.</title>
- <firstname>Walter</firstname>
- <lastname>Cocoon</lastname>
- <company/>
- <street/>
- <zipcode/>
- <city/>
- <country/>
- <phone/>
- <fax/>
- <email/>
- <bankid/>
- <bankname/>
- <accountid/>
</user>
<user>
<name>guest</name>
<password>guest</password>
<role>guest</role>
- <title>Mrs.</title>
- <firstname>G.</firstname>
- <lastname>Guest</lastname>
- <company>Cocoon</company>
- <street>Cocoon Street</street>
- <zipcode>33100</zipcode>
- <city>Cocooncity</city>
- <country>Somewhere</country>
- <phone/>
- <fax/>
- <email>guest</email>
- <bankid/>
- <bankname/>
- <accountid/>
+ </user>
+ <user>
+ <name>anonymous</name>
+ <password>anonymous</password>
+ <role>guest</role>
</user>
</users>
</authentication>
1.1 cocoon-2.1/src/blocks/portal/samples/coplets/gallery/sitemap.xmap
Index: sitemap.xmap
===================================================================
<?xml version="1.0"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<map:pipelines>
<map:pipeline>
<map:match pattern="images/*.jpg">
<map:read mime-type="image/jpg" src="samplepics/{1}.jpg"/>
</map:match>
<!-- this is a gallery coplet -->
<map:match pattern="browser">
<map:generate type="directory" src="{coplet:copletData/attributes/image-dir}">
<map:parameter name="include" value="{coplet:copletData/attributes/image-include}"/>
</map:generate>
<map:transform src="dir2pic.xsl">
<map:parameter name="dirprefix" value="{coplet:copletData/attributes/image-uri-prefix}"/>
</map:transform>
<map:transform type="xslt" src="gallery.xsl">
<map:parameter name="pic" value="{coplet:attributes/picture}"/>
<map:parameter name="fullscreen" value="{coplet:aspectDatas/fullScreen}"/>
</map:transform>
<map:transform type="portal-coplet"/>
<map:serialize type="xml"/>
</map:match>
<map:match pattern="viewer">
<map:generate src="picture.xml"/>
<map:transform type="xslt" src="picture.xsl">
<map:parameter name="pic" value="{coplet:attributes/picture}"/>
</map:transform>
<map:serialize type="xml"/>
</map:match>
</map:pipeline>
</map:pipelines>
</map:sitemap>
1.19 +39 -30 cocoon-2.1/src/blocks/portal/samples/sitemap.xmap
Index: sitemap.xmap
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/sitemap.xmap,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- sitemap.xmap 12 Dec 2003 14:42:35 -0000 1.18
+++ sitemap.xmap 17 Dec 2003 15:03:27 -0000 1.19
@@ -132,8 +132,7 @@
<map:mount check-reload="yes" src="coplets/" uri-prefix="coplets"/>
</map:match>
- <!-- Do an auto login as guest -->
- <!--
+ <!-- Do an auto login as anonymous -->
<map:act type="auth-loggedIn">
<map:parameter name="handler" value="portalhandler"/>
<map:parameter name="application" value="portal"/>
@@ -143,12 +142,11 @@
<map:parameter name="handler" value="portalhandler"/>
<map:parameter name="application" value="portal"/>
- <map:parameter name="parameter_name" value="guest"/>
- <map:parameter name="parameter_password" value="guest"/>
+ <map:parameter name="parameter_name" value="anonymous"/>
+ <map:parameter name="parameter_password" value="anonymous"/>
</map:act>
</map:act>
- -->
<!-- Test pipeline for layout engine -->
<map:match pattern="portal">
@@ -159,7 +157,9 @@
<map:generate type="portal" label="content">
<map:parameter name="portal-name" value="portal" />
</map:generate>
- <map:transform src="{global:skin}styles/portal-page.xsl"/>
+ <map:transform src="{global:skin}styles/portal-page.xsl">
+ <map:parameter name="user" value="{ID}"/>
+ </map:transform>
<map:transform type="cinclude"/>
<map:transform type="encodeURL"/>
<!--
@@ -195,44 +195,53 @@
</map:act>
</map:match>
- <!-- authentication stuff -->
-
- <map:match pattern="login">
- <map:act type="auth-loggedIn">
- <map:parameter name="handler" value="portalhandler"/>
- <map:parameter name="application" value="portal"/>
-
- <map:act type="portal-login">
- <map:parameter name="portal-name" value="portal"/>
- </map:act>
-
- <map:redirect-to uri="portal"/>
- </map:act>
- <map:generate src="resources/login.xml"/>
- <map:transform src="{global:skin}styles/login-html.xsl">
- <map:parameter name="resource" value="{request-param:resource}"/>
- </map:transform>
- <map:transform src="{global:skin}styles/portal-page.xsl"/>
- <map:transform type="encodeURL"/>
- <map:serialize/>
- </map:match>
-
+ <!-- Authenticate a user -->
<map:match pattern="auth">
+ <!-- Check if we are logged in:
+ - if we are anonymous, then logout
+ - if we are any other use, redirect to loggedin
+ -->
<map:act type="auth-loggedIn">
<map:parameter name="handler" value="portalhandler"/>
- <map:redirect-to uri="loggedin"/>
+
+ <map:act type="auth-protect">
+ <map:parameter name="handler" value="portalhandler"/>
+ <map:parameter name="application" value="portal"/>
+
+ <map:select type="parameter" >
+ <map:parameter name="parameter-selector-test" value="{ID}"/>
+ <map:when test="anonymous">
+ <map:act type="auth-logout">
+ <map:parameter name="handler" value="portalhandler"/>
+ </map:act>
+ </map:when>
+ <map:otherwise>
+ <map:redirect-to uri="loggedin"/>
+ </map:otherwise>
+ </map:select>
+ </map:act>
</map:act>
+
+ <!-- Start the authentication process -->
<map:act type="auth-login">
<map:parameter name="handler" value="portalhandler"/>
<map:parameter name="application" value="portal"/>
<map:parameter name="parameter_name" value="{request-param:name}"/>
<map:parameter name="parameter_password" value="{request-param:password}"/>
+ <!-- Authentication succeeded -->
+ <map:act type="portal-login">
+ <map:parameter name="portal-name" value="portal"/>
+ </map:act>
+
<map:redirect-to uri="{request-param:resource}"/>
</map:act>
+ <!-- Authentication failed -->
<map:generate src="resources/login-error.xml"/>
- <map:transform src="{global:skin}styles/portal-page.xsl"/>
+ <map:transform src="{global:skin}styles/portal-page.xsl">
+ <map:parameter name="user" value="anonymous"/>
+ </map:transform>
<map:transform type="encodeURL"/>
<map:serialize/>
</map:match>
1.3 +13 -0 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/coplet/copletdata.xml
Index: copletdata.xml
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/coplet/copletdata.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- copletdata.xml 2 Sep 2003 08:34:18 -0000 1.2
+++ copletdata.xml 17 Dec 2003 15:03:27 -0000 1.3
@@ -3,6 +3,9 @@
<description>Coplet data mapping file</description>
<class name="org.apache.cocoon.portal.aspect.impl.AbstractAspectalizable">
+ <field name="persistentAspectDatas" type="org.apache.cocoon.portal.util.MapItem" collection="map" handler="org.apache.cocoon.portal.util.AspectDataFieldHandler">
+ <bind-xml name="aspect"/>
+ </field>
</class>
<class name="org.apache.cocoon.portal.factory.impl.AbstractProducible"
@@ -47,5 +50,15 @@
<bind-xml name="value"/>
</field>
</class>
+ <class name="org.apache.cocoon.portal.util.MapItem">
+ <field name="key" type="java.lang.String">
+ <bind-xml name="name"/>
+ </field>
+
+ <field name="value">
+ <bind-xml name="value"/>
+ </field>
+ </class>
+
</mapping>
1.12 +32 -6 cocoon-2.1/src/blocks/portal/samples/profiles/copletdata/portal.xml
Index: portal.xml
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/profiles/copletdata/portal.xml,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- portal.xml 12 Dec 2003 13:46:13 -0000 1.11
+++ portal.xml 17 Dec 2003 15:03:27 -0000 1.12
@@ -116,7 +116,9 @@
</attribute>
</coplet-data>
- <!-- The portal introduction coplet -->
+ <!--
+ + The portal introduction coplet
+ -->
<coplet-data id="Portal-Intro" name="standard">
<title>Introduction</title>
<coplet-base-data>URICoplet</coplet-base-data>
@@ -125,6 +127,14 @@
<value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/news/portal-intro.html</value>
</attribute>
</coplet-data>
+ <coplet-data id="Portal-Demo" name="standard">
+ <title>Introduction</title>
+ <coplet-base-data>URICoplet</coplet-base-data>
+ <attribute>
+ <name>uri</name>
+ <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/news/portal-demo.html</value>
+ </attribute>
+ </coplet-data>
<coplet-data id="Portal-Right" name="standard">
<title>Right</title>
<coplet-base-data>URICoplet</coplet-base-data>
@@ -133,7 +143,6 @@
<value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/news/portal-right.html</value>
</attribute>
</coplet-data>
-
<coplet-data id="Portal-Left" name="standard">
<title>Left</title>
<coplet-base-data>URICoplet</coplet-base-data>
@@ -142,7 +151,6 @@
<value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/news/portal-left.html</value>
</attribute>
</coplet-data>
-
<coplet-data id="Portal-Bottom" name="standard">
<title>Bottom</title>
<coplet-base-data>URICoplet</coplet-base-data>
@@ -152,16 +160,19 @@
</attribute>
</coplet-data>
+ <!--
+ + The Gallery coplets
+ -->
<coplet-data id="Gallery" name="standard">
<title>Picture Gallery</title>
<coplet-base-data>URICoplet</coplet-base-data>
<attribute>
<name>uri</name>
- <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/coplets/gallery</value>
+ <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/coplets/gallery/browser</value>
</attribute>
<attribute>
<name>image-dir</name>
- <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">gallery/samplepics</value>
+ <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">samplepics</value>
</attribute>
<attribute>
<name>image-include</name>
@@ -177,8 +188,23 @@
<coplet-base-data>URICoplet</coplet-base-data>
<attribute>
<name>uri</name>
- <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/coplets/galleryviewer</value>
+ <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/coplets/gallery/viewer</value>
</attribute>
</coplet-data>
+ <!--
+ + The login coplet
+ -->
+ <coplet-data id="Login" name="standard">
+ <title>Login</title>
+ <coplet-base-data>URICoplet</coplet-base-data>
+ <attribute>
+ <name>uri</name>
+ <value xsi:type="java:java.lang.String" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">cocoon:/coplets/login/coplet</value>
+ </attribute>
+ <aspect>
+ <name>mandatory</name>
+ <value xsi:type="java:java.lang.Boolean" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">true</value>
+ </aspect>
+ </coplet-data>
</coplets>
1.5 +6 -26 cocoon-2.1/src/blocks/portal/samples/coplets/sitemap.xmap
Index: sitemap.xmap
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/coplets/sitemap.xmap,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- sitemap.xmap 12 Dec 2003 13:46:13 -0000 1.4
+++ sitemap.xmap 17 Dec 2003 15:03:27 -0000 1.5
@@ -2,38 +2,18 @@
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
+<!-- This sitemap just forwards the request to the corresponding coplet
+ sub sitemap -->
<map:pipelines>
<map:pipeline>
- <map:match pattern="gallery/images/*.jpg">
- <map:read mime-type="image/jpg" src="gallery/samplepics/{1}.jpg"/>
- </map:match>
-
- <!-- this is a gallery coplet -->
- <map:match pattern="gallery">
- <map:generate type="directory" src="{coplet:copletData/attributes/image-dir}">
- <map:parameter name="include" value="{coplet:copletData/attributes/image-include}"/>
- </map:generate>
- <map:transform src="gallery/dir2pic.xsl">
- <map:parameter name="dirprefix" value="{coplet:copletData/attributes/image-uri-prefix}"/>
- </map:transform>
- <map:transform type="xslt" src="gallery/gallery.xsl">
- <map:parameter name="pic" value="{coplet:attributes/picture}"/>
- <map:parameter name="fullscreen" value="{coplet:aspectDatas/fullScreen}"/>
- </map:transform>
- <map:transform type="portal-coplet"/>
- <map:serialize type="xml"/>
- </map:match>
- <map:match pattern="galleryviewer">
- <map:generate src="gallery/picture.xml"/>
- <map:transform type="xslt" src="gallery/picture.xsl">
- <map:parameter name="pic" value="{coplet:attributes/picture}"/>
- </map:transform>
- <map:serialize type="xml"/>
- </map:match>
+ <map:match pattern="*/**">
+ <map:mount check-reload="yes" src="{1}/" uri-prefix="{1}"/>
+ </map:match>
</map:pipeline>
</map:pipelines>
+
</map:sitemap>
1.6 +3 -8 cocoon-2.1/src/blocks/portal/samples/news/content/xdocs/portal-intro.xml
Index: portal-intro.xml
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/news/content/xdocs/portal-intro.xml,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- portal-intro.xml 12 Dec 2003 13:46:13 -0000 1.5
+++ portal-intro.xml 17 Dec 2003 15:03:27 -0000 1.6
@@ -11,18 +11,13 @@
<p>The Cocoon portal page you currently view displays some so called
<em>Coplets</em> (= Cocoon Portlets). Each coplet displays
a select content.</p>
- <p>The different tabs display/demonstrate different aspects of the portal.</p>
- <ul>
- <li>The TabDemo1 shows a tab inside a tab, which is useful for structuring content.</li>
- <li>The TabDemo2 shows the same content as TabDemo2 but with just a different stylesheet for the tab.</li>
- <li>The Coplets tab show some more coplets.</li>
- </ul>
- <note>THIS IS A SAMPLE PORTAL. It demonstrates several features of
+ <p><strong>THIS IS A SAMPLE PORTAL!</strong></p>
+ <p>It demonstrates several features of
the portal engine, so it's not optimized for production. Make sure
that if you use the portal for your own projects that you
remove all unused stuff from the configuration! Every configured
feature might have an impact on the performance.
- </note>
+ </p>
<p>For more information <fork href="http://cocoon.apache.org">visit the Cocoon Homepage</fork>.</p>
</s1>
1.1 cocoon-2.1/src/blocks/portal/samples/news/content/xdocs/portal-demo.xml
Index: portal-demo.xml
===================================================================
<?xml version="1.0" encoding="UTF-8"?>
<document>
<header>
<title>The Cocoon Portal</title>
<version>0.1</version>
<type>Overview document</type>
</header>
<body>
<s1 title="The Apache Cocoon Portal">
<p>This is a demo of the Cocoon Portal Engine.</p>
<p>The Cocoon portal page you currently view displays some so called
<em>Coplets</em> (= Cocoon Portlets). Each coplet displays
a select content.</p>
<p>The different tabs display/demonstrate different aspects of the portal.</p>
<ul>
<li>The TabDemo1 shows a tab inside a tab, which is useful for structuring content.</li>
<li>The TabDemo2 shows the same content as TabDemo2 but with just a different stylesheet for the tab.</li>
<li>The Coplets tab show some more coplets.</li>
</ul>
<p><strong>THIS IS A SAMPLE PORTAL!</strong></p>
<p>It demonstrates several features of
the portal engine, so it's not optimized for production. Make sure
that if you use the portal for your own projects that you
remove all unused stuff from the configuration! Every configured
feature might have an impact on the performance.
</p>
<p>For more information <fork href="http://cocoon.apache.org">visit the Cocoon Homepage</fork>.</p>
</s1>
</body>
</document>
1.5 +13 -1 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
Index: AbstractProfileManager.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- AbstractProfileManager.java 20 Oct 2003 13:37:10 -0000 1.4
+++ AbstractProfileManager.java 17 Dec 2003 15:03:27 -0000 1.5
@@ -194,12 +194,21 @@
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#login()
+ */
public void login() {
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#logout()
+ */
public void logout() {
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#setEntryLayout(org.apache.cocoon.portal.layout.Layout)
+ */
public void setEntryLayout(Layout object) {
String layoutKey = this.getDefaultLayoutKey();
PortalService service = null;
@@ -213,6 +222,9 @@
}
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#getEntryLayout()
+ */
public Layout getEntryLayout() {
String layoutKey = this.getDefaultLayoutKey();
PortalService service = null;
1.5 +25 -11 cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java
Index: AbstractUserProfileManager.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- AbstractUserProfileManager.java 20 Oct 2003 13:37:10 -0000 1.4
+++ AbstractUserProfileManager.java 17 Dec 2003 15:03:27 -0000 1.5
@@ -81,6 +81,9 @@
public abstract class AbstractUserProfileManager
extends AbstractProfileManager {
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#login()
+ */
public void login() {
super.login();
// TODO - we should move most of the stuff from getPortalLayout to here
@@ -88,6 +91,9 @@
this.getPortalLayout(null, null);
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#logout()
+ */
public void logout() {
final String layoutKey = this.getDefaultLayoutKey();
PortalService service = null;
@@ -97,18 +103,20 @@
service = (PortalService)this.manager.lookup(PortalService.ROLE);
CopletInstanceDataManager copletInstanceDataManager = (CopletInstanceDataManager)service.getAttribute("CopletInstanceData:"+layoutKey);
- Iterator iter = copletInstanceDataManager.getCopletInstanceData().values().iterator();
- while ( iter.hasNext() ) {
- CopletInstanceData cid = (CopletInstanceData) iter.next();
- CopletAdapter adapter = null;
- try {
- adapter = (CopletAdapter)adapterSelector.select(cid.getCopletData().getCopletBaseData().getCopletAdapterName());
- adapter.logout( cid );
- } finally {
- adapterSelector.release( adapter );
+ if ( copletInstanceDataManager != null ) {
+ Iterator iter = copletInstanceDataManager.getCopletInstanceData().values().iterator();
+ while ( iter.hasNext() ) {
+ CopletInstanceData cid = (CopletInstanceData) iter.next();
+ CopletAdapter adapter = null;
+ try {
+ adapter = (CopletAdapter)adapterSelector.select(cid.getCopletData().getCopletBaseData().getCopletAdapterName());
+ adapter.logout( cid );
+ } finally {
+ adapterSelector.release( adapter );
+ }
}
}
-
+
service.removeAttribute("CopletData:"+layoutKey);
service.removeAttribute("CopletInstanceData:"+layoutKey);
service.removeAttribute("Layout:"+layoutKey);
@@ -168,6 +176,9 @@
}
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#getCopletInstanceData(java.lang.String)
+ */
public CopletInstanceData getCopletInstanceData(String copletID) {
String layoutKey = this.getDefaultLayoutKey();
PortalService service = null;
@@ -186,6 +197,9 @@
}
}
+ /* (non-Javadoc)
+ * @see org.apache.cocoon.portal.profile.ProfileManager#getCopletInstanceData(org.apache.cocoon.portal.coplet.CopletData)
+ */
public List getCopletInstanceData(CopletData data) {
String layoutKey = this.getDefaultLayoutKey();
List coplets = new ArrayList();
1.3 +5 -3 cocoon-2.1/src/blocks/portal/samples/skins/basic/styles/portal-page.xsl
Index: portal-page.xsl
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/skins/basic/styles/portal-page.xsl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- portal-page.xsl 11 Dec 2003 14:41:32 -0000 1.2
+++ portal-page.xsl 17 Dec 2003 15:03:27 -0000 1.3
@@ -27,9 +27,11 @@
</tr>
<tr>
<td colspan="2" noWrap="" height="10" bgcolor="#DDDDDD" align="right">
- <a href="logout" style="color:#4C6C8F;font-size:75%;">
- Logout
- </a>
+ <xsl:if test="$user!='anonymous'">
+ <a href="logout" style="color:#4C6C8F;font-size:75%;">
+ Logout
+ </a>
+ </xsl:if>
</td>
</tr>
</tbody>
1.16 +5 -26 cocoon-2.1/src/blocks/portal/samples/profiles/layout/portal.xml
Index: portal.xml
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/profiles/layout/portal.xml,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- portal.xml 14 Dec 2003 12:27:24 -0000 1.15
+++ portal.xml 17 Dec 2003 15:03:27 -0000 1.16
@@ -1,32 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<composite-layout name="tab" id="maintab">
<named-item name="Main">
- <composite-layout name="row">
- <item>
- <coplet-layout name="coplet">
- <coplet-instance-data>Portal-Intro-1</coplet-instance-data>
- </coplet-layout>
- </item>
- <item>
- <composite-layout name="column">
- <item>
- <coplet-layout name="coplet">
- <coplet-instance-data>Portal-Left-1</coplet-instance-data>
- </coplet-layout>
- </item>
- <item>
- <coplet-layout name="coplet">
- <coplet-instance-data>Portal-Right-1</coplet-instance-data>
- </coplet-layout>
- </item>
- </composite-layout>
- </item>
- <item>
- <coplet-layout name="coplet">
- <coplet-instance-data>Portal-Bottom-1</coplet-instance-data>
- </coplet-layout>
- </item>
- </composite-layout>
+ <coplet-layout name="coplet">
+ <coplet-instance-data>Portal-Intro-1</coplet-instance-data>
+ </coplet-layout>
</named-item>
<named-item name="News">
<composite-layout name="column">
@@ -89,11 +66,13 @@
<item>
<composite-layout name="row">
<item>
+ <parameter name="width" value="50%" />
<coplet-layout name="coplet">
<coplet-instance-data>CZ Weblog-1</coplet-instance-data>
</coplet-layout>
</item>
<item>
+ <parameter name="width" value="50%" />
<coplet-layout name="coplet">
<coplet-instance-data>ML Weblog-1</coplet-instance-data>
</coplet-layout>
1.1 cocoon-2.1/src/blocks/portal/samples/profiles/layout/portal-user-anonymous.xml
Index: portal-user-anonymous.xml
===================================================================
<?xml version="1.0" encoding="UTF-8"?>
<composite-layout name="row">
<item>
<composite-layout name="column">
<item>
<coplet-layout name="coplet">
<coplet-instance-data>Portal-Intro-1</coplet-instance-data>
</coplet-layout>
</item>
<item>
<coplet-layout name="coplet">
<coplet-instance-data>Login-1</coplet-instance-data>
</coplet-layout>
</item>
</composite-layout>
</item>
<item>
<composite-layout name="column">
<item>
<coplet-layout name="coplet">
<coplet-instance-data>Portal-Left-1</coplet-instance-data>
</coplet-layout>
</item>
<item>
<coplet-layout name="coplet">
<coplet-instance-data>Portal-Right-1</coplet-instance-data>
</coplet-layout>
</item>
</composite-layout>
</item>
<item>
<coplet-layout name="coplet">
<coplet-instance-data>Portal-Bottom-1</coplet-instance-data>
</coplet-layout>
</item>
</composite-layout>
1.2 +1 -18 cocoon-2.1/src/blocks/portal/samples/styles/authenticate.xsl
Index: authenticate.xsl
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/styles/authenticate.xsl,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- authenticate.xsl 27 May 2003 11:10:20 -0000 1.1
+++ authenticate.xsl 17 Dec 2003 15:03:28 -0000 1.2
@@ -22,24 +22,7 @@
<ID><xsl:value-of select="name"/></ID>
<role><xsl:value-of select="role"/></role>
<data>
- <name><xsl:value-of select="name"/></name>
- <role><xsl:value-of select="role"/></role>
- <ID><xsl:value-of select="name"/></ID>
<user><xsl:value-of select="name"/></user>
- <title><xsl:value-of select="title"/></title>
- <firstname><xsl:value-of select="firstname"/></firstname>
- <lastname><xsl:value-of select="lastname"/></lastname>
- <company><xsl:value-of select="company"/></company>
- <street><xsl:value-of select="street"/></street>
- <zipcode><xsl:value-of select="zipcode"/></zipcode>
- <city><xsl:value-of select="city"/></city>
- <country><xsl:value-of select="country"/></country>
- <phone><xsl:value-of select="phone"/></phone>
- <fax><xsl:value-of select="fax"/></fax>
- <email><xsl:value-of select="email"/></email>
- <bankid><xsl:value-of select="bankid"/></bankid>
- <bankname><xsl:value-of select="bankname"/></bankname>
- <accountid><xsl:value-of select="accountid"/></accountid>
</data>
</xsl:if>
</xsl:template>
1.3 +7 -2 cocoon-2.1/src/blocks/portal/samples/skins/common/styles/portal-page.xsl
Index: portal-page.xsl
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/portal/samples/skins/common/styles/portal-page.xsl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- portal-page.xsl 11 Dec 2003 14:41:32 -0000 1.2
+++ portal-page.xsl 17 Dec 2003 15:03:28 -0000 1.3
@@ -2,6 +2,7 @@
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:param name="user"/>
<xsl:template match="/">
<html>
<head>
@@ -26,11 +27,15 @@
</tr>
<tr valign="bottom">
<td height="99%" bgcolor="#294563" width="99%" align="right">
- <a href="logout"><img src="images/logout-door.gif" width="18" height="22" border="0"/></a>
+ <xsl:if test="$user!='anonymous'">
+ <a href="logout"><img src="images/logout-door.gif" width="18" height="22" border="0"/></a>
+ </xsl:if>
<img height="5" src="images/space.gif" width="5"/>
</td>
<td height="99%" bgcolor="#294563" width="1%" align="right">
- <a href="logout" style="color:#CFDCED;font-size:75%;">Logout</a> 
+ <xsl:if test="$user!='anonymous'">
+ <a href="logout" style="color:#CFDCED;font-size:75%;">Logout</a> 
+ </xsl:if>
<img height="5" src="images/space.gif" width="5"/>
</td>
</tr>