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 2009/04/16 16:29:35 UTC

svn commit: r765650 - in /lenya/docu/modules: docustyle/ docustyle/xslt/ forrest/config/cocoon-xconf/ forrest/resources/editing/ forrest/xslt/

Author: andreas
Date: Thu Apr 16 14:29:35 2009
New Revision: 765650

URL: http://svn.apache.org/viewvc?rev=765650&view=rev
Log:
Starting to make the Forrest resource type editable with Firedocs.

Added:
    lenya/docu/modules/docustyle/xslt/extractContent.xsl
    lenya/docu/modules/docustyle/xslt/includeDocument.xsl
    lenya/docu/modules/forrest/resources/editing/
    lenya/docu/modules/forrest/resources/editing/inserts.xml
Modified:
    lenya/docu/modules/docustyle/sitemap.xmap
    lenya/docu/modules/docustyle/xslt/page.xsl
    lenya/docu/modules/forrest/config/cocoon-xconf/resourcetype-forrestDocument20.xconf
    lenya/docu/modules/forrest/xslt/forrestDocument202xhtml.xsl

Modified: lenya/docu/modules/docustyle/sitemap.xmap
URL: http://svn.apache.org/viewvc/lenya/docu/modules/docustyle/sitemap.xmap?rev=765650&r1=765649&r2=765650&view=diff
==============================================================================
--- lenya/docu/modules/docustyle/sitemap.xmap (original)
+++ lenya/docu/modules/docustyle/sitemap.xmap Thu Apr 16 14:29:35 2009
@@ -101,20 +101,32 @@
       </map:match>
       
     </map:pipeline>
+    
+    
+    <!-- document content -->
+    <map:pipeline>
+      <!-- {1:pub}/{2:area}/{3:uuid}/{4:language}.content -->
+      <map:match pattern="*/*/*/*.content">
+        <map:generate src="lenya-document:{3},lang={4},pub={1},area={2}?format=xhtml"/>
+        <map:transform src="xslt/extractContent.xsl"/>
+        <map:serialize type="xml"/>
+      </map:match>
+    </map:pipeline>
+    
       
     <!-- This is the pipeline that ultimately builds the page. -->
     <map:pipeline type="noncaching">
       
-      <!-- /page/{1:publication-id}/{2:area}/{3:uuid}/{4:language} -->
-      <map:match pattern="page/*/*/*/*">
+      <!-- {1:pub}/{2:area}/{3:uuid}/{4:language}.pageContext -->
+      <map:match pattern="**.pageContext">
         
         <map:generate src="fallback://lenya/content/util/empty.xml"/>
         
         <map:transform src="fallback://lenya/modules/docustyle/xslt/page.xsl">
-          <map:parameter name="pub" value="{1}"/>
-          <map:parameter name="area" value="{2}"/>
-          <map:parameter name="uuid" value="{3}"/>
-          <map:parameter name="language" value="{4}"/>
+          <map:parameter name="pub" value="{page-envelope:publication-id}"/>
+          <map:parameter name="area" value="{page-envelope:area}"/>
+          <map:parameter name="uuid" value="{page-envelope:document-uuid}"/>
+          <map:parameter name="language" value="{page-envelope:language}"/>
           <map:parameter name="path" value="{page-envelope:document-path}"/>
           <map:parameter name="lastPublishedUser" value="{access-control:user-name:{workflow:lastUser.publish}}"/>
           <map:parameter name="lastPublishedDate" value="{workflow:lastDate.publish}"/>
@@ -124,11 +136,11 @@
         <map:transform type="externallinks-xhtml"/>
         <map:transform src="fallback://lenya/modules/svg/xslt/image2svg.xsl"/>
         <map:transform type="metaData">
-          <map:parameter name='pubid' value='{1}'/>
-          <map:parameter name='area' value='{2}'/>
+          <map:parameter name='pubid' value='{page-envelope:publication-id}'/>
+          <map:parameter name='area' value='{page-envelope:area}'/>
         </map:transform>
         <map:transform type="i18n">      
-          <map:parameter name="locale" value="{4}"/>
+          <map:parameter name="locale" value="{page-envelope:language}"/>
         </map:transform>
         <map:transform type="uuid2url"/>
         <map:serialize type="xml"/>
@@ -159,7 +171,15 @@
           </map:when>
         </map:select>          
         
-        <map:generate src="cocoon:/page/{page-envelope:publication-id}/{1}/{page-envelope:document-uuid}/{page-envelope:language}"/>
+        <map:generate src="cocoon:/{1}/{2}.{3}.pageContext"/>
+        <map:transform src="xslt/includeDocument.xsl">
+          <map:parameter name="pub" value="{page-envelope:publication-id}"/>
+          <map:parameter name="area" value="{page-envelope:area}"/>
+          <map:parameter name="uuid" value="{page-envelope:document-uuid}"/>
+          <map:parameter name="language" value="{page-envelope:language}"/>
+        </map:transform>
+        <map:transform type="include"/>
+        <map:transform type="uuid2url"/>
         
         <map:select type="parameter">
           <!-- you remember that {1} is the area, right? -->

Added: lenya/docu/modules/docustyle/xslt/extractContent.xsl
URL: http://svn.apache.org/viewvc/lenya/docu/modules/docustyle/xslt/extractContent.xsl?rev=765650&view=auto
==============================================================================
--- lenya/docu/modules/docustyle/xslt/extractContent.xsl (added)
+++ lenya/docu/modules/docustyle/xslt/extractContent.xsl Thu Apr 16 14:29:35 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
+  xmlns:xhtml="http://www.w3.org/1999/xhtml"
+  xmlns="http://www.w3.org/1999/xhtml"
+  >
+  
+  
+  <xsl:template match="xhtml:html">
+    <xsl:apply-templates select="xhtml:body/node()"/>
+  </xsl:template>
+  
+  
+  <xsl:template match="@*|node()" priority="-1">
+    <xsl:copy>
+      <xsl:apply-templates select="@*|node()"/>
+    </xsl:copy>
+  </xsl:template>
+
+</xsl:stylesheet>
\ No newline at end of file

Added: lenya/docu/modules/docustyle/xslt/includeDocument.xsl
URL: http://svn.apache.org/viewvc/lenya/docu/modules/docustyle/xslt/includeDocument.xsl?rev=765650&view=auto
==============================================================================
--- lenya/docu/modules/docustyle/xslt/includeDocument.xsl (added)
+++ lenya/docu/modules/docustyle/xslt/includeDocument.xsl Thu Apr 16 14:29:35 2009
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
+  xmlns:xi="http://www.w3.org/2001/XInclude"
+  xmlns:i="http://apache.org/cocoon/include/1.0"
+  >
+  
+  <xsl:param name="pub"/>  
+  <xsl:param name="area"/> 
+  <xsl:param name="uuid"/>
+  <xsl:param name="language"/>
+  
+  <xsl:template match="xi:include">
+    <i:include src="cocoon:/{$pub}/{$area}/{$uuid}/{$language}.content">
+      <i:fallback>
+        <div id="body">
+          <p>
+            This document doesn't exist.
+          </p>
+        </div>
+      </i:fallback>
+    </i:include>
+  </xsl:template>
+  
+  <xsl:template match="@*|node()" priority="-1">
+    <xsl:copy>
+      <xsl:apply-templates select="@*|node()"/>
+    </xsl:copy>
+  </xsl:template>
+
+</xsl:stylesheet>
\ No newline at end of file

Modified: lenya/docu/modules/docustyle/xslt/page.xsl
URL: http://svn.apache.org/viewvc/lenya/docu/modules/docustyle/xslt/page.xsl?rev=765650&r1=765649&r2=765650&view=diff
==============================================================================
--- lenya/docu/modules/docustyle/xslt/page.xsl (original)
+++ lenya/docu/modules/docustyle/xslt/page.xsl Thu Apr 16 14:29:35 2009
@@ -47,6 +47,7 @@
         <link rel="stylesheet" href="/{$pub}/{$area}/docustyle/css/screen.css" media="screen" type="text/css"/>
         <link rel="stylesheet" href="/{$pub}/{$area}/docustyle/css/print.css" media="print" type="text/css"/>
         <meta content="Apache Lenya" name="generator"/>
+        <i:include src="cocoon://modules/atom/serviceLinks" strip-root="true"/>
         
         <title>Apache Lenya - <meta:value element="title" ns="http://purl.org/dc/elements/1.1/" default="error-404"
           i18n:attr="default" uuid="{$uuid}" lang="{$language}"/></title>
@@ -90,20 +91,16 @@
               </xsl:choose>
             </xsl:variable>
             <i:include src="cocoon:/menu/{$firstPathStep}"/>
+            <!--
             <div id="banners">
               <i:include src="site:/en/index/banners?format=xhtmlInclude">
                 <i:fallback>The document /index/banners doesn't exist.</i:fallback>
               </i:include>
             </div>
+            -->
             
             <div id="body">
-              <i:include src="lenya-document:{$uuid},pub={$pub},area={$area},lang={$language}?format=xhtml" strip-root="true">
-                <i:fallback>
-                  <p>
-                    This document doesn't exist.
-                  </p>
-                </i:fallback>
-              </i:include>
+              <xi:include href="#" xmlns:xi="http://www.w3.org/2001/XInclude"/>
               <xsl:call-template name="footer"/>
             </div>
             

Modified: lenya/docu/modules/forrest/config/cocoon-xconf/resourcetype-forrestDocument20.xconf
URL: http://svn.apache.org/viewvc/lenya/docu/modules/forrest/config/cocoon-xconf/resourcetype-forrestDocument20.xconf?rev=765650&r1=765649&r2=765650&view=diff
==============================================================================
--- lenya/docu/modules/forrest/config/cocoon-xconf/resourcetype-forrestDocument20.xconf (original)
+++ lenya/docu/modules/forrest/config/cocoon-xconf/resourcetype-forrestDocument20.xconf Thu Apr 16 14:29:35 2009
@@ -44,7 +44,7 @@
     <!-- "xslt-clean" format is used by webDAV (and other editors?) to "clean" xml content before it is validated/saved --> 
     <format name="xslt-clean" uri="fallback://lenya/modules/forrest/xslt/clean-xhtml.xsl"/>
     <format name="icon" uri="cocoon://modules/forrest/icon"/>
-    <format name="xhtml.xsl" uri="/modules/forrest/xslt/forrest2xhtml.xsl"/>
+    <format name="xhtml.xsl" uri="/modules/forrest/xslt/forrestDocument202xhtml.xsl"/>
     <format name="editingInserts" uri="fallback://lenya/modules/forrest/resources/editing/inserts.xml"/>
     
   </component-instance>

Added: lenya/docu/modules/forrest/resources/editing/inserts.xml
URL: http://svn.apache.org/viewvc/lenya/docu/modules/forrest/resources/editing/inserts.xml?rev=765650&view=auto
==============================================================================
--- lenya/docu/modules/forrest/resources/editing/inserts.xml (added)
+++ lenya/docu/modules/forrest/resources/editing/inserts.xml Thu Apr 16 14:29:35 2009
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<contentBlocks
+  xmlns="http://www.firedocs.org/contentblocks/1.0"
+  xmlns:cb="http://www.firedocs.org/contentblocks/1.0"
+  xmlns:xhtml="http://www.w3.org/1999/xhtml">
+</contentBlocks>
+

Modified: lenya/docu/modules/forrest/xslt/forrestDocument202xhtml.xsl
URL: http://svn.apache.org/viewvc/lenya/docu/modules/forrest/xslt/forrestDocument202xhtml.xsl?rev=765650&r1=765649&r2=765650&view=diff
==============================================================================
--- lenya/docu/modules/forrest/xslt/forrestDocument202xhtml.xsl (original)
+++ lenya/docu/modules/forrest/xslt/forrestDocument202xhtml.xsl Thu Apr 16 14:29:35 2009
@@ -22,25 +22,37 @@
   xmlns:xlink="http://www.w3.org/1999/xlink"
   xmlns="http://www.w3.org/1999/xhtml">
   
-  <xsl:import href="toc.xsl"/>
+  <xsl:include href="toc.xsl"/>
   
   <xsl:preserve-space elements="source"/>
   
-  <xsl:template match="/">
-    <div id="body">
-      <h1><xsl:value-of select="document/header/title"/></h1>
-      <xsl:apply-templates select="document/body" mode="toc"/>
-      <xsl:choose>
-        <xsl:when test="document/body/row">
-          <table width="100%">
-            <xsl:apply-templates select="document/body/*"/>
-          </table>
-        </xsl:when>
-        <xsl:otherwise>
-          <xsl:apply-templates select="document/body/*"/>
-        </xsl:otherwise>
-      </xsl:choose>
-    </div>
+  <xsl:template match="/document">
+    <html>
+      <body>
+        <xsl:apply-templates select="header/title"/>
+        <xsl:apply-templates select="body" mode="toc"/>
+        <xsl:choose>
+          <xsl:when test="document/body/row">
+            <table width="100%">
+              <xsl:apply-templates select="body"/>
+            </table>
+          </xsl:when>
+          <xsl:otherwise>
+            <xsl:apply-templates select="body"/>
+          </xsl:otherwise>
+        </xsl:choose>
+      </body>
+    </html>
+  </xsl:template>
+  
+  
+  <xsl:template match="body">
+    <xsl:apply-templates/>
+  </xsl:template>
+  
+  
+  <xsl:template match="document/header/title">
+    <h1><xsl:value-of select="."/></h1>
   </xsl:template>
   
   



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org