<?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="SystemInfoNotes">
        <section>
            <actions>
                <service service-name="getSystemInfoNotes"
                    result-map="resultMap"/>
                <set field="systemInfoNotes" from-field="resultMap.systemInfoNotes"/>
            </actions>
            <widgets>
                <screenlet
                    title="${uiLabelMap.CommonExtSystemInfoNoteForUser} ${userLogin.partyId}"
                    navigation-menu-name="SystemInfoNotes">
                <section>
                    <condition>
                        <not>
                            <if-empty field="parameters.createPublicMsg"/>
                        </not>
                    </condition>
                    <widgets>
                        <include-form name="CreateSystemInfoNote"
                            location="component://commonext/widget/SystemInfoForms.xml"/>
                    </widgets>
                </section>
                    <include-menu name="SystemInfoNotes"
                        location="component://commonext/widget/SystemInfoMenus.xml"/>
                    <include-form name="SystemInfoNotes"
                        location="component://commonext/widget/SystemInfoForms.xml"/>
                </screenlet>
            </widgets>
        </section>
    </screen>
    
    <screen name="SystemInfoStatus">
        <section>
            <actions>
                <service service-name="getSystemInfoStatus" result-map="resultMap"/>
                <set field="systemInfoStatus" from-field="resultMap.systemInfoStatus"/>
            </actions>
            <widgets>
                <section>
                    <condition>
                        <not><if-empty field="systemInfoStatus"/></not>
                    </condition>
                    <widgets>
                        <screenlet title="${uiLabelMap.CommonExtSystemInfoStatusForUser} ${userLogin.partyId}">
                            <include-form name="SystemInfoStatus" location="component://commonext/widget/SystemInfoForms.xml"/>
                        </screenlet>
                    </widgets>
                </section>
            </widgets>
        </section>
    </screen>
    
</screens>