<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you 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.
-->

<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-form.xsd">

    <form name="FindBatchPayments" type="single" target="batchPayments">
        <actions>
            <set field="organizationPartyId" from-field="organizationPartyId" default-value="${defaultOrganizationPartyId}"/>
            <set field="noConditionFind" value="Y"/>
        </actions>
        <field name="paymentMethodTypeId" title="${uiLabelMap.FormFieldTitle_paymentMethodTypeId}">
            <drop-down allow-empty="true">
                <entity-options entity-name="PaymentMethodType" description="${description}">
                    <entity-order-by field-name="description"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="organizationPartyId"><hidden/></field>
        <field name="noConditionFind"><hidden/></field>
        <field name="cardType" tooltip="Select Credit Card from above list of Payment Method Types.">
            <drop-down allow-empty="true">
                <entity-options entity-name="Enumeration" description="${enumCode}" key-field-name="enumCode">
                    <entity-constraint name="enumTypeId" operator="equals" value="CREDIT_CARD_TYPE"/>
                    <entity-order-by field-name="enumId"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="partyIdFrom" title="${uiLabelMap.AccountingPartyIdFrom}">
            <lookup target-form-name="LookupCustomerName"/>
        </field> 
        <field name="fromDate"><date-time/></field>
        <field name="thruDate"><date-time/></field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="FindBatchPaymentsForDepositSlip" target="NewDepositSlip" extends="FindBatchPayments" extends-resource="component://accounting/widget/ar/forms/ArPaymentForms.xml">
        <field name="finAccountId"><hidden value="${finAccountId}"/></field>
    </form>
    <form name="FindArPayments" type="single" target="findPayments" extends="FindPayments" extends-resource="component://accounting/widget/PaymentForms.xml">
        <field name="parentTypeId"><hidden value="RECEIPT"/></field>
        <field name="paymentTypeId" position="1">
            <drop-down allow-empty="true">
                <entity-options entity-name="PaymentType" description="${description}">
                    <entity-constraint name="parentTypeId" value="RECEIPT"/>
                </entity-options>
            </drop-down>
        </field>
    </form>
    <form name="FindArPaymentGroups" target="FindArPaymentGroups" extends="FindPaymentGroup" extends-resource="component://accounting/widget/PaymentGroupForms.xml">
        <field name="paymentGroupTypeId"><hidden value="BATCH_PAYMENT"/></field>
    </form>
</forms>
