<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright 2004 The Apache Software Foundation
  
   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at
  
       http://www.apache.org/licenses/LICENSE-2.0
  
   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<!-- $Id$ -->
<!DOCTYPE page-specification PUBLIC 
  "-//Apache Software Foundation//Tapestry Specification 3.0//EN" 
  "http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">
  
<page-specification class="org.apache.tapestry.vlib.pages.admin.EditUsers">

  <property-specification name="message" type="java.lang.String"/>
  <property-specification name="error" type="java.lang.String"/>
  <property-specification name="user" type="org.apache.tapestry.vlib.ejb.Person"/>
  <property-specification name="listEditMap" type="org.apache.tapestry.vlib.pages.admin.UserListEditMap"/>
  <property-specification name="password" type="java.lang.String"/>
  
  <bean name="optional" class="org.apache.tapestry.valid.StringValidator" lifecycle="page"/>

  
  <component id="listEdit" type="ListEdit">
  	<binding name="source" expression="listEditMap.keys"/>
  	<binding name="value" expression="listEditMap.key"/>
  	<binding name="listener" expression="listeners.synchronizeUser"/>
  	<static-binding name="element" value="tr"/>
  </component>
  
  <component id="inputPassword" type="ValidField">
    <binding name="value" expression="password"/>
    <binding name="validator" expression="beans.optional"/>
    <static-binding name="displayName" value="New Password"/>	
  </component>

</page-specification>
