Foundry: Documentation

git-svn-id: https://svn.libreccm.org/ccm/trunk@3381 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2015-05-07 10:14:35 +00:00
parent ed33bc8f77
commit d03c5d4a96
10 changed files with 4566 additions and 3203 deletions

File diff suppressed because it is too large Load Diff

View File

@ -148,7 +148,6 @@
</xsl:template>
<xsl:template name="process-content-item-detail">
<xsl:param name="contentitem-tree"/>
<xsl:param name="content-section" select="''"/>
<xsl:param name="mode" select="'detail'"/>

View File

@ -28,6 +28,23 @@
exclude-result-prefixes="xsl xs bebop cms foundry nav ui"
version="2.0">
<foundry:doc-file>
<foundry:doc-file-title>Tags for ccm-cms-types-bookmark</foundry:doc-file-title>
<foundry:doc-file-desc>
<p>
Tags for outputting data from the
<code>ccm-cms-types-bookmark</code> content type.
</p>
</foundry:doc-file-desc>
</foundry:doc-file>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the description of a bookmark.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//bookmark-description">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -41,6 +58,14 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Extracts the URL of the bookmark and passes the URL to the child
tags.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//bookmark-link">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -58,6 +83,13 @@
</xsl:apply-templates>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the URL of the bookmark as text.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//bookmark-url">
<xsl:param name="contentitem-tree" tunnel="yes"/>

View File

@ -28,6 +28,26 @@
exclude-result-prefixes="xsl xs bebop cms foundry nav ui"
version="2.0">
<foundry:doc-file>
<foundry:doc-file-title>
Tags for ccm-cms-types-contact
</foundry:doc-file-title>
<foundry:doc-file-desc>
<p>
These tags are used to output the information of a contact
content item.
</p>
</foundry:doc-file-desc>
</foundry:doc-file>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Root tag for displaying data from the person item which is
assigned to a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//contact-person">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -38,74 +58,41 @@
</xsl:apply-templates>
</xsl:template>
<!--<xsl:template match="content-item-layout//contact-person-givenname">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:value-of select="$contentitem-tree/person/givenname"/>
</xsl:template>
<xsl:template match="content-item-layout//contact-person-surname">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:value-of select="$contentitem-tree/person/surname"/>
</xsl:template>
<xsl:template match="content-item-layout//contact-person-titlepre">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:value-of select="$contentitem-tree/person/titlepre"/>
</xsl:template>
<xsl:template match="content-item-layout//contact-person-titlepost">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:value-of select="$contentitem-tree/person/titlepost"/>
</xsl:template>
<xsl:template match="content-item-layout//if-contact-person-givenname">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:if test="string-length($contentitem-tree/person/givenname) &gt; 0">
<xsl:apply-templates/>
</xsl:if>
</xsl:template>
<xsl:template match="content-item-layout//if-contact-person-surname">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:if test="string-length($contentitem-tree/person/surname) &gt; 0">
<xsl:apply-templates/>
</xsl:if>
</xsl:template>
<xsl:template match="content-item-layout//if-contact-person-titlepre">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:if test="string-length($contentitem-tree/person/titlepre) &gt; 0">
<xsl:apply-templates/>
</xsl:if>
</xsl:template>
<xsl:template match="content-item-layout//if-contact-person-titlepost">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:if test="string-length($contentitem-tree/person/titlepost) &gt; 0">
<xsl:apply-templates/>
</xsl:if>
</xsl:template>-->
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Root tag for outputting the contact entries of a contact.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//contact-entries">
<xsl:param name="contentitem-tree" tunnel="yes"/>
<xsl:if test="$contentitem-tree/contactentries">
<xsl:apply-templates>
<xsl:with-param name="contact-entries"
tunnel="yes"
select="$contentitem-tree/contactentries"/>
tunnel="yes"
select="$contentitem-tree/contactentries"/>
</xsl:apply-templates>
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
This tag is used to output a specific contact entry.
</p>
</foundry:doc-desc>
<foundry:doc-attributes>
<foundry:doc-attribute name="key">
<p>
The key of the contact entry to show. The tag itself does
not generate any output. It only extracts the informations
for the contact entry and passes them to its child tags.
</p>
</foundry:doc-attribute>
</foundry:doc-attributes>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(), 'contact-entries')]//contact-entry">
<xsl:param name="contact-entries" tunnel="yes"/>
@ -123,12 +110,57 @@
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the label of the contact entry as provided in data tree.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(), 'contact-entries')]//contact-entry//contact-entry-label">
<xsl:param name="label" tunnel="yes"/>
<xsl:value-of select="$label"/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the data of the contact entry. If the value starts
with
</p>
<ul>
<li>
<code>http://</code>
</li>
<li>
<code>https://</code>
</li>
<li>
<code>www</code>
</li>
</ul>
<p>
and the <code>autolink</code> attribute is not set to
<code>false</code> the entry rendered as link, otherwise
as text.
</p>
<p>
Likewise if the value contains and <code>@</code> character
and the <code>autolink</code> attribute is not set to
<code>false</code> the entry rendered as E-Mail link.
</p>
</foundry:doc-desc>
<foundry:doc-attributes>
<foundry:doc-attribute name="autolink" type="boolean">
<p>
If set to <code>true</code> or if not present URLs
are automatically converted to HTML links. If set to
<code>false</code> URLs are displayed as text.
</p>
</foundry:doc-attribute>
</foundry:doc-attributes>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(), 'contact-entries')]//contact-entry//contact-entry-value">
<xsl:param name="value" tunnel="yes"/>
@ -153,6 +185,15 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of a contact entry as link. This used if the
automatic link detection of the <code>contact-entry-value</code>
tag does not work.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(), 'contact-entries')]//contact-entry//contact-entry-value-as-link">
<xsl:param name="value" tunnel="yes"/>
@ -161,6 +202,13 @@
</xsl:apply-templates>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Root tag for outputting the address assigned to contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//contact-address">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -173,36 +221,84 @@
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the address text property of an address assigned to
a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(),'-address')]//address-text">
<xsl:param name="address" tunnel="yes"/>
<xsl:value-of select="$address/address"/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the postal code property of an address assigned to
a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(),'-address')]//postal-code">
<xsl:param name="address" tunnel="yes"/>
<xsl:value-of select="$address/postalCode"/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the city property of an address assigned to
a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(),'-address')]//city">
<xsl:param name="address" tunnel="yes"/>
<xsl:value-of select="$address/city"/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the state property of an address assigned to
a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(),'-address')]//state">
<xsl:param name="address" tunnel="yes"/>
<xsl:value-of select="$address/state"/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the country property of an address assigned to
a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(),'-address')]//country">
<xsl:param name="address" tunnel="yes"/>
<xsl:value-of select="$address/country"/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the iso country code property of an address assigned to
a contact item.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="content-item-layout//*[ends-with(name(),'-address')]//iso-country-code">
<xsl:param name="address" tunnel="yes"/>

View File

@ -28,6 +28,25 @@
exclude-result-prefixes="xsl xs bebop cms foundry nav ui"
version="2.0">
<foundry:doc-file>
<foundry:doc-file-title>
Tags for ccm-cms-types-event
</foundry:doc-file-title>
<foundry:doc-desc>
<p>
This tags are used to output the values of special properties
of the Event type provided by the ccm-cms-types-event module.
</p>
</foundry:doc-desc>
</foundry:doc-file>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the start date of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//start-date">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -48,6 +67,13 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the end date of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//end-date">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -68,6 +94,13 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the start time of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//start-time">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -88,6 +121,13 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the end time of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="/content-item-layout//end-time">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -108,6 +148,13 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of teh location property of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="location">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -117,6 +164,13 @@
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of the location text property of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="location//location-text">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -132,6 +186,13 @@
</xsl:choose>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of the main contributor property of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="main-contributor">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -141,6 +202,14 @@
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of the main contributor text property of an
event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="main-contributor//main-contributor-text">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -157,6 +226,13 @@
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of the date addendum property of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="event-date-addendum">
<xsl:param name="contentitem-tree" tunnel="yes"/>
@ -166,6 +242,13 @@
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the value of the event date addendum text of an event.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="event-date-addendum//event-date-addendum-text">
<xsl:param name="contentitem-tree" tunnel="yes"/>

View File

@ -28,7 +28,8 @@
<foundry:doc-file-title>Data tags</foundry:doc-file-title>
<foundry:doc-file-desc>
<p>
These tags can be used to display several informations from the XML provided by CCM.
These tags can be used to display several informations from the
XML provided by CCM.
</p>
</foundry:doc-file-desc>
</foundry:doc-file>
@ -53,12 +54,13 @@
<foundry:doc section="user"
type="template-tag">
<foundry:doc-desc>
Outputs a static text which is retrieved from a file in the <code>texts</code>
directory. If the <code>module</code> attribute is not present, the
<code>texts/global.xml</code> file is used. Otherwise the file provided by the
module element ist used. The key is the content
of the element. If at least one of the attributes <code>id</code>, <code>class</code>
or <code>with-colorset</code> is present at the attribute, the text is wrapped in a
Outputs a static text which is retrieved from a file in the
<code>texts</code> directory. If the <code>module</code> attribute
is not present, the <code>texts/global.xml</code> file is used.
Otherwise the file provided by the module element ist used. The key
is the content of the element. If at least one of the attributes
<code>id</code>, <code>class</code> or <code>with-colorset</code> is
present at the attribute, the text is wrapped in a
<code>span</code> element.
</foundry:doc-desc>
<foundry:doc-attributes>

View File

@ -31,11 +31,67 @@
exclude-result-prefixes="xsl xs bebop cms foundry nav ui"
version="2.0">
<xsl:template match="language-selector">
<foundry:doc-file>
<foundry:doc-file-title>Language selector</foundry:doc-file-title>
<foundry:doc-file-desc>
<p>
The tags provided by this file can be used to create a language
selector control which allow the visitor of a site to switch
the language of the site manually. As usual, the tags itself
to not generate much HTML. Instead they only extract several
parameters from the data tree XML from CCM and pass it to their
child tags. The HTML for the language selector is completly
definied by the designer.
</p>
<p>
An example for a language selector:
</p>
<pre>
&lt;language-selector&gt;
&lt;ul&gt;
&lt;language&gt;
&lt;li&gt;
&lt;a&gt;
&lt;span&gt;
&lt;language-name&gt;
&lt;/span&gt;
&lt;/a&gt;
&lt;/li&gt;
&lt;/language&gt;
&lt;/ul&gt;
&lt;/language-selector&gt;
</pre>
<p>
In the example above all available languages are put into a
<code>&lt;ul&gt;</code>. The URL/value for the <code>href</code>
of the <code>&lt;a&gt;</code> element in provided by the
surrounding <code>&lt;language&gt;</code> tag, therefore the
<code>&lt;a&gt;</code> element in the example has no
<code>href</code> attribute. The name of the language is put
into a <code>&lt;span&gt;</code> to make formatting easier.
</p>
</foundry:doc-file-desc>
</foundry:doc-file>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Root tag for a language selector control.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="language-selector">
<xsl:apply-templates/>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Encloses the HTML for one specific language entry in a language
selector.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="language-selector//language">
<xsl:variable name="language-layout-tree" select="./*"/>
@ -53,6 +109,13 @@
</xsl:for-each>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Outputs the name of the current language.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="language-selector//language//language-name">
<xsl:param name="language-name" tunnel="yes"/>

View File

@ -35,8 +35,8 @@
<foundry:doc-file-title>Loaders</foundry:doc-file-title>
<foundry:doc-file-desc>
<p>
This tags are used to load resources required by the generated HTML documents,
for example CSS files and JavaScript files.
This tags are used to load resources required by the generated
HTML documents, for example CSS files and JavaScript files.
</p>
</foundry:doc-file-desc>
</foundry:doc-file>
@ -322,6 +322,20 @@
</xsl:choose>
</xsl:function>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
This tag can be used to load the
<a href="http://fancyapps.com/fancybox/">Fancybox</a>
gallery component. The tag includes all JavaScript files
and CSS files needed by Fancybox.
</p>
<p>
<em>Fancybox</em> is based on jQuery, therefore it is necessary
to include jQuery also.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="load-fancybox">
<!-- Add mousewheel plugin (this is optional) -->
<script type="text/javascript"
@ -359,8 +373,28 @@
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
This tag is used to include a Favicon. It is stricly recommended
to use this tag to include a Favicon instead of doing it
manually because this tag generates the correct path
automatically, based on the path of the theme.
</p>
</foundry:doc-desc>
<foundry:doc-attributes>
<foundry:doc-attribute name="file">
<p>
The name of the Favicon file relative to the theme
directory.
</p>
</foundry:doc-attribute>
</foundry:doc-attributes>
</foundry:doc>
<xsl:template match="load-favicon">
<link rel="shortcut icon" type="image/x-icon" href="{foundry:gen-path(./@file)}" />
<link rel="shortcut icon"
type="image/x-icon"
href="{foundry:gen-path(./@file)}" />
</xsl:template>
<foundry:doc section="user" type="template-tag">

View File

@ -30,8 +30,25 @@
exclude-result-prefixes="xsl xs bebop foundry ui"
version="2.0">
<xsl:template match="object-list">
<foundry:doc-file>
<foundry:doc-file-title>Object lists</foundry:doc-file-title>
<foundry:doc-file-desc>
<p>
This tags are used to create the HTML representation of
object lists.
</p>
</foundry:doc-file-desc>
</foundry:doc-file>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Root tag for an object list. Checks if there is an object list
and outputs it using the HTML definied in it if there is any.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="object-list">
<xsl:variable name="object-list-id" select="./@id"/>
<xsl:if test="$data-tree//nav:simpleObjectList[@id = $object-list-id]
@ -70,6 +87,14 @@
</xsl:if>
</xsl:template>
<foundry:doc section="user" type="template-tag">
<foundry:doc-desc>
<p>
Defines the HTML for outputting an individual object in an
object list.
</p>
</foundry:doc-desc>
</foundry:doc>
<xsl:template match="object-list//object-list-item" name="object-list-items">
<xsl:param name="object-list-datatree" tunnel="yes"/>
<xsl:param name="class-first" select="''"/>

View File

@ -19,18 +19,38 @@
</foundry:doc-file-desc>
</foundry:doc-file>
<foundry:doc-desc>
<foundry:doc-desc>
<p>
Outputs the name of the current subsite. The text shown
can be customised using the <code>texts/subsite-banner.xml</code>
file. The key is the sitename provided in the data tree XML.
</p>
<p>
Using the <code>conf/subsite-banner.xml</code> file it is also
possible to hide the name of specific subsites. To this add a
setting of the form <code>$sitename/exclude</code> to the
<code>conf/subsite-banner.xml</code> file.
</p>
</foundry:doc-desc>
</foundry:doc-desc>
<xsl:template match="subsite-name">
<xsl:variable name="subsite-banner-text">
<xsl:value-of select="foundry:get-static-text('subsite-banner', $data-tree//ui:siteBanner[@bebop:classname='com.arsdigita.subsite.ui.SubSiteBanner']/@sitename)"/>
<xsl:value-of select="foundry:get-static-text('subsite-banner',
$data-tree//ui:siteBanner[@bebop:classname='com.arsdigita.subsite.ui.SubSiteBanner']/@sitename)"/>
</xsl:variable>
<xsl:variable name="exclude">
<xsl:value-of select="foundry:get-setting('subsite-banner', concat($data-tree//ui:siteBanner[@bebop:classname='com.arsdigita.subsite.ui.SubSiteBanner']/@sitename, '/exclude'), 'false')"/>
<xsl:value-of select="foundry:get-setting('subsite-banner',
concat($data-tree//ui:siteBanner[@bebop:classname='com.arsdigita.subsite.ui.SubSiteBanner']/@sitename, '/exclude'),
'false')"/>
</xsl:variable>
<xsl:if test="$exclude != 'true'">
<xsl:choose>
<xsl:when test="(string-length($subsite-banner-text) &lt; 1) or (contains(subsite-banner-text, 'missing translation'))">
<xsl:when test="(string-length($subsite-banner-text) &lt; 1)
or (contains(subsite-banner-text,
'missing translation'))">
<xsl:value-of select="$data-tree//ui:siteBanner[@bebop:classname='com.arsdigita.subsite.ui.SubSiteBanner']/@sitename"/>
</xsl:when>
<xsl:otherwise>