blob: 63d7fd02592bbc79c454eaffd1eab844db284a9a [file] [log] [blame]
<?xml version="1.0"?>
<page xmlns:wt="http://apache.org/cocoon/woody/template/1.0"
xmlns:wi="http://apache.org/cocoon/woody/instance/1.0"
xmlns:jx="http://apache.org/cocoon/templates/jx/1.0">
<title>Sample form</title>
<content>
<wt:form-template action="${cocoon.continuation.id}.continue" method="POST">
<table align="center">
<tr><td>
<!-- group with tabs. Each of the children of <items> will constitute a tab -->
<wi:group>
<wi:styling type="choice"/>
<wi:label>Choose a panel: </wi:label>
<wi:state>
<wt:widget id="tab-state"/>
</wi:state>
<wi:items>
<!-- group with automatic two-column layout -->
<wi:group>
<wi:label>String fields</wi:label>
<wi:styling layout="columns"/>
<wi:items>
<wt:widget id="email"/>
<wt:widget id="fourchars">
<!-- particular styling for the enumeration -->
<wi:styling list-type="listbox" listbox-size="4"/>
</wt:widget>
</wi:items>
</wi:group>
<wi:group>
<wi:label>Number fields</wi:label>
<wi:styling layout="columns"/>
<wi:items>
<wt:widget id="number1">
<wi:styling submit-on-change="true"/>
</wt:widget>
<wt:widget id="number2"/>
<wt:widget id="account"/>
<wt:widget id="cowheight">
<wi:styling list-type="radio"/>
</wt:widget>
</wi:items>
</wi:group>
<wi:group>
<wi:styling layout="columns"/>
<wi:label>Boolean fields</wi:label>
<wi:items>
<wt:widget id="somebool"/>
<wt:widget id="drinks">
<wi:styling list-type="listbox" listbox-size="4"/>
</wt:widget>
</wi:items>
</wi:group>
</wi:items>
</wi:group>
<wi:group>
<wi:styling layout="columns"/>
<wi:items>
<wt:widget id="visa"/>
<wt:widget id="ipaddress"/>
<wt:widget id="altbirthdate"/>
<wt:widget id="birthdate"><wi:styling type="date" format="dd/MM/yyyy"/></wt:widget>
<wt:widget id="dieselprice"/>
</wi:items>
</wi:group>
<!-- It's possible to access repeater rows using jx like this: -->
<jx:forEach varStatus="loop" begin="0" end="${contacts.length - 1}">
<jx:set var="row" value="${contacts.getRow(loop.index)}"/>
<!-- do something with row... -->
</jx:forEach>
<!-- manual layout of fieldw, without use of a wi:group -->
<wt:widget-label id="contacts"/><br/>
<wt:repeater-size id="contacts"/>
<table border="1">
<tr>
<th><wt:repeater-widget-label id="contacts" widget-id="firstname"/></th>
<th><wt:repeater-widget-label id="contacts" widget-id="lastname"/></th>
<th><wt:repeater-widget-label id="contacts" widget-id="phone"/></th>
<th><wt:repeater-widget-label id="contacts" widget-id="email"/></th>
<th><wt:repeater-widget-label id="contacts" widget-id="select"/></th>
</tr>
<!-- The contents of the repeater-widget element is a template that will
be applied to each row in the repeater. -->
<wt:repeater-widget id="contacts">
<tr>
<td><wt:widget id="firstname"/></td>
<td><wt:widget id="lastname"/></td>
<td><wt:widget id="phone"/></td>
<td><wt:widget id="email"/></td>
<td><wt:widget id="select"/></td>
</tr>
</wt:repeater-widget>
<tr>
<td colspan="4" align="right">
<wt:widget id="addcontact"/>
<wt:widget id="removecontacts"/>
</td>
</tr>
</table>
<!--
You can access properties you set on the form or other widgets
using jx:
-->
<input type="submit" value="${buttonName}"/>
</td></tr>
</table>
</wt:form-template>
</content>
</page>