<?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"
        xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Screen http://ofbiz.apache.org/dtds/widget-screen.xsd">
    <screen name="CommonPriceDecorator">
        <section>
            <widgets>
                <decorator-screen name="main-decorator"  location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="left-column">
                        <include-screen name="leftbar" location="component://product/widget/catalog/CommonScreens.xml"/>
                    </decorator-section>                    
                    <decorator-section name="body">
                        <section>
                            <!-- do check for CATALOG, _VIEW permission -->
                            <condition>
                                <if-has-permission permission="CATALOG" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProductCatalogViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FindProductPriceRule">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleFindProductPriceRule"/>
                <set field="headerItem" value="pricerules"/>
                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
                <property-to-field resource="widget" property="widget.form.defaultViewSize" field="viewSizeDefaultValue"/>
                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="${viewSizeDefaultValue}"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonPriceDecorator">
                    <decorator-section name="body">
                        <screenlet title="${uiLabelMap.ProductGlobalPriceRules}">
                            <include-form name="FindProductPriceRules" location="component://product/widget/catalog/PriceForms.xml"/>
                        </screenlet>
                        <screenlet title="${uiLabelMap.ProductAddPriceRule}">
                            <include-form name="AddPriceRules" location="component://product/widget/catalog/PriceForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <!-- Old screen kept for now, in case some would prefer the old way. Another option is to use an input field with Id instead of a drop-down in the new screen below (see also setPriceRulesCondEventJs.ftl and top of getAssociatedPriceRulesConds service) -->
    <!--screen name="EditProductPriceRules">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditProductPriceRules"/>
                <set field="headerItem" value="pricerules"/>

                <script location="component://product/groovyScripts/catalog/price/EditProductPriceRules_old.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonPriceDecorator">
                    <decorator-section name="body">
                        <platform-specific>
                            <html><html-template location="component://product/template/price/EditProductPriceRules.ftl"/></html>
                        </platform-specific>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen-->
    <screen name="EditProductPriceRules">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditProductPriceRules"/>
                <set field="headerItem" value="pricerules"/>

                <script location="component://product/groovyScripts/catalog/price/EditProductPriceRules.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonPriceDecorator">
                    <decorator-section name="body">
                        <platform-specific><html><html-template location="component://product/template/price/SetPriceRulesCondEventJs.ftl"/></html></platform-specific>
                        <include-menu name="PriceRulesButtonBar" location="component://product/widget/catalog/CatalogMenus.xml"/>
                        <screenlet title="${uiLabelMap.ProductPriceRuleId} [${parameters.productPriceRuleId}]">
                            <label style="h6" text="${uiLabelMap.ProductConditionsActionsRemoveBefore}"/>
                            <horizontal-separator/>
                            <include-form name="EditProductPriceRule" location="component://product/widget/catalog/PriceForms.xml"/>
                            <horizontal-separator/>
                            <label style="h6" text="${uiLabelMap.ProductConditionsThenActions}"/>
                            <horizontal-separator/>
                            <screenlet title="${uiLabelMap.ProductConditions}">
                                <include-form name="EditProductPriceRulesCond" location="component://product/widget/catalog/PriceForms.xml"/>
                                <horizontal-separator/>
                                <include-form name="AddProductPriceRulesCond" location="component://product/widget/catalog/PriceForms.xml"/>
                            </screenlet>
                            <screenlet title="${uiLabelMap.ProductActions}">
                                <include-form name="EditProductPriceRulesAction" location="component://product/widget/catalog/PriceForms.xml"/>
                                <horizontal-separator/>
                                <include-form name="AddProductPriceRulesAction" location="component://product/widget/catalog/PriceForms.xml"/>
                            </screenlet>
                        </screenlet>
                    </decorator-section>                    
                </decorator-screen>
            </widgets>
        </section>
    </screen>
</screens>
