<?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="FindTimeSheet">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleFindTimeSheet"/>
                <set field="headerItem" value="admin"/>
                <set field="labelTitleProperty" value="ScrumFindTimeSheet"/>
                <set field="tabButtonItem" value="timesheets"/>
                <script location="component://scrum/webapp/scrum/WEB-INF/actions/ListTimeSheets.groovy"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonAdminDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <widgets>
                                <screenlet id="findTimeSheet" title="${uiLabelMap.PageTitleFindTimeSheet}" collapsible="true">
                                    <include-form name="FindTimeSheet" location="component://scrum/widget/TimeSheetForms.xml"/>
                                </screenlet>
                                <screenlet title="${uiLabelMap.PageTitleTimesheets}" navigation-form-name="ListFindTimeSheet">
                                    <include-form name="ListTimeSheets" location="component://scrum/widget/TimeSheetForms.xml"/>
                                </screenlet>
                            </widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="ViewTimeSheet">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleTimesheet"/>
                <set field="headerItem" value="timesheet"/>
                <set field="tabButtonItem" value="timesheets"/>
                <script location="component://scrum/webapp/scrum/WEB-INF/actions/EditDailyHourReport.groovy"/>
                <entity-one value-field="partyNameViewMap" entity-name="PartyNameView">
                    <field-map field-name="partyId" from-field="timesheet.partyId"/>
                </entity-one>
            </actions>
            <widgets>
                <decorator-screen name="CommonAdminDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet title="${uiLabelMap.PageTitleTimesheet} ${uiLabelMap.CommonNbr} ${timesheet.timesheetId} ${uiLabelMap.CommonWeek}: ${weekNumber} 
                        ${uiLabelMap.CommonFrom} ${bsh:timesheet.get(&quot;fromDate&quot;).toString().substring(0,10)} ${uiLabelMap.CommonTo} 
                        ${bsh:timesheet.get(&quot;thruDate&quot;).toString().substring(0,10)} ${uiLabelMap.PartyParty} : ${partyNameViewMap.lastName} ${partyNameViewMap.firstName} ${partyNameViewMap.middleName} [${timesheet.partyId}]">
                            <section>
                                <condition>
                                    <if-compare field="timesheet.statusId" operator="equals" value="TIMESHEET_COMPLETED"/>
                                </condition>
                                <widgets>
                                    <include-form name="WeekTimesheet" location="component://scrum/widget/TimeSheetForms.xml"/>
                                </widgets>
                                <fail-widgets>
                                    <include-form name="EditWeekTimesheet" location="component://scrum/widget/TimeSheetForms.xml"/>
                                </fail-widgets>
                            </section>
                        </screenlet>
                        <screenlet id="addWeeklyTimesheet" title="${uiLabelMap.PageTitleAddATimesheet}" collapsible="true">
                            <include-form name="AddWeeklyTimesheet" location="component://scrum/widget/TimeSheetForms.xml"/>
                        </screenlet>
                        <include-screen name="ListPartyTimesheets"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="ListPartyTimesheets">
        <section>
            <actions>
                <entity-one entity-name="PartyNameView" value-field="partyNameView">
                    <field-map field-name="partyId" from-field="timesheet.partyId"/>
                </entity-one>
            </actions>
            <widgets>
                <screenlet id="listTimeSheets" title="${uiLabelMap.PageTitleTimesheets} ${uiLabelMap.CommonOf} ${partyNameView.firstName} ${partyNameView.middleName} ${partyNameView.lastName}" collapsible="true">
                    <include-form name="ListTimeSheets" location="component://scrum/widget/TimeSheetForms.xml"/>
                </screenlet>
            </widgets>
        </section>
    </screen>
</screens>