blob: 988ab32398a0e8f0fa3e9e4687b47c163e7c6544 [file] [log] [blame]
<?xml version="1.0"?>
<!-- CVS: $Id: sitemap.xmap,v 1.5 2003/10/22 16:56:22 joerg Exp $ -->
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<!-- ========================= Components ============================== -->
<map:components>
<map:actions>
<map:action name="session-validator"
src="org.apache.cocoon.acting.SessionValidatorAction"/>
<map:action name="session-invalidator"
src="org.apache.cocoon.acting.SessionInvalidatorAction"/>
<map:action name="form-validator"
src="org.apache.cocoon.acting.FormValidatorAction"/>
<map:action name="db-authenticator"
src="org.apache.cocoon.acting.DatabaseAuthenticatorAction"/>
</map:actions>
</map:components>
<map:views>
<map:view name="content" from-label="content">
<map:serialize type="xml"/>
</map:view>
<map:view from-label="content" name="pretty-content">
<map:transform src="context://stylesheets/system/xml2html.xslt"/>
<map:serialize type="html"/>
</map:view>
<map:view name="links" from-position="last">
<map:serialize type="links"/>
</map:view>
</map:views>
<!-- ======================= Pipelines ================================= -->
<map:pipelines>
<map:pipeline>
<map:match pattern="descriptors/*.xml">
<map:generate src="{0}"/>
<map:serialize type="xml"/>
</map:match>
<map:match pattern="">
<map:redirect-to uri="page"/>
</map:match>
<!-- ================= -->
<!-- Simple login page -->
<!-- ================= -->
<map:match pattern="login">
<map:generate src="docs/login.xml"/>
<map:transform src="stylesheets/simple-page2html.xsl">
<map:parameter name="servletPath" value="{request:servletPath}"/>
<map:parameter name="sitemapURI" value="{request:sitemapURI}"/>
<map:parameter name="contextPath" value="{request:contextPath}"/>
<map:parameter name="file" value="docs/login.xml"/>
<map:parameter name="remove" value="{0}"/>
</map:transform>
<map:serialize/>
</map:match>
<!-- ========================================= -->
<!-- Form target which performs auth service -->
<!-- ========================================= -->
<map:match pattern="do-login">
<!-- first validate whether submitted values are ok -->
<map:act type="form-validator">
<map:parameter name="descriptor" value="descriptors/params.xml"/>
<map:parameter name="validate" value="username"/>
<!-- now try to log in -->
<map:act type="db-authenticator">
<map:parameter name="descriptor" value="descriptors/auth.xml"/>
<!-- now go to protected area -->
<map:redirect-to uri="page"/>
</map:act>
</map:act>
<!-- something was wrong, try it again -->
<map:redirect-to uri="login"/>
</map:match>
<!-- ================ -->
<!-- Protected area -->
<!-- ================ -->
<map:match pattern="page">
<!-- first validate whether user has logged in -->
<map:act type="session-validator">
<map:parameter name="descriptor" value="descriptors/params.xml"/>
<map:parameter name="validate" value="username,department_id,theme"/>
<!-- generate protected content -->
<map:generate type="serverpages" src="docs/protected.xsp"/>
<map:transform src="stylesheets/{theme}-page2html.xsl">
<map:parameter name="servletPath" value="{request:servletPath}"/>
<map:parameter name="sitemapURI" value="{request:sitemapURI}"/>
<map:parameter name="contextPath" value="{request:contextPath}"/>
<map:parameter name="file" value="docs/protected.xsp"/>
<map:parameter name="remove" value="{../0}"/>
</map:transform>
<map:serialize/>
</map:act>
<!-- something was wrong, redirect to login page -->
<map:redirect-to uri="login"/>
</map:match>
<!-- ========================================= -->
<!-- Logout link which invalidates the session -->
<!-- ========================================= -->
<map:match pattern="do-logout">
<map:act type="session-invalidator">
<map:redirect-to uri="login"/>
</map:act>
</map:match>
</map:pipeline>
</map:pipelines>
</map:sitemap>
<!-- end of file -->
<!-- vim: set et ts=2 sw=2: -->