<?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="main-decorator">
        <section>
            <actions>
                <property-map resource="ProjectMgrUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="HumanResUiLabels" map-name="uiLabelMap" global="true"/>
                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>

                <property-map resource="ProjectMgrHelpUrls" map-name="helpUrlsMap" global="true"/>

                <!-- The two default (global) stylesheets are added to the list
                     of stylesheets to the first and second position -->

                <set field="layoutSettings.companyName" from-field="uiLabelMap.ProjectMgrCompanyName" global="true"/>
                <set field="layoutSettings.companySubtitle" from-field="uiLabelMap.ProjectMgrCompanySubtitle" global="true"/>
                <!-- layoutSettings.headerImageUrl can be used to specify an application specific logo; if not set,
                     then the global layoutSettings.commonHeaderImageUrl (specified in GlobalDecorator) will be used. -->
                <!--<set field="layoutSettings.headerImageUrl" value="/images/ofbiz_logo.gif" global="true"/>-->

                <set field="activeApp" value="projectmgr" global="true"/>
                <set field="applicationMenuName" value="ProjectMgrAppBar" global="true"/>
                <set field="applicationMenuLocation" value="component://projectmgr/widget/Menus.xml" global="true"/>
                <set field="applicationTitle" value="${uiLabelMap.ProjectMgrApplication}" global="true"/>
                <set field="my" value="My" global="true"/>
            </actions>
            <widgets>
                <include-screen name="ApplicationDecorator" location="component://commonext/widget/CommonScreens.xml"/>
            </widgets>
        </section>
    </screen>

    <screen name="CommonProjectDecorator">
        <section>
            <actions>
                <set field="headerItem" value="projects"/>
                <set field="projectId" from-field="parameters.projectId" default-value="${parameters.workEffortId}"/>
                <entity-one entity-name="WorkEffort" value-field="project">
                    <field-map field-name="workEffortId" from-field="projectId"/>
                </entity-one>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <section>
                                    <condition>
                                        <not>
                                            <if-empty field="project"/>
                                        </not>
                                    </condition>
                                    <widgets>
                                        <include-menu name="ProjectTabBar" location="component://projectmgr/widget/Menus.xml"/>
                                        <include-menu name="ProjectSubTabBar" location="component://projectmgr/widget/Menus.xml"/>
                                        <container style="clear"/>
                                        <label style="h1" text="${uiLabelMap.ProjectMgrProjectCurrent}: ${project.workEffortName}[${project.workEffortId}]"/>
                                    </widgets>
                                 </section>

                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonTaskDecorator">
        <section>
            <actions>
                <set field="headerItem" value="task"/>
                <entity-one entity-name="WorkEffort" value-field="workEffort"/>
                <script location="component://projectmgr/webapp/projectmgr/WEB-INF/actions/getProjectId.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <section>
                                    <condition>
                                        <not><if-empty field="workEffort"/></not>
                                    </condition>
                                    <widgets>
                                        <include-menu name="TaskTabBar" location="component://projectmgr/widget/Menus.xml"/>
                                        <include-menu name="TaskSubTabBar" location="component://projectmgr/widget/Menus.xml"/>
                                        <container style="clear"/>
                                        <label style="h1" text="${uiLabelMap.ProjectMgrTaskCurrent}: ${workEffort.workEffortName}[${workEffort.workEffortId}] ${uiLabelMap.ProjectMgrPhaseName}: ${phaseName} ${uiLabelMap.ProjectMgrProjectName}: ${projectName}"/>
                                        <link style="h1" text="[${projectId}]" target="projectView">
                                            <parameter param-name="projectId"/>
                                        </link>
                                    </widgets>
                                </section>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonMyTaskDecorator">
        <section>
            <actions>
                <set field="headerItem" value="mytasks"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonSkillTypeDecorator">
        <section>
            <actions>
                <set field="skillTypeId" from-field="parameters.skillTypeId"/>
                <entity-one entity-name="SkillType" value-field="skillType"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <!-- do check for PartyAbility, _VIEW permission -->
                            <condition>
                                <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonTimesheetDecorator">
        <section>
            <actions>
                <set field="headerItem" value="timesheet"/>
                <set field="timesheetId" from-field="parameters.timesheetId"/>
                <entity-one entity-name="Timesheet" value-field="timesheet"/>
                <entity-one entity-name="PartyNameView" value-field="partyName">
                    <field-map field-name="partyId" from-field="timesheet.partyId"/>
                </entity-one>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <!--include-menu name="TimesheetTabBar" location="component://projectmgr/widget/Menus.xml"/-->
                                <include-menu name="TimesheetSubTabBar" location="component://projectmgr/widget/Menus.xml"/>
                                <section>
                                    <condition>
                                        <not>
                                            <if-empty field="timesheet"/>
                                        </not>
                                    </condition>
                                    <widgets>
                                        <container><label style="h1">${uiLabelMap.WorkEffortTimesheetTimesheetId}: ${timesheetId} ${uiLabelMap.CommonFrom}: ${partyName.firstName} ${partyName.middleName} ${partyName.lastName} ${partyName.groupName} [${timesheet.partyId}]</label></container>
                                    </widgets>
                                </section>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonMyTimeDecorator">
        <section>
            <actions>
                <set field="headerItem" value="mytime"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                    <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <include-menu name="MyTimeSubTabBar" location="component://projectmgr/widget/Menus.xml"/>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="CommonCalendarDecorator">
        <section>
            <actions>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                            </condition>
                            <actions>
                                <entity-condition entity-name="Facility" list="allFacilities">
                                    <order-by field-name="facilityName"/>
                                </entity-condition>
                                <entity-condition entity-name="FixedAsset" list="allFixedAssets">
                                    <order-by field-name="fixedAssetId"/>
                                </entity-condition>
                            </actions>
                            <widgets>
                                <platform-specific>
                                    <html><html-template location="component://workeffort/webapp/workeffort/calendar/eventsByForms.ftl"/></html>
                                </platform-specific>
                                <platform-specific>
                                    <html><html-template location="component://workeffort/webapp/workeffort/calendar/CalendarTabBar.ftl"/></html>
                                </platform-specific>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="Main">
        <section>
            <actions>
                <set field="parameters.currentStatus" value="_NA_"/>
                <set field="headerItem" value="main"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet title="${uiLabelMap.ProjectMgrProjectSummary}" navigation-form-name="ListCurrentProjects">
                            <include-form name="ListCurrentProjects" location="component://projectmgr/widget/forms/ProjectForms.xml"/>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonPartyDecorator">
        <section>
            <actions>
                <set field="headerItem" value="resources"/>
                <set field="partyId" from-field="parameters.partyId"/>
                <entity-one entity-name="Party" value-field="party"/>
                <entity-one entity-name="Person" value-field="lookupPerson"/>
                <entity-one entity-name="PartyGroup" value-field="lookupGroup"/>
                <set field="communicationEventId" from-field="parameters.communicationEventId"/>
                <entity-one entity-name="CommunicationEvent" value-field="communicationEvent"/>
                <set field="okayToUpdate" value="true" type="Boolean" global="true"/>
            </actions>
            <widgets>
                <section>
                    <condition>
                        <and>
                            <not><if-empty field="communicationEvent.statusId"/></not>
                            <or>
                                <if-compare field="communicationEvent.statusId" operator="equals" type="String" value="COM_COMPLETE"/>
                                <if-compare field="communicationEvent.statusId" operator="equals" type="String" value="COM_RESOLVED"/>
                                <if-compare field="communicationEvent.statusId" operator="equals" type="String" value="COM_REFERRED"/>
                            </or>
                        </and>
                    </condition>
                    <actions>
                        <set field="okayToUpdate" value="false" type="Boolean" global="true"/>
                    </actions>
                    <widgets/>
                </section>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <!-- do check for PROJECTMGR, _VIEW permission -->
                            <condition>
                                <or>
                                    <if-has-permission permission="PARTYMGR" action="_ADMIN"/>
                                    <if-has-permission permission="PROJECTMGR" action="_VIEW"/>
                                </or>
                            </condition>
                            <widgets>
                                <section>
                                    <condition><not><if-empty field="partyId"/></not></condition>
                                    <widgets>
                                        <include-menu location="component://projectmgr/widget/Menus.xml" name="ResourceTabBar"/>
                                        <container>
                                            <section>
                                                <widgets>
                                                    <label style="h1" text="${uiLabelMap.PartyTheProfileOf} ${lookupPerson.personalTitle} ${lookupPerson.firstName} ${lookupPerson.middleName} ${lookupPerson.lastName} ${lookupPerson.suffix} ${lookupGroup.groupName}"/>
                                                </widgets>
                                                <fail-widgets>
                                                    <label style="h1" text="${uiLabelMap.PartyNewUser}"/>
                                                </fail-widgets>
                                            </section>

                                            <label style="h1" text="[${partyId}]"/>
                                        </container>
                                    </widgets>
                                </section>
                                <decorator-section-include name="body"/>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.PartyMgrViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="CommonRequestDecorator">
        <section>
            <widgets>
                <decorator-screen name="CommonRequestDecorator" location="component://order/widget/ordermgr/CommonScreens.xml">
                    <decorator-section name="body">
                        <decorator-section-include name="body"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

    <screen name="GlobalHRSettingsDecorator">
        <section>
            <actions>
                <set field="headerItem" value="SkillType"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <decorator-section-include name="body"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>

</screens>
