libreccm-legacy/ccm-sci-bundle/web/themes/foundry/doc/foundry-documentation.html

2119 lines
69 KiB
HTML

<!DOCTYPE html
SYSTEM "about:legacy-compat">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" id="site">
<head>
<meta name="generator" content=" "></meta>
<title>
Foundry Documentation
</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8"></meta>
<link href="/home/jensp/pwi/libreccm/ccm/trunk/ccm-sci-bundle/web/themes/foundry/images/favicon.png" type="image/png" rel="shortcut icon"></link>
</head>
<body><span id="top"></span><a href="#startcontent" accesskey="S" class="nav-hide" title="">Skip navigation</a>
<header>
The Foundry Theming Engine for LibreCCM
</header>
<div>
<h1>The Foundry Theming Enine for LibreCCM</h1>
<p>Jens Pelzetter</p>
</div>
<nav>
<ul class="chapter-list">
<li class="chapter-entry">
<a href="#overview">
Overview
</a>
<ul class="section-list">
<li class="section-entry">
<a href="#overview">
Overview
</a>
</li>
<li class="section-entry">
<a href="#this-manual">
This manual
</a>
</li>
</ul>
</li>
<li class="chapter-entry">
<a href="#user-manual">
User Manual
</a>
<ul class="section-list">
<li class="section-entry">
<a href="#about-foundry">
About Foundry
</a>
</li>
<li class="section-entry">
<a href="#layout-templates">
Layout templates
</a>
</li>
<li class="section-entry">
<a href="#css-files">
CSS files
</a>
</li>
<li class="section-entry">
<a href="#template-tags-reference">
Templates Tags Reference
</a>
</li>
</ul>
</li>
<li class="chapter-entry">
<a href="#developer-manual">
Developer Manual
</a>
<ul class="section-list">
<li class="section-entry">
<a href="#foundry-structure">
The structure of Foundry
</a>
</li>
<li class="section-entry">
<a href="#coding-style">
Coding style
</a>
</li>
<li class="section-entry">
<a href="#doc-system">
The documentation system of Foundry
</a>
</li>
<li class="section-entry">
<a href="#function-reference">
XSL Templates and Function references
</a>
</li>
</ul>
</li>
</ul>
</nav>
<main id="startcontent">
<h1>
Foundry Documentation
</h1>
<article>
<h1>
Overview
</h1>
<section>
<h1>
Overview
</h1>
<main xmlns="">
Placeholder
</main>
</section>
<section>
<h1>
This manual
</h1>
<main xmlns="">
Placeholder
</main>
</section>
</article>
<article>
<h1>
User Manual
</h1>
<section>
<h1>
About Foundry
</h1>
<main xmlns="">
Placeholder
</main>
</section>
<section>
<h1>
Layout templates
</h1>
<main xmlns="">
Placeholder
</main>
</section>
<section>
<h1>
CSS files
</h1>
<main xmlns="">
Placeholder
</main>
</section>
<section>
<h1>
Templates Tags Reference
</h1>
<section id="fragment-layout" class="template-tag">
<h1>
fragment-layout
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:cms="http://www.arsdigita.com/cms/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:nav="http://ccm.redhat.com/navigation" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Root element for generating a HTML fragment instead of a complete HTML document.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
</ul>
</section>
<section id="page-layout" class="template-tag">
<h1>
page-layout
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:cms="http://www.arsdigita.com/cms/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:nav="http://ccm.redhat.com/navigation" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Root element of a template. Generates the
<code>&lt;html&gt;</code> root element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
</ul>
</section>
<section id="show-page-title" class="template-tag">
<h1>
show-page-title
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:foundry="http://foundry.libreccm.org">
Outputs the title of the current page. For a content item, this is
the title of the content item. For more details please refer to
the documentation of the <code>foundry:title</code> function.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
</ul>
</section>
<section id="show-text" class="template-tag">
<h1>
show-text
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:foundry="http://foundry.libreccm.org">
Outputs a static text which is retrieved from the
<code>static-texts/global.xml</code> file in the layout file. 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>
</div>
<h2>Attributes</h2>
<dl>
<dt>
id
</dt>
<dd>
</dd>
<dt>
class
</dt>
<dd>
</dd>
<dt>
with-colorset
</dt>
<dd>
<code xmlns="" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:foundry="http://foundry.libreccm.org">span</code>
</dd>
</dl>
<h2>See also</h2>
<ul>
</ul>
</section>
<section id="a" class="template-tag">
<h1>
a
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
<p>
Generates a HTML <code>a</code> element. There are some differences to the
<code>a</code> element in HTML. First, there two attribute for the URL:
</p>
<dl>
<dt>
<code>href-property</code>
</dt>
<dd>
The name of a property of the current object which contains the URL for the
link.
</dd>
<dt>
<dt>
<code>href-static</code>
</dt>
<dd>
A static URL.
</dd>
</dt>
</dl>
<p>
The third variant for providing an URL is to call the template with a href
parameter in the XSL.
</p>
</foundry:doc-desc>
</div>
<h2>Attributes</h2>
<dl>
<dt>
download
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Value for the HTML5 <code>download</code> attribute.
</p>
</dd>
<dt>
href-property
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
The name of a property (aka the name of an XML element in the data-tree)
containing the URL of the link.
</p>
</dd>
<dt>
href
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
A static URL for the link.
</p>
</dd>
<dt>
href-lang
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
The language of the target of the link.
</p>
</dd>
<dt>
rel
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
The relationship of the linking document with the target document.
</p>
</dd>
<dt>
title-static
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
A key which identifies the translated title in <code>lang/global.xml</code>.
</p>
</dd>
<dt>
title
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Static, not translated title of the link.
</p>
</dd>
<dt>
type
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Value for the <code>title</code> attribute of the link.
</p>
</dd>
</dl>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/text-level-semantics.html#the-a-element" title="http://www.w3.org/TR/html5/text-level-semantics.html#the-a-element">
http://www.w3.org/TR/html5/text-level-semantics.html#the-a-element
</a>
</li>
</ul>
</section>
<section id="aside" class="template-tag">
<h1>
aside
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML5 <code>aside</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/sections.html#the-aside-element" title="http://www.w3.org/TR/html5/sections.html#the-aside-element">
http://www.w3.org/TR/html5/sections.html#the-aside-element
</a>
</li>
</ul>
</section>
<section id="body" class="template-tag">
<h1>
body
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates the HTML <code>body</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/sections.html#the-body-element" title="http://www.w3.org/TR/html5/sections.html#the-body-element">
http://www.w3.org/TR/html5/sections.html#the-body-element
</a>
</li>
</ul>
</section>
<section id="dd" class="template-tag">
<h1>
dd
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
<p>
A definition of term in a definition list.
</p>
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/grouping-content.html#the-dd-element" title="http://www.w3.org/TR/html5/grouping-content.html#the-dd-element">
http://www.w3.org/TR/html5/grouping-content.html#the-dd-element
</a>
</li>
</ul>
</section>
<section id="div" class="template-tag">
<h1>
div
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML <code>div</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/grouping-content.html#the-div-element" title="http://www.w3.org/TR/html5/grouping-content.html#the-div-element">
http://www.w3.org/TR/html5/grouping-content.html#the-div-element
</a>
</li>
</ul>
</section>
<section id="divIfNotEmpty" class="template-tag">
<h1>
divIfNotEmpty
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML <code>div</code> element, but only if the content is not empty.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="#div" title="#div">
#div
</a>
</li>
</ul>
</section>
<section id="dl" class="template-tag">
<h1>
dl
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
<p>
Generates a definition list.
</p>
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/grouping-content.html#the-dl-element" title="http://www.w3.org/TR/html5/grouping-content.html#the-dl-element">
http://www.w3.org/TR/html5/grouping-content.html#the-dl-element
</a>
</li>
</ul>
</section>
<section id="dt" class="template-tag">
<h1>
dt
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
<p>
A term in a definition list.
</p>
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/grouping-content.html#the-dt-element" title="http://www.w3.org/TR/html5/grouping-content.html#the-dt-element">
http://www.w3.org/TR/html5/grouping-content.html#the-dt-element
</a>
</li>
</ul>
</section>
<section id="footer" class="template-tag">
<h1>
footer
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Creates a HTML5 footer element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/sections.html#the-footer-element" title="http://www.w3.org/TR/html5/sections.html#the-footer-element">
http://www.w3.org/TR/html5/sections.html#the-footer-element
</a>
</li>
</ul>
</section>
<section id="head" class="template-tag">
<h1>
head
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Creates the HTML <code>head</code> element which may contain meta data and stylesheets
etc. It also generates some meta data like the generator meta information or the
language meta information.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/document-metadata.html#the-head-element" title="http://www.w3.org/TR/html5/document-metadata.html#the-head-element">
http://www.w3.org/TR/html5/document-metadata.html#the-head-element
</a>
</li>
</ul>
</section>
<section id="header" class="template-tag">
<h1>
header
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML5 <code>header</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/sections.html#the-header-element" title="http://www.w3.org/TR/html5/sections.html#the-header-element">
http://www.w3.org/TR/html5/sections.html#the-header-element
</a>
</li>
</ul>
</section>
<section id="main" class="template-tag">
<h1>
main
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML5 <code>main</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/grouping-content.html#the-main-element" title="http://www.w3.org/TR/html5/grouping-content.html#the-main-element">
http://www.w3.org/TR/html5/grouping-content.html#the-main-element
</a>
</li>
</ul>
</section>
<section id="meta" class="template-tag">
<h1>
meta
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a meta data field in in the <code>head</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="#head" title="#head">
#head
</a>
</li>
<li>
<a href="http://www.w3.org/TR/html5/document-metadata.html#the-meta-element" title="http://www.w3.org/TR/html5/document-metadata.html#the-meta-element">
http://www.w3.org/TR/html5/document-metadata.html#the-meta-element
</a>
</li>
</ul>
</section>
<section id="nav" class="template-tag">
<h1>
nav
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML5 <code>nav</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/sections.html#the-nav-element" title="http://www.w3.org/TR/html5/sections.html#the-nav-element">
http://www.w3.org/TR/html5/sections.html#the-nav-element
</a>
</li>
</ul>
</section>
<section id="script" class="template-tag">
<h1>
script
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
<p>
Used to include a script (usally a JavaScript). The script is either provided
a content of the element or as an external file. Embedded scripts should only be used
for small parts of code, like the code for activating jQuery plugins for some elements.
Everything which is longer than five or six lines should be put into a external file
in the scripts directory of the theme.
</p>
</foundry:doc-desc>
</div>
<h2>Attributes</h2>
<dl>
<dt>
absolute
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
If set to <code>true</code> the path in the <code>src</code> is used as it is.
</p>
</dd>
<dt>
src
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
The path of the script to include. If the <code>absolute&gt;</code> attribute is not
set (or not set to <code>true</code> the path is interpreted relative to the
theme directory. For example the path of a script included using
</p><pre xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
&lt;script type="text/javascript" src="scripts/example.js"/&gt;
</pre><p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
in the a theme named <code>my-theme</code> at the server
<code>http://www.example.org</code> is altered to the absolute path
<code>http://www.example.org/themes/published-themedir/itb/scripts/example.js</code>.
If the <code>absolute</code> attribute is set to <code>true</code> the path is not
altered. One usecase for an absolute path is to load an script from a content delivery
network.
</p>
</dd>
<dt>
type
</dt>
<dd>
<p xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
The type of the script. Usally this is <code>text/javascript</code>. If the attribute
is not set in the layout template, it is automatically set to
<code>text/javascript</code>.
</p>
</dd>
</dl>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/scripting-1.html#the-script-element" title="http://www.w3.org/TR/html5/scripting-1.html#the-script-element">
http://www.w3.org/TR/html5/scripting-1.html#the-script-element
</a>
</li>
</ul>
</section>
<section id="section" class="template-tag">
<h1>
section
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a HTML5 <code>section</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/text-level-semantics.html#the-span-element" title="http://www.w3.org/TR/html5/text-level-semantics.html#the-span-element">
http://www.w3.org/TR/html5/text-level-semantics.html#the-span-element
</a>
</li>
</ul>
</section>
<section id="span" class="template-tag">
<h1>
span
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Generates a <code>span</code> element.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/text-level-semantics.html#the-span-element" title="http://www.w3.org/TR/html5/text-level-semantics.html#the-span-element">
http://www.w3.org/TR/html5/text-level-semantics.html#the-span-element
</a>
</li>
</ul>
</section>
<section id="title" class="template-tag">
<h1>
title
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
<p>
Generates the title in the HTML head. The other elements are allowed in the
<code>&lt;title&gt;</code> tag:
</p>
<ul>
<li>
<code>show-text</code>
</li>
<li>
<code>show-page-title</code>
</li>
</ul>
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
<li>
<a href="http://www.w3.org/TR/html5/document-metadata.html#the-title-element" title="http://www.w3.org/TR/html5/document-metadata.html#the-title-element">
http://www.w3.org/TR/html5/document-metadata.html#the-title-element
</a>
</li>
<li>
<a href="#show-text" title="#show-text">
#show-text
</a>
</li>
<li>
<a href="#show-page-title" title="#show-page-title">
#show-page-title
</a>
</li>
</ul>
</section>
<section id="load-css-files" class="template-tag">
<h1>
load-css-files
</h1>
<div>
<foundry:doc-desc xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:bebop="http://www.arsdigita.com/bebop/1.0" xmlns:foundry="http://foundry.libreccm.org" xmlns:ui="http://www.arsdigita.com/ui/1.0">
Invokes the foundry CSS loader. The CSS loader will parse the file
<code>conf/css-files.xml</code> to determine for which CSS an
<code>&lt;link&gt;</code> element should be added to the HTML output. For a full
explanation please refer to the <a href="#user_css-files">CSS files section</a>.
</foundry:doc-desc>
</div>
<h2>See also</h2>
<ul>
</ul>
</section>
The entry point for creating Foundry documentation.
</section>
</article>
<article>
<h1>
Developer Manual
</h1>
<section>
<h1>
The structure of Foundry
</h1>
<main xmlns="">
Placeholder
</main>
</section>
<section>
<h1>
Coding style
</h1>
<main xmlns="">
<p>
This document describes the coding conventions for the Foundry theming engine.
</p>
<h2>Naming</h2>
<p>
The naming rules described here apply to all names: Names of layout elements,
XSL template names, EXSLT functions, files, ids and classes (in the
<code>class</code> attribute).
</p>
<p>
Use the dash "-" to separate parts of a name instead of camel case or the
underscore. For example: <code>get-setting</code> instead of <code>getSetting</code> or
<code>set_setting</code>.
</p>
<p>
Names should be lowercase.
</p>
<h2>Namespace declarations</h2>
<p>
In the XSL files, XML namespaces are only defined at the
<code>&lt;xsl:stylesheet&gt;</code> element. The XSL namespace is the first one is
declared first. The other namespace follow in alphabetic order (ordered by their
prefix).
</p>
<h2>Indention, line length and formating</h2>
<p>
Indention is done using spaces. Indention depth is four (4) spaces per level.
</p>
<p>
Try to keep the line length below 100 characters per line. Because of some restrictions
of XML this will be possible in every case.
</p>
<p>
Insert a line break after each attribute of an XML element. The first attribute
is on the same line as the element. For example write
</p>
<pre>
&lt;xsl:param name=example-param"
select="'example'"/&gt;
</pre>
<p>
instead of
</p>
<pre>
&lt;xsl:param name=example-param" select="'example'"/&gt;
</pre>
</main>
</section>
<section>
<h1>
The documentation system of Foundry
</h1>
<main xmlns="">
Placeholder
</main>
</section>
<section>
<h1>
XSL Templates and Function references
</h1>
The version of Foundry. Kept in sync with the version of CCM, so the first version
was be 2.2.3.
The path the to theme file. This path is used at several points to load files which are
part of the theme, like CSS files, images and fonts.
The context prefix in which CCM is installed. If CCM is installed into the ROOT context
of the servlet container, this variable will be empty.
The path on which the CCM dispatcher Servlet is mounted. Usually this is CCM
This variables stores the XML created by CCM for later access.
This variables stores the XML definition of the Foundry documentation.
Activate double click protection on buttons?
Activate double click protection on links?
The language to use as negotiated by CCM.
The languages supported by this theme. They are configured in
conf/global.xml using the &lt;supported-languages&gt;
element. Example for german and english:
&lt;?xml version="1.0"?&gt;
&lt;foundry:configuration&gt;
&lt;supported-languages default="de"&gt;
&lt;language locale=de"&gt;
&lt;language locale=en"&gt;
&lt;/supported-languages&gt;
&lt;/foundry:configuration&gt;
The language to use by theming engine for static texts etc. The language is determined
as follows:
If the negotiated language is also in the supported-languages
If not the language which set by the default attribute of the
&lt;supported-languages&gt; is used, but only if this language
is in the supported languages.
Otherwise the first of the supported languages is used.
The name of the user agent (browser) which is used to access CCM.
Helper functions for generating the name of the colorset class.
Helper functions for retrieving the name of the content type of the current content item
from the result tree XML.
Helper template for processing arrows/links for sorting items.
Helper template for processing additional attributes in the data tree XML. They copied
literally from the XML the HTML.
The name of the template file to process.
This template is the entry point for the template parser.
Helper template for setting the id and class attributes
on a HTML element.
A helper template for generating the
&lt;link rel="stylesheet" href="..."/&gt; elements for loading the CSS
files.
The name of the CSS file to load
The media for which the file should be loaded. If no set, the CSS file is used for all
media types.
The value to evaluate.
A helper function for evaluating certain string values to boolean. This function has two
two purposes. First it simplifies some expressions. for example if you have a
template tag with a attribute containing a (pseudo) boolean value (attribute values
are always treated as strings) you would have to write something like:
...
...
...
Using foundry:boolean this can be simplified to
...
...
...
The more important purpose is to make the usage of boolean values more user
friendly, especially in the templates. Using foundry:boolean no only
true is evaluated to boolean true. A number of other
strings is also evaluated to true:
true
TRUE
yes
YES
t
T
y
Y
All other values are evaluated to false.
The level of the message, indicating its severity
The message text.
A helper function used by the other message functions like
foundry:message-warn. Concats the message level with the message.
This function should not be used directly. Use the other message functions instead.
#foundry-message-info
#foundry-message-warn
#foundry-message-error
The message text.
Helper function to generate an info message. This function be used together with
&lt;xsl:message&gt; to output a message in the CCM log. Example:
...
&lt;xsl:message&gt;
&lt;xsl:message select="foundry:message-info('Hello from Foundry')" /&gt;
&lt;/xsl:message&gt;
#foundry-message-warn
#foundry-message-error
The message text.
Helper function to generate an info message. This function be used together with
&lt;xsl:message&gt; to output a message in the CCM log warning
the administrator about some things in the theme, for example a missing
configuration file. Example:
...
&lt;xsl:message&gt;
&lt;xsl:message select="foundry:message-info('Something is strange...')" /&gt;
&lt;/xsl:message&gt;
#foundry-message-info
#foundry-message-error
The message text.
Helper function to generate an info message. This function be used together with
&lt;xsl:message&gt; to output a message in the CCM log when
something goes wrong in the theme, for example when a layout file has a wrong
structure. Example:
...
&lt;xsl:message&gt;
&lt;xsl:message select="foundry:message-info('Some error has occurred...')" /&gt;
&lt;/xsl:message&gt;
#foundry-message-info
#foundry-message-warn
The node from which the value of the attribute is read.
The attribute to check for.
The default value if the attribute is not set.
The value of the attribute if it is set on the current element, the
default-value otherwise.
A helper function for retrieving an attribute value from an element. If the attribute is
set on the current element the value of the attribute is used as result. If the
attribute is not set the default-value is used. This method is used
by several layout tags with optional attributes. A common use pattern looks like this:
&lt;xsl:template match="example"&gt;
&lt;xsl:variable name="width"
select="foundry:get-attribute-value(current(), 'width', '640')" /&gt;
&lt;xsl:variable name="height"
select="foundry:get-attribute-value(current(), 'height', '480')" /&gt;
/&lt;xsl:template&gt;
In this example, the element example has two optional attributes:
with and height. If the attribute is set in processed XML,
the value set there is used. Otherwise the default value (640
respectively 480) is used. Without this function a code block like the
one in the xsl:choose block of this function would be necessary for
each of the variables.
The module of the settings. At the moment this corresponds to the name of the file
in the conf directory. The empty string as value corresponds to the
global.xml file.
The name of the setting to retrieve.
The value to use if there is no entry for the setting in the settings file.
A node from the layout template which overrides the value from the configuration.
The value of the requested setting or if no value has been set the provided default
value. If no default value has been provided the result is an empty string.
This function retrieves the value of a setting from the theme configuration. For
more informations about the configuration system of Foundry please refer to the
configuration section of the Foundry documentation.
he module of the settings. At the moment this corresponds to the name of the file
in the texts directory. The empty string as value corresponds to the
global.xml file.
The name of the text to retrieve.
The language to retrieve. Normally there is no need to set this parameter because
it is determined automatically.
The requested static text. If there is no value for the requested static text in the
module provided by the module parameter the value depends if the debug mode is
enabled or not. If the debug mode is not not enabled the result is an empty
string. If the debug mode is enabled, a identifier of the text (the value of the
id parameter) is displayed. If you point the mouse pointer of the
placeholder, the complete path of the text is shown as hovering box.
Retrieves at static text. For more informations about static texts in Foundry please
refer to the static texts section in the Foundry documentation.
true if the debug mode if active, false otherwise.
A helper function to determine if the debug mode should be enabled. The debug mode
of foundry is automatically enabled if the theme is viewed as development theme.
Helper template for processing additional attributes. This are copied from the result
tree XML created by CCM to the HTML output generated by Foundry without any further
processing.
The entry point for creating Foundry documentation.
</section>
</article>
</main>
<footer>
<p>
(c) 2014 Jens Pelzetter.
</p>
</footer>
</body>
</html>