<?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="editShoppingList">
        <section>
            <actions>
                <set field="rightbarScreenName" value="rightbar"/>
                <set field="MainColumnStyle" value="rightonly"/>

                <set field="titleProperty" value="PageTitleShoppingList"/>
                <set field="headerItem" value="Shopping List"/>
                <script location="component://ecommerce/webapp/ecommerce/WEB-INF/actions/shoppinglist/EditShoppingList.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <platform-specific><html><html-template location="component://ecommerce/webapp/ecommerce/shoppinglist/editShoppingList.ftl"/></html></platform-specific>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="showShoppingList">
        <section>
            <condition>
                <if-empty field="parameters.mainSubmitted"/>
            </condition>
            <actions>
                <property-map resource="EcommerceUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
                <script location="component://ecommerce/webapp/ecommerce/WEB-INF/actions/shoppinglist/EditShoppingList.groovy"/>
                <set field="visualThemeId" from-field="productStore.visualThemeId" default-value="EC_DEFAULT"/>
                <service service-name="getVisualThemeResources">
                    <field-map field-name="visualThemeId"/>
                    <field-map field-name="themeResources" from-field="layoutSettings"/>
                </service>
                <set field="layoutSettings" from-field="themeResources" default-value="${layoutSettings}" global="true"/>
            </actions>
            <widgets>
                <platform-specific><html><html-template location="component://ecommerce/webapp/ecommerce/shoppinglist/editShoppingList.ftl"/></html></platform-specific>
            </widgets>
        </section>
    </screen>
    
</screens>
