<?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="EditSkillTypes">
        <section>
            <actions>
                <set field="headerItem" value="SkillType"/>
                <set field="titleProperty" value="PageTitleListSkillTypes"/>
                <set field="skillTypeId" from-field="parameters.skillTypeId"/>
                <entity-one entity-name="SkillType" value-field="skillType"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="AddSkillTypePanel" title="${uiLabelMap.HumanResAddSkillType}" collapsible="true">
                            <include-form name="AddSkillType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                        <include-form name="ListSkillTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditResponsibilityTypes">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitleEditResponsibilityType"/>
                <set field="tabButtonItem" value="ResponsibilityType"/>
                <set field="responsibilityTypeId" from-field="parameters.responsibilityTypeId"/>
                <entity-one entity-name="ResponsibilityType" value-field="responsibilityType"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="AddResponsibilityTypePanel" title="${uiLabelMap.HumanResAddEmplPositionResponsibility}" collapsible="true">
                            <include-form name="AddResponsibilityType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                        <include-form name="ListResponsibilityTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditTerminationTypes">
        <section>
            <actions>
                <set field="tabButtonItem" value="TerminationType"/>
                <set field="titleProperty" value="HumanResTerminationTypes"/>
                <set field="terminationTypeId" from-field="parameters.terminationTypeId"/>
                <entity-one entity-name="TerminationType" value-field="terminationType"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="AddTerminationTypePanel" title="${uiLabelMap.HumanResAddTerminationType}" collapsible="true">
                            <include-form name="AddTerminationType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                        <include-form name="ListTerminationTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="FindEmplPositionTypes">
        <section>
            <actions>
                <set field="titleProperty" value="HumanResFindPositionTypes"/>
                <set field="headerItem" value="EmplPositionTypes"/>
                <set field="tabButtonItem" value="EmplPositionTypes"/>
                <set field="emplPositionTypeId" from-field="parameters.emplPositionTypeId"/>
                <set field="emplPositionTypeCtx" from-field="parameters"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
                            <decorator-section name="menu-bar">
                                <container style="button-bar">
                                    <link target="EditEmplPositionTypes" text="${uiLabelMap.HumanResNewEmplPositionType}" style="buttontext create"/>
                                </container>
                            </decorator-section>
                            <decorator-section name="search-options">
                                <include-form name="FindEmplPositionTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                            </decorator-section>
                            <decorator-section name="search-results">
                                <include-form name="ListEmplPositionTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                            </decorator-section>
                        </decorator-screen>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditEmplPositionTypes">
        <section>
            <actions>
                <set field="titleProperty" value="HumanResFindPositionTypes"/>
                <set field="headerItem" value="EmplPositionTypes"/>
                <set field="tabButtonItem" value="EmplPositionTypes"/>
                <set field="tabButtonItem2" value="EditEmplPositionType"/>
                <set field="emplPositionTypeId" from-field="parameters.emplPositionTypeId"/>
                <entity-one entity-name="EmplPositionType" value-field="emplPositionType"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <not>
                                    <if-empty field="emplPositionTypeId"/>
                                </not>
                            </condition>
                            <widgets>
                                <include-menu location="component://humanres/widget/HumanresMenus.xml" name="EmplPositionTypeTabBar"/>
                            </widgets>
                        </section>
                        <screenlet title="${uiLabelMap.HumanResEditEmplPositionType}">
                            <section>
                                <widgets>
                                    <include-form name="EditEmplPositionTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                                </widgets>
                            </section>
                        </screenlet>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditEmplPositionTypeRates">
        <section>
            <actions>
                <set field="titleProperty" value="HumanResEmplPositionTypeRate"/>
                <set field="headerItem" value="EmplPositionTypes"/>
                <set field="tabButtonItem" value="EmplPositionTypes"/>
                <set field="tabButtonItem2" value="EditEmplPositionTypeRate"/>
                <set field="emplPositionTypeId" from-field="parameters.emplPositionTypeId"/>
                <entity-one entity-name="EmplPositionTypeRate" value-field="emplPositionTypeRate"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <include-menu location="component://humanres/widget/HumanresMenus.xml" name="EmplPositionTypeTabBar"/>
                        <screenlet id="AddEmplPositionTypeRatePanel" title="${uiLabelMap.CommonAdd} ${uiLabelMap.HumanResEmplPositionType} ${uiLabelMap.CommonRate}" collapsible="true">
                            <include-form name="AddEmplPositionTypeRate" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                            <include-form name="ListEmplPositionTypeRates" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditTerminationReasons">
        <section>
            <actions>
                <set field="titleProperty" value="HumanResAddTerminationReason"/>
                <set field="tabButtonItem" value="TerminationReason"/>
                <set field="terminationReasonId" from-field="parameters.terminationReasonId"/>
                <entity-one entity-name="TerminationReason" value-field="terminationReason"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <screenlet id="AddTerminationReasonPanel" title="${uiLabelMap.HumanResAddTerminationReason}" collapsible="true">
                            <include-form name="AddTerminationReason" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                        <include-form name="ListTerminationReasons" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditJobInterviewType">
        <section>                        
            <actions>
                <set field="tabButtonItem" value="JobInterviewType"/>
                <set field="titleProperty" value="PageTitleEditJobInterviewType"/>
                <set field="jobInterviewTypeId" from-field="parameters.jobInterviewTypeId"/>
                <entity-one entity-name="JobInterviewType" value-field="interviewType" />
            </actions>            
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">                                                                                       
                        <screenlet id="AddJobInterviewTypePanel" title="${uiLabelMap.HumanResAddJobInterviewType}" collapsible="true">
                            <include-form name="AddJobInterviewType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet> 
                        <include-form name="ListJobInterviewType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>            
        </section>
    </screen>
    <screen name="EditTrainingTypes">
        <section>                        
            <actions>
                <set field="tabButtonItem" value="EditTrainingTypes"/>
                <set field="titleProperty" value="PageTitleEditTrainingTypes"/>
            </actions>            
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">                                                                                       
                        <screenlet id="AddTrainingTypePanel" title="${uiLabelMap.CommonAdd} ${uiLabelMap.HumanResTrainingTypes}" collapsible="true">
                            <include-form name="AddTrainingTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                            <include-form name="ListTrainingTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>            
        </section>
    </screen>
    <screen name="EditEmplLeaveTypes">
        <section>
            <actions>
                <set field="titleProperty" value="HumanResEditEmplLeaveType"/>
                <set field="headerItem" value="GlobalHRSettings"/>
                <set field="tabButtonItem" value="EmplLeaveType"/>
                <set field="leaveTypeId" from-field="parameters.leaveTypeId"/>
                <entity-one entity-name="EmplLeaveType" value-field="emplLeaveType"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <include-menu name="EmplLeaveReasonTypeTabBar" location="component://humanres/widget/HumanresMenus.xml"/>
                        <screenlet id="AddEmplLeaveTypePanel" title="${uiLabelMap.HumanResAddEmplLeaveType}" collapsible="true">
                            <include-form name="AddEmplLeaveType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                        <include-form name="ListEmplLeaveTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="EditEmplLeaveReasonTypes">
        <section>
            <actions>
                <set field="titleProperty" value="HumanResEditEmplReasonype"/>
                <set field="headerItem" value="GlobalHRSettings"/>
                <set field="tabButtonItem" value="EmplLeaveReasonType"/>
                <set field="emplLeaveReasonTypeId" from-field="parameters.emplLeaveReasonTypeId"/>
                <entity-one entity-name="EmplLeaveReasonType" value-field="emplreasonType"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <include-menu name="EmplLeaveReasonTypeTabBar" location="component://humanres/widget/HumanresMenus.xml"/>
                        <screenlet id="AddEmplReasonTypePanel" title="${uiLabelMap.HumanResAddEmplLeaveReasonType}" collapsible="true">
                            <include-form name="AddEmplLeaveReasonType" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                        </screenlet>
                        <include-form name="ListEmplLeaveReasonTypes" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="PublicHoliday">
        <section>
            <actions>
                <set field="titleProperty" value="PageTitlePublicHoliday"/>
                <set field="headerItem" value="GlobalHRSettings"/>
                <set field="tabButtonItem" value="publicHoliday"/>
                <entity-one entity-name="WorkEffort" value-field="workEffort"/>
            </actions>
            <widgets>
                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <widgets>
                                <screenlet id="addPublicHoliday" title="${uiLabelMap.PageTitleAddPublicHoliday}" collapsible="true">
                                    <include-form name="AddPublicHoliday" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                                </screenlet>
                                <screenlet id="listPublicHoliday" title="${uiLabelMap.PageTitlePublicHolidayList}" collapsible="true">
                                    <include-form name="ListPublicHoliday" location="component://humanres/widget/forms/GlobalHRSettingForms.xml"/>
                                </screenlet>
                            </widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
</screens>
