You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2005/05/24 23:30:02 UTC
svn commit: r178289 - in /lenya/trunk/src:
java/org/apache/lenya/cms/usecase/AbstractUsecase.java
webapp/global-sitemap.xmap webapp/lenya/xslt/menu/menu2xhtml.xsl
Author: andreas
Date: Tue May 24 14:30:01 2005
New Revision: 178289
URL: http://svn.apache.org/viewcvs?rev=178289&view=rev
Log:
don't use info- area prefix in menu2xhtml.xsl, add lenya.exitUsecase parameter
Modified:
lenya/trunk/src/java/org/apache/lenya/cms/usecase/AbstractUsecase.java
lenya/trunk/src/webapp/global-sitemap.xmap
lenya/trunk/src/webapp/lenya/xslt/menu/menu2xhtml.xsl
Modified: lenya/trunk/src/java/org/apache/lenya/cms/usecase/AbstractUsecase.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/java/org/apache/lenya/cms/usecase/AbstractUsecase.java?rev=178289&r1=178288&r2=178289&view=diff
==============================================================================
--- lenya/trunk/src/java/org/apache/lenya/cms/usecase/AbstractUsecase.java (original)
+++ lenya/trunk/src/java/org/apache/lenya/cms/usecase/AbstractUsecase.java Tue May 24 14:30:01 2005
@@ -690,6 +690,12 @@
queryString += "&" + key + "=" + value;
}
}
+ else {
+ String exitUsecase = getParameterAsString("lenya.exitUsecase");
+ if (exitUsecase != null && !"".equals(exitUsecase)) {
+ queryString = "?lenya.usecase=" + exitUsecase;
+ }
+ }
return queryString;
}
}
Modified: lenya/trunk/src/webapp/global-sitemap.xmap
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/webapp/global-sitemap.xmap?rev=178289&r1=178288&r2=178289&view=diff
==============================================================================
--- lenya/trunk/src/webapp/global-sitemap.xmap (original)
+++ lenya/trunk/src/webapp/global-sitemap.xmap Tue May 24 14:30:01 2005
@@ -216,28 +216,28 @@
<map:transform src="fallback://lenya/xslt/menu/menu2xul.xsl">
<map:parameter name="contextprefix" value="{request:contextPath}"/>
<map:parameter name="publicationid" value="{1}"/>
- <map:parameter name="completearea" value="{2}"/>
- <map:parameter name="documentarea" value="{page-envelope:area}"/>
+ <map:parameter name="area" value="{2}"/>
<map:parameter name="documenturl" value="{page-envelope:document-url}"/>
<map:parameter name="documentid" value="{page-envelope:document-id}"/>
<map:parameter name="userid" value="{access-control:user-id}"/>
<map:parameter name="servertime" value="{date-i18n:currentDate}"/>
<map:parameter name="workflowstate" value="{workflow:state}"/>
<map:parameter name="islive" value="{workflow:variable.is_live}"/>
+ <map:parameter name="usecase" value="{request-param:lenya.usecase}"/>
</map:transform>
</map:when>
<map:otherwise>
<map:transform src="fallback://lenya/xslt/menu/menu2xhtml.xsl">
<map:parameter name="contextprefix" value="{request:contextPath}"/>
<map:parameter name="publicationid" value="{1}"/>
- <map:parameter name="completearea" value="{2}"/>
- <map:parameter name="documentarea" value="{page-envelope:area}"/>
+ <map:parameter name="area" value="{2}"/>
<map:parameter name="documenturl" value="{page-envelope:document-url}"/>
<map:parameter name="documentid" value="{page-envelope:document-id}"/>
<map:parameter name="userid" value="{access-control:user-id}"/>
<map:parameter name="servertime" value="{date-i18n:currentDate}"/>
<map:parameter name="workflowstate" value="{workflow:state}"/>
<map:parameter name="islive" value="{workflow:variable.is_live}"/>
+ <map:parameter name="usecase" value="{request-param:lenya.usecase}"/>
</map:transform>
</map:otherwise>
</map:select>
Modified: lenya/trunk/src/webapp/lenya/xslt/menu/menu2xhtml.xsl
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/webapp/lenya/xslt/menu/menu2xhtml.xsl?rev=178289&r1=178288&r2=178289&view=diff
==============================================================================
--- lenya/trunk/src/webapp/lenya/xslt/menu/menu2xhtml.xsl (original)
+++ lenya/trunk/src/webapp/lenya/xslt/menu/menu2xhtml.xsl Tue May 24 14:30:01 2005
@@ -27,14 +27,22 @@
<xsl:param name="contextprefix"/>
<xsl:param name="publicationid"/>
-<xsl:param name="documentarea"/>
-<xsl:param name="completearea"/>
+<xsl:param name="area"/>
<xsl:param name="documenturl"/>
<xsl:param name="documentid"/>
<xsl:param name="userid"/>
<xsl:param name="servertime"/>
<xsl:param name="workflowstate"/>
<xsl:param name="islive"/>
+<xsl:param name="usecase"/>
+
+<xsl:variable name="currentTab">
+ <xsl:choose>
+ <xsl:when test="starts-with($usecase, 'admin.')">admin</xsl:when>
+ <xsl:when test="starts-with($usecase, 'tab.')">site</xsl:when>
+ <xsl:otherwise>authoring</xsl:otherwise>
+ </xsl:choose>
+</xsl:variable>
<xsl:variable name="image-prefix"><xsl:value-of select="$contextprefix"/>/lenya/menu/images</xsl:variable>
@@ -50,32 +58,34 @@
<!-- The main tabs for the different areas of Lenya -->
<div id="lenya-areas">
<ul>
-
+
<!-- ADMIN TAB -->
<xsl:if test="not(menu:tabs/menu:tab[@label = 'admin']/@show = 'false')">
<xsl:call-template name="area-tab">
<xsl:with-param name="tab-area">admin</xsl:with-param>
+ <xsl:with-param name="tabName">admin</xsl:with-param>
</xsl:call-template>
</xsl:if>
- <!-- INFO/SITE TAB -->
<xsl:variable name="info-area">
<xsl:choose>
- <xsl:when test="not(starts-with($documentarea, 'info-'))">info-authoring</xsl:when>
- <xsl:otherwise><xsl:value-of select="$documentarea"/></xsl:otherwise>
+ <xsl:when test="$area = 'admin'">authoring</xsl:when>
+ <xsl:otherwise><xsl:value-of select="$area"/></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="not(menu:tabs/menu:tab[@label = 'info']/@show = 'false')">
<xsl:call-template name="area-tab">
<xsl:with-param name="tab-area" select="$info-area"/>
- <xsl:with-param name="tab-area-prefix">info</xsl:with-param>
+ <xsl:with-param name="queryString">?lenya.usecase=tab.overview</xsl:with-param>
+ <xsl:with-param name="tabName">site</xsl:with-param>
</xsl:call-template>
</xsl:if>
<!-- AUTHORING TAB -->
<xsl:call-template name="area-tab">
<xsl:with-param name="tab-area">authoring</xsl:with-param>
+ <xsl:with-param name="tabName">authoring</xsl:with-param>
</xsl:call-template>
<!-- STAGING TAB -->
@@ -90,6 +100,7 @@
<xsl:call-template name="area-tab">
<xsl:with-param name="tab-area">live</xsl:with-param>
<xsl:with-param name="target">_blank</xsl:with-param>
+ <xsl:with-param name="tabName">live</xsl:with-param>
</xsl:call-template>
</xsl:if>
@@ -123,31 +134,24 @@
<xsl:param name="tab-area"/>
<xsl:param name="tab-area-prefix" select="$tab-area"/>
<xsl:param name="target" select="'_self'"/>
+ <xsl:param name="queryString"/>
+ <xsl:param name="tabName"/>
<xsl:variable name="tab-documenturl">
<xsl:choose>
<!-- index.html for link from/to admin area -->
- <xsl:when test="$tab-area = 'admin' or $documentarea = 'admin'">/index.html</xsl:when>
- <xsl:when test="starts-with($completearea, 'info') and $documentid = '/'">/index.html</xsl:when>
+ <xsl:when test="$tab-area = 'admin' or $area = 'admin'">/index.html</xsl:when>
+ <xsl:when test="($currentTab = 'site') and $documentid = '/'">/index.html</xsl:when>
<xsl:otherwise><xsl:value-of select="$documenturl"/></xsl:otherwise>
</xsl:choose>
</xsl:variable>
- <xsl:variable name="tab-name">
- <xsl:choose>
- <xsl:when test="starts-with($tab-area, 'info')">Site</xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$tab-area"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
-
<xsl:choose>
- <xsl:when test="starts-with($completearea, $tab-area-prefix)">
- <li id="area-{$tab-area}-active"><a href="{$contextprefix}/{$publicationid}/{$tab-area}{normalize-space($tab-documenturl)}" target="{$target}"><span><i18n:text><xsl:value-of select="$tab-name"/></i18n:text></span></a></li>
+ <xsl:when test="$tabName = $currentTab">
+ <li id="area-{$tab-area}-active"><a href="{$contextprefix}/{$publicationid}/{$tab-area}{normalize-space($tab-documenturl)}{$queryString}" target="{$target}"><span><i18n:text><xsl:value-of select="$tabName"/></i18n:text></span></a></li>
</xsl:when>
<xsl:otherwise>
- <li id="area-{$tab-area}"><a href="{$contextprefix}/{$publicationid}/{$tab-area}{normalize-space($tab-documenturl)}" target="{$target}"><span><i18n:text><xsl:value-of select="$tab-name"/></i18n:text></span></a></li>
+ <li id="area-{$tab-area}"><a href="{$contextprefix}/{$publicationid}/{$tab-area}{normalize-space($tab-documenturl)}{$queryString}" target="{$target}"><span><i18n:text><xsl:value-of select="$tabName"/></i18n:text></span></a></li>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
@@ -170,7 +174,7 @@
<xsl:template match="menu:menu" mode="nav">
<li id="nav{position()}"><xsl:value-of select="@name"/>
<ul id="menu{position()}">
- <xsl:apply-templates select="menu:block[not(@info = 'false') and starts-with($completearea, 'info') or not(@*[local-name() = $completearea] = 'false') and not(starts-with($completearea, 'info'))]"/>
+ <xsl:apply-templates select="menu:block[not(@info = 'false') and ($currentTab = 'site') or not(@*[local-name() = $currentTab] = 'false') and not($currentTab = 'site')]"/>
</ul>
</li>
</xsl:template>
@@ -184,7 +188,7 @@
<!-- match blocks with not area='false' -->
<xsl:template match="menu:block">
<xsl:apply-templates select="menu:title"/>
- <xsl:apply-templates select="menu:item[not(@info = 'false') and starts-with($completearea, 'info') or not(@*[local-name() = $completearea] = 'false') and not(starts-with($completearea, 'info'))]"/>
+ <xsl:apply-templates select="menu:item[not(@info = 'false') and ($currentTab = 'site') or not(@*[local-name() = $currentTab] = 'false') and not($currentTab = 'site')]"/>
<xsl:if test="position() != last()">
<li class="lenya-menu-separator"></li>
@@ -205,7 +209,7 @@
<xsl:value-of select="@href"/>
<xsl:apply-templates select="@*[local-name() != 'href']"/>
<xsl:text/>
- <xsl:if test="starts-with($completearea, 'info-')">
+ <xsl:if test="$currentTab = 'site'">
<xsl:choose>
<xsl:when test="contains(@href, '?')">
<xsl:text>&</xsl:text>
@@ -214,7 +218,6 @@
<xsl:text>?</xsl:text>
</xsl:otherwise>
</xsl:choose>
- <xsl:text>lenya.area=info</xsl:text>
</xsl:if>
</xsl:attribute>
<span><xsl:value-of select="."/></span>
@@ -234,6 +237,9 @@
<xsl:otherwise>?</xsl:otherwise>
</xsl:choose>
<xsl:text/>lenya.usecase=<xsl:value-of select="normalize-space(.)"/><xsl:text/>
+ <xsl:if test="$usecase != ''">
+ <xsl:text>&lenya.exitUsecase=</xsl:text><xsl:value-of select="$usecase"/><xsl:text/>
+ </xsl:if>
</xsl:template>
<xsl:template match="menu:item/@uc:step">
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org