{moslate}

<table border="1">
<tr><th colspan="3">logic</th></tr>
<tr><th>name</th><th>output</th><th>code</th></tr>

<tr><td>c:set<br/>
<i>var, scope(optional), value(optional)</i>
</td>
<td>
{c:set var="temp"}
some text
{/c:set}
moved from here
</td>
<td>
{htmltext}
{c:set var="temp"}
some text
{/c:set}
moved from here
{/htmltext}
</td>
</tr>

<tr><td>c:out<br/>
<i>var, scope(optional)</i>
</td>
<td>
{c:out value="${temp}"/}
is now here
</td>
<td>
{htmltext}
{c:out value="${temp}"/}
is now here
{/htmltext}
</td>
</tr>

<tr><td>c:set<br/>
<i>var, scope(optional), value(EL)</i><br/>
<br/>
c:out<br/>
<i>value(EL)</i>
</td>
<td>
{c:set var="text" value="${temp}"/}
{c:out value="${text}"/}
is now here too<br/>
({c:out value="${fn:length(text)}"/} characters)
</td>
<td>
{htmltext}
{c:set var="text" value="${temp}"/}
{c:out value="${text}"/}
is now here too<br/>
({c:out value="${fn:length(text)}"/} characters)
{/htmltext}
</td>
</tr>

<tr><td>addProperty<br/>
<i>name(optional), value(optional)</i><br/>
<br/>
c:forEach<br/>
<i>items(EL), var, scope(optional)</i>
</td>
<td>
{addProperty name="animals" value="dog"/}
{addProperty name="animals" value="cat"/}
{addProperty name="animals" value="mambo"/}
<table border="1">
<tr><th colspan="2">animals</th></tr>
{c:forEach items="${animals}" var="animal"}
<tr><td>{c:out value="${animal.key}"/}</td>
<td>{c:out value="${animal.value}"/}</td></tr>
{/c:forEach}
</table>
</td>
<td>
{htmltext}
{addProperty name="animals" value="dog"/}
{addProperty name="animals" value="cat"/}
{addProperty name="animals" value="mambo"/}
<table border="1">
<tr><th colspan="2">animals</th></tr>
{c:forEach items="${animals}" var="animal"}
<tr><td>{c:out value="${animal.key}"/}</td>
<td>{c:out value="${animal.value}"/}</td></tr>
{/c:forEach}
</table>
{/htmltext}
</td>
</tr>


<tr><td>removeProperty<br/>
<i>name(optional), property(optional), value(optional)</i><br/>
<br/>
c:forEach<br/>
<i>items(EL), var, scope(optional)</i>
</td>
<td>
{removeProperty name="animals" property="2"/}
<table border="1">
<tr><th colspan="2">animals</th></tr>
{c:forEach items="${animals}" var="animal"}
<tr><td>{c:out value="${animal.key}"/}</td>
<td>{c:out value="${animal.value}"/}</td></tr>
{/c:forEach}
</table>
</td>
<td>
{htmltext}
{removeProperty name="animals" property="2"/}
<table border="1">
<tr><th colspan="2">animals</th></tr>
{c:forEach items="${animals}" var="animal"}
<tr><td>{c:out value="${animal.key}"/}</td>
<td>{c:out value="${animal.value}"/}</td></tr>
{/c:forEach}
</table>
{/htmltext}
</td>
</tr>


<tr><td>c:remove<br/>
<i>var, scope(optional)</i><br/>
<br/>
c:forEach<br/>
<i>items(EL), var, scope(optional)</i>
</td>
<td>
{c:remove var="animals"/}
<table border="1">
<tr><th colspan="2">animals</th></tr>
{c:forEach items="${animals}" var="animal"}
<tr><td>{c:out value="${animal.key}"/}</td>
<td>{c:out value="${animal.value}"/}</td></tr>
{/c:forEach}
</table>
</td>
<td>
{htmltext}
{c:remove var="animals"/}
<table border="1">
<tr><th colspan="2">animals</th></tr>
{c:forEach items="${animals}" var="animal"}
<tr><td>{c:out value="${animal.key}"/}</td>
<td>{c:out value="${animal.value}"/}</td></tr>
{/c:forEach}
</table>
{/htmltext}
</td>
</tr>

<tr><td>jsp:include<br/>
<i>page</i><br/>
</td>
<td>
{jsp:include page="/administrator/components/com_moslate/README"/}
</td>
<td>
{htmltext}
{jsp:include page="/administrator/components/com_moslate/README"/}
{/htmltext}
</td>
</tr>


<tr><td>c:import<br/>
<i>url, var(optional), scope(optional)</i><br/>
<br/>
c:url<br/>
<i>value, var, scope(optional)</i><br/>
<br/>
c:param<br/>
<i>name, value</i><br/>
</td>
<td>
{c:set var="text1"}
{c:import url="/administrator/components/com_moslate/README"/}
{/c:set}

{c:import var="text2" url="/index2.php"}
{c:param name="option" value="com_rss"/}
{c:param name="feed" value="RSS2.0"/}
{c:param name="no_html" value="1"/}
{/c:import}

{c:url var="url" value="/index2.php"}
{c:param name="option" value="com_rss"/}
{c:param name="feed" value="RSS2.0"/}
{c:param name="no_html" value="1"/}
{/c:url}

{c:import var="text3" url="${url}"/}

text1 == text2? {c:out value="${text1 == text2}"/}<br/>
text2 == text3? {c:out value="${text2 == text3}"/}<br/>
<br/>
part of text1:<br/>
{c:out value="${fn:substringBefore(text1, 'Version')}"/}<br/>
<br/>
part of text2:<br/>
{c:out value="${fn:substringBefore(text2, '/lastBuildDate')}" escapeXml="true"/}<br/>
<br/>
part of text3:<br/>
{c:out value="${fn:substringBefore(text2, '/lastBuildDate')}" escapeXml="true"/}<br/>

</td>
<td>
{htmltext}
{c:set var="text1"}
{c:import url="/administrator/components/com_moslate/README"/}
{/c:set}

{c:import var="text2" url="/index2.php"}
{c:param name="option" value="com_rss"/}
{c:param name="feed" value="RSS2.0"/}
{c:param name="no_html" value="1"/}
{/c:import}

{c:url var="url" value="/index2.php"}
{c:param name="option" value="com_rss"/}
{c:param name="feed" value="RSS2.0"/}
{c:param name="no_html" value="1"/}
{/c:url}

{c:import var="text3" url="${url}"/}

text1 == text2? {c:out value="${text1 == text2}"/}<br/>
text2 == text3? {c:out value="${text2 == text3}"/}<br/>
<br/>
part of text1:<br/>
{c:out value="${fn:substringBefore(text1, 'Version')}"/}<br/>
<br/>
part of text2:<br/>
{c:out value="${fn:substringBefore(text2, '/lastBuildDate')}" escapeXml="true"/}<br/>
<br/>
part of text3:<br/>
{c:out value="${fn:substringBefore(text2, '/lastBuildDate')}" escapeXml="true"/}<br/>
{/htmltext}
</td>
</tr>

</table>

{/moslate}