<?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.
-->

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

    <screen name="CommonBillingAccountDecorator">
        <section>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="pre-body">
                        <section>
                            <!-- do check for ACCOUNTING, _VIEW permission -->
                            <condition>
                                <if-service-permission service-name="acctgBasePermissionCheck" main-action="VIEW"/>
                            </condition>
                            <widgets>
                                <section>
                                    <condition>
                                        <not><if-empty field="billingAccount"/></not>
                                    </condition>
                                    <widgets>
                                        <include-menu name="BillingAccountTabBar" location="component://accounting/widget/AccountingMenus.xml"/>
                                    </widgets>
                                </section>
                            </widgets>
                        </section>
                    </decorator-section>
                    <decorator-section name="body">
                        <section>
                            <!-- do check for ACCOUNTING, _VIEW permission -->
                            <condition>
                                <if-service-permission service-name="acctgBasePermissionCheck" main-action="VIEW"/>
                            </condition>
                            <widgets>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.AccountingViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FindBillingAccount">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleFindBillingAccount"/>
                <set field="headerItem" value="billingaccount"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-empty field="parameters.partyId"/>
                            </condition>
                            <widgets>
                                <section>
                                    <widgets>
                                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                                            <decorator-section name="menu-bar">
                                                <container style="button-bar">
                                                    <link target="EditBillingAccount" text="${uiLabelMap.CommonCreateNew}" style="buttontext create"/>
                                                </container>
                                            </decorator-section>
                                            <decorator-section name="search-options">
                                                <include-form name="FindBillingAccounts" location="component://accounting/widget/BillingAccountForms.xml"/>
                                            </decorator-section>
                                            <decorator-section name="search-results">
                                                <include-form name="ListBillingAccounts" location="component://accounting/widget/BillingAccountForms.xml"/>
                                            </decorator-section>
                                        </decorator-screen>
                                    </widgets>
                                </section>
                            </widgets>
                            <fail-widgets>
                                <section>
                                    <actions>
                                        <script location="component://accounting/webapp/accounting/WEB-INF/actions/payment/BillingAccounts.groovy"/>
                                        <set field="roleTypeId" value="BILL_TO_CUSTOMER"/>
                                    </actions>
                                    <widgets>
                                        <screenlet title="${uiLabelMap.PageTitleFindBillingAccount}">
                                            <link target="EditBillingAccount" text="${uiLabelMap.CommonNew} " style="buttontext">
                                                <parameter param-name="partyId" from-field="parameters.partyId"/>
                                                <parameter param-name="roleTypeId" value="BILL_TO_CUSTOMER"/>
                                            </link>
                                            <include-form name="ListBillingAccountsByParty" location="component://accounting/widget/BillingAccountForms.xml"/>
                                        </screenlet>
                                    </widgets>
                                </section>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
         </section>
    </screen>
    <screen name="EditBillingAccount">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditBillingAccount"/>
                <set field="headerItem" value="billingaccount"/>
                <set field="tabButtonItem" value="EditBillingAccount"/>
                <property-to-field field="defaultCurrencyUomId" resource="general" property="currency.uom.id.default" default="USD"/>
                <set field="billingAccountId" from-field="parameters.billingAccountId"/>
                <entity-one entity-name="BillingAccount" value-field="billingAccount"/>
                <entity-and entity-name="BillingAccountRole" list="billingAccountRolesCustomer" filter-by-date="true">
                    <field-map field-name="billingAccountId" from-field="billingAccount.billingAccountId"/>
                    <field-map field-name="roleTypeId" value="BILL_TO_CUSTOMER"/>
                </entity-and>
                <set field="partyId" from-field="parameters.partyId" default-value="${billingAccountRolesCustomer[0].partyId}"/>
                <set field="roleTypeId" from-field="parameters.roleTypeId" default-value="BILL_TO_CUSTOMER"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonBillingAccountDecorator" location="${parameters.billingAccountDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet title="${uiLabelMap.PageTitleEditBillingAccount}">
                            <include-form name="EditBillingAccount" location="component://accounting/widget/BillingAccountForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
         </section>
    </screen>
    <screen name="EditBillingAccountRoles">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditBillingAccountRoles"/>
                <set field="headerItem" value="billingaccount"/>
                <set field="tabButtonItem" value="EditBillingAccountRoles"/>

                <set field="billingAccountId" from-field="parameters.billingAccountId"/>
                <entity-one entity-name="BillingAccount" value-field="billingAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonBillingAccountDecorator" location="${parameters.billingAccountDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="BllingAccountRolePanel" title="${uiLabelMap.PageTitleAddBillingAccountRoles}" collapsible="true">
                            <include-form name="AddBillingAccountRole" location="component://accounting/widget/BillingAccountForms.xml"/>
                        </screenlet>
                        <include-form name="ListBillingAccountRoles" location="component://accounting/widget/BillingAccountForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
         </section>
    </screen>
    <screen name="EditBillingAccountTerms">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditBillingAccountTerms"/>
                <set field="headerItem" value="billingaccount"/>
                <set field="tabButtonItem" value="EditBillingAccountTerms"/>

                <set field="billingAccountId" from-field="parameters.billingAccountId"/>
                <set field="billingAccountTermId" from-field="parameters.billingAccountTermId"/>
                <entity-one entity-name="BillingAccount" value-field="billingAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonBillingAccountDecorator" location="${parameters.billingAccountDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet title="${uiLabelMap.PageTitleEditBillingAccountTerms} - ${uiLabelMap.AccountingAccountId} ${billingAccount.billingAccountId}">
                            <include-form name="ListBillingAccountTerms" location="component://accounting/widget/BillingAccountForms.xml"/>
                        </screenlet>
                        <section>
                            <condition>
                                <not><if-empty field="parameters.billingAccountTermId"/></not>
                            </condition>
                            <actions>
                                <entity-one entity-name="BillingAccountTerm" value-field="billingAccountTerm"/>
                            </actions>
                            <widgets>
                                <screenlet title="${uiLabelMap.PageTitleEditBillingAccountTerms}">
                                    <include-form name="EditBillingAccountTerms" location="component://accounting/widget/BillingAccountForms.xml"/>
                                </screenlet>
                            </widgets>
                            <fail-widgets>
                                <screenlet title="${uiLabelMap.AccountingCreateBillingAccountTerm}">
                                    <include-form name="EditBillingAccountTerms" location="component://accounting/widget/BillingAccountForms.xml"/>
                                </screenlet>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
         </section>
    </screen>
    <screen name="BillingAccountInvoices">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditBillingAccountInvoices"/>
                <set field="headerItem" value="billingaccount"/>
                <set field="tabButtonItem" value="BillingAccountInvoices"/>

                <set field="billingAccountId" from-field="parameters.billingAccountId"/>
                <set field="billingAccountTermId" from-field="parameters.billingAccountTermId"/>
                <entity-one entity-name="BillingAccount" value-field="billingAccount"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonBillingAccountDecorator" location="${parameters.billingAccountDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="BillingAccountInvoicePanel" title="${uiLabelMap.AccountingFindInvoices}" collapsible="true">
                            <include-form name="lookupInvoicesStatus" location="component://accounting/widget/InvoiceForms.xml"/>
                        </screenlet>
                        <include-form name="ListBillingAccountInvoices" location="component://accounting/widget/BillingAccountForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
         </section>
    </screen>
    <screen name="BillingAccountOrders">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditBillingAccountOrders"/>
                <set field="headerItem" value="billingaccount"/>
                <set field="tabButtonItem" value="BillingAccountOrders"/>

                <set field="billingAccountId" from-field="parameters.billingAccountId"/>
                <entity-one entity-name="BillingAccount" value-field="billingAccount"/>
                <script location="component://accounting/webapp/accounting/WEB-INF/actions/order/BillingAccountOrders.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonBillingAccountDecorator" location="${parameters.billingAccountDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet title="${uiLabelMap.PageTitleEditBillingAccountOrders}">
                            <include-form name="ListBillingAccountOrders" location="component://accounting/widget/BillingAccountForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="BillingAccountPayments">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditBillingAccountPayments"/>
                <set field="headerItem" value="billingaccount"/>
                <set field="tabButtonItem" value="BillingAccountPayments"/>

                <set field="billingAccountId" from-field="parameters.billingAccountId"/>
                <entity-one entity-name="BillingAccount" value-field="billingAccount"/>
                <entity-condition entity-name="BillingAccountAndRole" list="billToCustomers" filter-by-date="true">
                    <condition-list>
                        <condition-expr field-name="billingAccountId" from-field="billingAccountId"/>
                        <condition-expr field-name="roleTypeId" value="BILL_TO_CUSTOMER"/>
                    </condition-list>
                </entity-condition>
                <set field="billToCustomer" from-field="billToCustomers[0]"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonBillingAccountDecorator" location="${parameters.billingAccountDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="BillingAccountPaymentPanel" title="${uiLabelMap.AccountingCreatePayment}" collapsible="true">
                            <include-form name="CreateIncomingBillingAccountPayment" location="component://accounting/widget/BillingAccountForms.xml"/>
                        </screenlet>
                        <include-form name="ListBillingAccountPayments" location="component://accounting/widget/BillingAccountForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
         </section>
    </screen>
</screens>
