sitemap.xmap

来自「Hippo CMS是一个以信息为中心的开源内容管理系统。Hippo CMS目标是」· XMAP 代码 · 共 1,015 行 · 第 1/4 页

XMAP
1,015
字号
        </map:call>
      </map:match>

      <!-- Site Actions form (multiple sites workflow) -->

      <map:match pattern="siteactionsform/**.xml">
        <map:call function="handleForm">
          <map:parameter name="function" value="siteactionsform2xml"/>
          <map:parameter name="definitionURI" value="cocoon:/siteactions2formmodel/{1}.xml"/>
          <map:parameter name="resourceId" value="/{1}.xml"/>
          <map:parameter name="uriPrefix" value="{repository:files}"/>
          <map:parameter name="repositoryFiles" value="{repository:filesPath}"/>
        </map:call>
      </map:match>

      <map:match pattern="siteactionsform/**">
        <map:generate src="resources/xml/empty.xhtml"/>
        <map:serialize type="html"/>
      </map:match>

      <!-- Properties Form -->
      
      <map:match pattern="proplistform/*/**">
        <map:call function="handleForm">
          <map:parameter name="function" value="proplistform2xml"/>
          <map:parameter name="definitionURI" value="cocoon:/proplist2formmodel/{1}/{2}"/>
          <map:parameter name="documentURI" value="cocoon:/propfind/{1}/{2}"/>
          <map:parameter name="bindingURI" value="cocoon:/proplist2formbinding/{1}/{2}"/>
          <map:parameter name="resourceId" value="/{1}/{2}"/>
          <map:parameter name="uriPrefix" value="{repository:files}"/>
        </map:call>
      </map:match>
    </map:pipeline>
   
   
    <!-- REFERENCES : -->
    <map:pipeline internal-only="false" type="noncaching">
   
        <map:match pattern="countReferences/*/**">
            <map:generate src="cocoon:/checkReferences/{1}/{2}"/>
            <map:transform src="transformers/references/count.xsl">
              <map:parameter name="prefix" value="{repository:rootPath}{repository:filesPath}"/>
              <map:parameter name="rootNode" value="/{1}"/>   
              <map:parameter name="targetNode" value="/{2}"/>
              <map:parameter name="locale" value="{session-attr:locale}"/>
            </map:transform>
            <map:serialize type="xml"/>
          </map:match>
          
          <map:match pattern="on_delete.html">
            <map:generate src="resources/xml/empty.xhtml"/>
            <map:transform src="transformers/references/delete.xsl">
              <map:parameter name="count" value="{request-param:count}"/>
              <map:parameter name="uri" value="{request-param:uri}"/>
              <map:parameter name="standardUIAction" value="{request-param:standardUIAction}"/>
            </map:transform>
            <map:transform type="i18n">
              <map:parameter name="locale" value="{session-attr:locale}"/>
              <map:parameter name="default-catalogue-id" value="messages"/>
            </map:transform>
            <map:serialize type="html"/>
          </map:match>
        
    </map:pipeline>
    
    <map:pipeline type="expires" internal-only="false">
      <map:parameter name="cache-expires" value="300"/>
      <!-- we expire every 5 minutes. In the view, a refresh button should be placed 
           which purches this cache, if people want a refreshed view. This
           view can only be expires caching. Ecaching would be very inefficient [AS]
      -->
      
      <map:match pattern="references/*/**">
        <map:select type="simple">
          <map:parameter name="value" value="{globalconstants:cms-references-view}"/>
          <map:when test="on">            
            <map:aggregate element="root" label="webdav">
              <map:part element="details" src="cocoon:/checkReferences/{1}/{2}"/>
              <map:part element="properties" src="cocoon://dav/propdetail(/{1}/{2},0)"/>
            </map:aggregate>
            <map:transform src="transformers/references/references.xsl">
              <map:parameter name="prefix" value="{repository:rootPath}{repository:filesPath}"/>
              <map:parameter name="rootNode" value="/{1}"/>   
              <map:parameter name="targetNode" value="/{2}"/>
              <map:parameter name="locale" value="{session-attr:locale}"/>
            </map:transform>
            <map:transform type="i18n">
              <map:parameter name="locale" value="{session-attr:locale}"/>
              <map:parameter name="default-catalogue-id" value="messages"/>
            </map:transform>
            <map:serialize type="html"/>
          </map:when>
          <map:otherwise>
            <map:generate src="resources/xml/empty.xhtml"/>
            <map:serialize type="html"/>
          </map:otherwise>
        </map:select>
      </map:match>
      
      <!-- /REFERENCES -->
      
    </map:pipeline>
   
   
   
    <map:pipeline type="wbdvcaching" internal-only="true">
      <!--
        Does a webdav propfind request
        -->
      <map:match pattern="propfind/*/**">
        <map:generate type="hippojx" src="cocoon:/proplist2propfind/{1}/{2}">
          <map:parameter name="target" value="{repository:files}/{1}/{2}"/>
          <map:parameter name="depth" value="0"/>
        </map:generate>
        <map:transform type="webdav"/>
        <map:serialize type="xml"/>
      </map:match>
    </map:pipeline>
    
    <map:pipeline internal-only="false" type="noncaching">
      <!-- asset preview thumbnail -->
      <map:match pattern="assetpreview/**-*X*.*">
        <map:match pattern="assetpreview/**-*X.*">
          <map:read src="{repository:files}/{1}.{3}" type="image">
            <map:parameter name="width" value="{2}"/>
          </map:read>
        </map:match>
        <map:match pattern="assetpreview/**-X*.*">
          <map:read src="{repository:files}/{1}.{3}" type="image">
            <map:parameter name="height" value="{2}"/>
          </map:read>
        </map:match>
        <map:read src="{repository:files}/{1}.{4}" type="image">
          <map:parameter name="width" value="{2}"/>
          <map:parameter name="height" value="{3}"/>
        </map:read>
      </map:match>
      
      <!--
        {1} = document uri relative to {repository:files}
        -->
      <map:match pattern="show-document-history(**.*)">
        <!--map:generate src="cocoon://actions/getVersions({1})"/-->
        <map:aggregate element="root">
          <map:part element="versions" src="cocoon://actions/getVersions({1}.{2})"/>
          <map:part element="result" src="cocoon:/result.jx"/>
        </map:aggregate>
        <map:transform src="transformers/document-history/document-history.xsl">
          <map:parameter name="resourceId" value="{1}.{2}"/>
          <map:parameter name="resourceExtension" value="{2}"/>
          <map:parameter name="filesPath" value="{repository:filesPath}"/>
          <map:parameter name="locale" value="{session-attr:locale}"/>
          <map:parameter name="documentCaption" value="{request-param:documentCaption}"/>
        </map:transform>
        <map:transform type="i18n">
          <map:parameter name="locale" value="{session-attr:locale}"/>
          <map:parameter name="default-catalogue-id" value="messages"/>
        </map:transform>
        <map:serialize type="html"/>
      </map:match>
      
      <!--
        {1} = document uri relative to webdav://
        -->
      <map:match pattern="document-version(**)">
        <map:read src="{repository:root}/..{1}"/>
<!--        <map:generate src="{repository:root}/..{1}"/>
        <map:serialize type="xml"/>
-->      </map:match>

      <!--
        {1} = document uri relative to {repository:files}
        -->
      <map:match pattern="document-history(**)">
        <map:call function="documentHistory">
          <map:parameter name="resourceId" value="{1}"/>
          <map:parameter name="uriPrefix" value="{repository:files}"/>
          <map:parameter name="revertToVersion" value="{request-param:revertToVersion}"/>
        </map:call>
      </map:match>

      <!-- for open office file import -->
      <map:match type="regexp" pattern="content/as(.+)/([0-9a-fA-F]\{32})$">
		<map:aggregate element="root" label="content">
			<map:part src="{globalconstants:cms-fileimportservice-url}/{2}/meta.xml"/>
			<map:part src="{globalconstants:cms-fileimportservice-url}/{2}/styles.xml"/>
			<map:part src="{globalconstants:cms-fileimportservice-url}/{2}/content.xml"/>
		</map:aggregate>
      	<map:select type="resource-exists">
      		<!-- documenttype specific path -->
      		<map:when test="{model://resource[@name='{1}']/import}/import.xsl">
      			<map:transform src="{model://resource[@name='{1}']/import}/import.xsl">
      				<map:parameter name="defaultBinariesLocation" value="/binaries"/>
      				<map:parameter name="userBinariesLocation" value="{request-attr:binariesLocation}"/>
      				<map:parameter name="documentUid" value="{2}"/>
      				<map:parameter name="documentType" value="{1}"/>
      			</map:transform>
      		</map:when>
      		<!-- cocoon:deploy path -->
      		<map:when test="{globalconstants:cms-extensionspath}/fileimport/import.xsl">
      			<map:transform src="{globalconstants:cms-extensionspath}/fileimport/import.xsl">
      				<map:parameter name="defaultBinariesLocation" value="/binaries"/>
      				<map:parameter name="userBinariesLocation" value="{request-attr:binariesLocation}"/>
      				<map:parameter name="documentUid" value="{2}"/>
      				<map:parameter name="documentType" value="{1}"/>
      			</map:transform>
      		</map:when>
      		<!-- cocoon:install path -->
      		<map:when test="../{globalconstants:cms-extensionspath}/fileimport/import.xsl">
      			<map:transform src="../{globalconstants:cms-extensionspath}/fileimport/import.xsl">
      				<map:parameter name="defaultBinariesLocation" value="/binaries"/>
      				<map:parameter name="userBinariesLocation" value="{request-attr:binariesLocation}"/>
      				<map:parameter name="documentUid" value="{2}"/>
      				<map:parameter name="documentType" value="{1}"/>
      			</map:transform>
      		</map:when>
      		<map:otherwise>
      			<map:transform src="transformers/fileimport/import.xsl">
      				<map:parameter name="defaultBinariesLocation" value="/binaries"/>
      				<map:parameter name="userBinariesLocation" value="{request-attr:binariesLocation}"/>
      				<map:parameter name="documentUid" value="{2}"/>
      				<map:parameter name="documentType" value="{1}"/>
      			</map:transform>
      		</map:otherwise>
      	</map:select>
<!--
        <map:generate src="{globalconstants:cms-fileimportservice-url}/{2}/content.xml" label="content"/>
        <map:transform type="ooo-style-canonicalize" label="canonical"/>
        <map:select type="resource-exists">
           <map:when test="transformers/fileimport/preformwordfile.xsl">
               <map:transform src="transformers/fileimport/preformwordfile.xsl"/>
            </map:when>
        </map:select>
        <map:transform src="{model://resource[@name='{1}']/import}">
          <map:parameter name="binariesLocation" value="{request-attr:binariesLocation}"/>
        </map:transform>
-->
        <map:serialize/>
      </map:match>
      
      <map:match pattern="resource-selector.html">
        <map:generate type="jx" src="jx/resource-selector.xhtml"/>
        <map:transform type="i18n">
          <map:parameter name="locale" value="{session-attr:locale}"/>
          <map:parameter name="default-catalogue-id" value="messages"/>
        </map:transform>
        <map:serialize type="html"/>
      </map:match>

    </map:pipeline>
  </map:pipelines>
</map:sitemap>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?