You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by jl...@apache.org on 2009/10/30 11:07:09 UTC

svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Author: jleroux
Date: Fri Oct 30 10:07:09 2009
New Revision: 831249

URL: http://svn.apache.org/viewvc?rev=831249&view=rev
Log:
A patch from Pradeep Ruhil "HR Leave Enhancement ." (https://issues.apache.org/jira/browse/OFBIZ-2938) - OFBIZ-2938
In this patch we are doing enhancement in HumanResource Leave Module. 
Initially we can only create new leave application for a partyId. 
But there was not functionality available for approval of leave. 
So in this patch we have given functionality for Leave approval as well as leave creation. 
+ A better French label

Modified:
    ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml
    ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
    ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
    ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml
    ofbiz/trunk/applications/humanres/servicedef/services.xml
    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml
    ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml
    ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
    ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml
    ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
    ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml
    ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml
    ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml

Modified: ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml (original)
+++ ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml Fri Oct 30 10:07:09 2009
@@ -224,7 +224,7 @@
     </property>
     <property key="FormFieldTitle_leaveTypeId">
         <value xml:lang="en">Leave Type Id</value>
-        <value xml:lang="fr">Réf. de type de congé</value>
+        <value xml:lang="fr">Type de congé</value>
         <value xml:lang="it">Tipo di licenziamento</value>
         <value xml:lang="zh">请假类型编号</value>
     </property>
@@ -1873,4 +1873,31 @@
     <property key="PageTitleFindTrainingApprovals"> 
         <value xml:lang="en">Find Training Approvals</value>
     </property>
+    <property key="HumanResEmplReasonType"> 
+        <value xml:lang="en">EmplLeave Reason Type</value>
+    </property>
+    <property key="HumanResAddEmplLeaveReasonType"> 
+        <value xml:lang="en">Add Employee Leave Reason</value>
+    </property>
+    <property key="HumanResLeaveApproval"> 
+        <value xml:lang="en">Leave Approval</value>
+    </property>
+    <property key="HumanResEditLeaveApprovalStatus"> 
+        <value xml:lang="en">Edit Leave Approval Status</value>
+    </property>
+    <property key="HumanResLeaveStatus"> 
+        <value xml:lang="en">Leave</value>
+    </property>
+    <property key="HumanResEmployeeLeave"> 
+        <value xml:lang="en">Employee Leave</value>
+    </property>
+    <property key="HumanResEmployeeLeaveType"> 
+        <value xml:lang="en">Leave Type</value>
+    </property>
+    <property key="HumanResEmployeeType"> 
+        <value xml:lang="en">Reason Type</value>
+    </property>
+    <property key="PartyApproverId"> 
+        <value xml:lang="en">Approver Party Id</value>
+    </property>    
 </resource>

Modified: ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml (original)
+++ ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml Fri Oct 30 10:07:09 2009
@@ -53,6 +53,10 @@
     <StatusItem statusId="TRAINING_APPROVED" statusTypeId="TRAINING_STATUS"  description="Approved"/>
     <StatusItem statusId="TRAINING_REJECTED" statusTypeId="TRAINING_STATUS"  description="Rejected"/>
 
+    <StatusType statusTypeId="LEAVE_STATUS" description="Employee Leave Status"/>
+    <StatusItem statusId="LEAVE_APPROVED" statusTypeId="LEAVE_STATUS"  description="Approved"/>
+    <StatusItem statusId="LEAVE_REJECTED" statusTypeId="LEAVE_STATUS"  description="Rejected"/>
+
     <EmplPositionType description="Programmer" hasTable="N" parentTypeId="" emplPositionTypeId="PROGRAMMER"/>
     <EmplPositionType description="System Administrator" hasTable="N" parentTypeId="" emplPositionTypeId="SYS_ADMIN"/>
     <EmplPositionType description="Business Analyst" hasTable="N" parentTypeId="" emplPositionTypeId="BIZ_ANALYST"/>
@@ -101,8 +105,10 @@
     <TerminationType description="Fired" hasTable="N" parentTypeId="" terminationTypeId="FIRE"/>
     <TerminationType description="Retirement" hasTable="N" parentTypeId="" terminationTypeId="RETIRE"/>
 
-    <EmplLeaveType description="Medical" hasTable="N" parentTypeId="" leaveTypeId="MEDICAL"/>
-    <EmplLeaveType description="Casual" hasTable="N" parentTypeId="" leaveTypeId="CASUAL"/>
+    <EmplLeaveType description="Inland Earned Leave" hasTable="N" parentTypeId="" leaveTypeId="INLAND_EARNED"/>
+    <EmplLeaveType description="Inland Loss of Pay" hasTable="N" parentTypeId="" leaveTypeId="LOSS_OF_PAY"/>
+    <EmplLeaveType description="Inland Restricted Holiday" hasTable="N" parentTypeId="" leaveTypeId="RESTRICTED_HOLIDAY"/>
+    <EmplLeaveType description="Inland Special Day Off" hasTable="N" parentTypeId="" leaveTypeId="SPECIAL_DAY_OFF"/>
 
     <WebSite webSiteId="HR" siteName="Human Resource Manager" visualThemeSetId="BACKOFFICE"/>
         
@@ -142,5 +148,8 @@
     <Enumeration description="Written Aptitude Exam" enumCode="WRITTEN_APT" enumId="EXAM_WRITTEN_APT" sequenceId="01" enumTypeId="EXAM_TYPE"/>
     <Enumeration description="Technical Exam" enumCode="TECHNICAL" enumId="EXAM_TECHNICAL" sequenceId="02" enumTypeId="EXAM_TYPE"/>
     <Enumeration description="Group Discussion" enumCode="GROUP_DISCN" enumId="EXAM_GROUP_DISCN" sequenceId="03" enumTypeId="EXAM_TYPE"/>
+    
+    <EmplLeaveReasonType description="Medical" hasTable="N" parentTypeId="" emplLeaveReasonTypeId="Fever"/>
+    <EmplLeaveReasonType description="Casual" hasTable="N" parentTypeId="" emplLeaveReasonTypeId="Personal Work"/>
 
 </entity-engine-xml>

Modified: ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml Fri Oct 30 10:07:09 2009
@@ -432,8 +432,11 @@
             title="Employee Leave Entity">
         <field name="partyId" type="id-ne"/>
         <field name="leaveTypeId" type="id-ne"/>
+        <field name="emplLeaveReasonTypeId" type="id-ne"/>
         <field name="fromDate" type="date-time"/>
         <field name="thruDate" type="date-time"/>
+        <field name="approverPartyId" type="id-ne"/>
+      	<field name="leaveStatus" type="short-varchar"/>
         <field name="description" type="description"/>
         <prim-key field="partyId"/>
         <prim-key field="leaveTypeId"/>
@@ -444,6 +447,12 @@
         <relation type="one" fk-name="EMPL_LEAVE_ELETP" rel-entity-name="EmplLeaveType">
             <key-map field-name="leaveTypeId"/>
         </relation>
+        <relation type="one" fk-name="EMPL_LEAVE_REASON_ELETP" rel-entity-name="EmplLeaveReasonType">
+            <key-map field-name="emplLeaveReasonTypeId"/>
+        </relation>
+        <relation type="one" fk-name="EMPL_LEAVE_APPR" title="Approver" rel-entity-name="Party">
+            <key-map field-name="approverPartyId" rel-field-name="partyId"/>
+	    </relation>
     </entity>
     <entity entity-name="EmplLeaveType"
             package-name="org.ofbiz.humanres.employment"
@@ -934,4 +943,16 @@
         <field name="trainingRequestId" type="id-ne"></field>
         <prim-key field="trainingRequestId"/>
     </entity>
+    <entity entity-name="EmplLeaveReasonType"
+            package-name="org.ofbiz.humanres.employment"
+            title="Leave Reason Type Entity">
+        <field name="emplLeaveReasonTypeId" type="id-ne"/>
+        <field name="parentTypeId" type="id-ne"/>
+        <field name="hasTable" type="indicator"/>
+        <field name="description" type="description"/>
+        <prim-key field="emplLeaveReasonTypeId"/>
+        <relation type="one" fk-name="EMPL_REASON_TPAR" title="Parent" rel-entity-name="EmplLeaveReasonType">
+            <key-map field-name="parentTypeId" rel-field-name="emplLeaveReasonTypeId"/>
+        </relation>
+     </entity>
 </entitymodel>

Modified: ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml (original)
+++ ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml Fri Oct 30 10:07:09 2009
@@ -648,7 +648,8 @@
         <entity-one entity-name="AgreementEmploymentAppl" value-field="agreementEmploymentAppl"/>
         <remove-value value-field="agreementEmploymentAppl"/>
     </simple-method>
-        <simple-method method-name="createEmplLeave" short-description="Create Employee Leave">
+    
+    <simple-method method-name="createEmplLeave" short-description="Create Employee Leave">
         <make-value entity-name="EmplLeave" value-field="newEntity"/>
         <set-pk-fields value-field="newEntity" map="parameters"/>
         <set-nonpk-fields value-field="newEntity" map="parameters"/>
@@ -662,6 +663,11 @@
         <store-value value-field="lookedUpValue"/>
     </simple-method>
 
+    <simple-method method-name="deleteEmplLeave" short-description="Delete Employee Leave">
+        <entity-one entity-name="EmplLeave" value-field="emplLeave"/>
+        <remove-value value-field="emplLeave"/>
+    </simple-method>
+
     <simple-method method-name="createEmplLeaveType" short-description="Create a LeaveType">
         <make-value entity-name="EmplLeaveType" value-field="newEntity"/>
         <set-pk-fields map="parameters" value-field="newEntity"/>
@@ -863,4 +869,32 @@
         <remove-value value-field="lookedUpValue"/>
     </simple-method>
     
+    <simple-method method-name="createEmplLeaveReasonType" short-description="Create a Leave Reason Type">
+        <make-value entity-name="EmplLeaveReasonType" value-field="newEntity"/>
+        <set-pk-fields map="parameters" value-field="newEntity"/>
+        <set-nonpk-fields map="parameters" value-field="newEntity"/>
+        <if-empty field="newEntity.emplLeaveReasonTypeId">
+            <sequenced-id sequence-name="EmplLeaveReasonType" field="newEntity.emplLeaveReasonTypeId"/>
+        </if-empty>
+        <field-to-result field="newEntity.emplLeaveReasonTypeId" result-name="emplLeaveReasonTypeId"/>
+        <create-value value-field="newEntity"/>
+    </simple-method>
+    
+    <simple-method method-name="updateEmplLeaveReasonType" short-description="Update leave Reason Type">
+        <entity-one entity-name="EmplLeaveReasonType" value-field="lookedUpValue"/>
+        <set-nonpk-fields value-field="lookedUpValue" map="parameters"/>
+        <store-value value-field="lookedUpValue"/>
+    </simple-method>
+    
+    <simple-method method-name="deleteEmplLeaveReasonType" short-description="Delete leave Reason Type">
+        <entity-one entity-name="EmplLeaveReasonType" value-field="lookedUpValue"/>
+        <remove-value value-field="lookedUpValue"/>
+    </simple-method>
+    
+    <simple-method method-name="updateEmplLeaveStatus" short-description="Update Leave Approval Status">
+        <entity-one entity-name="EmplLeave" value-field="lookedUpValue"/>
+        <set-nonpk-fields value-field="lookedUpValue" map="parameters"/>
+        <store-value value-field="lookedUpValue"/>
+    </simple-method>
+    
 </simple-methods>

Modified: ofbiz/trunk/applications/humanres/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/servicedef/services.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/servicedef/services.xml (original)
+++ ofbiz/trunk/applications/humanres/servicedef/services.xml Fri Oct 30 10:07:09 2009
@@ -664,12 +664,15 @@
         <permission-service service-name="humanResManagerPermission" main-action="DELETE"/>
         <auto-attributes mode="IN" include="pk" optional="false"/>
     </service>
+    
     <service name="createEmplLeave" engine="simple" default-entity-name="EmplLeave"
              location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="createEmplLeave" auth="true">
         <description>Create Employee Leave</description>
         <permission-service service-name="humanResManagerPermission" main-action="CREATE"/>
         <auto-attributes mode="IN" include="pk" optional="false"/>
         <auto-attributes mode="IN" include="nonpk" optional="true"/>
+        <override name="approverPartyId" optional="false"/>
+        <override name="thruDate" optional="false"/>
     </service>
 
     <service name="updateEmplLeave" engine="simple" default-entity-name="EmplLeave"
@@ -678,8 +681,17 @@
         <permission-service service-name="humanResManagerPermission" main-action="UPDATE"/>
         <auto-attributes mode="IN" include="pk" optional="false"/>
         <auto-attributes mode="IN" include="nonpk" optional="true"/>
+        <override name="approverPartyId" optional="false"/>
+        <override name="thruDate" optional="false"/>
     </service>
 
+    <service name="deleteEmplLeave" engine="simple" default-entity-name="EmplLeave"
+             location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="deleteEmplLeave" auth="true">
+        <description>Delete AgreementEmploymentAppl</description>
+        <permission-service service-name="humanResManagerPermission" main-action="DELETE"/>
+        <auto-attributes mode="IN" include="pk" optional="false"/>
+    </service>
+    
     <service name="createEmplLeaveType" engine="simple" default-entity-name="EmplLeaveType"
              location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="createEmplLeaveType" auth="true">
         <description>Create Valid LeaveType</description>
@@ -893,4 +905,37 @@
         <auto-attributes mode="IN" include="pk" optional="false"/>
     </service>
 
+    <service name="createEmplLeaveReasonType" engine="simple" default-entity-name="EmplLeaveReasonType"
+             location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="createEmplLeaveReasonType" auth="true">
+        <description>Create Valid Leave Reason Type</description>
+        <permission-service service-name="humanResManagerPermission" main-action="CREATE"/>
+        <auto-attributes mode="INOUT" include="pk" optional="true"/>
+        <auto-attributes mode="IN" include="nonpk" optional="true"/>
+        <override name="description" optional="false"/>
+    </service>
+    
+    <service name="updateEmplLeaveReasonType" engine="simple" default-entity-name="EmplLeaveReasonType"
+             location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="updateEmplLeaveReasonType" auth="true">
+        <description>Update Valid Leave Reason Type</description>
+        <permission-service service-name="humanResManagerPermission" main-action="UPDATE"/>
+        <auto-attributes mode="IN" include="pk" optional="false"/>
+        <auto-attributes mode="IN" include="nonpk" optional="true"/>
+        <override name="description" optional="false"/>
+    </service>
+    
+    <service name="deleteEmplLeaveReasonType" engine="simple" default-entity-name="EmplLeaveReasonType"
+        location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="deleteEmplLeaveReasonType" auth="true">
+        <description>Delete Valid Leave Reason Type</description>
+        <permission-service service-name="humanResManagerPermission" main-action="DELETE"/>
+        <auto-attributes mode="IN" include="pk" optional="false"/>
+    </service>
+    
+    <service name="updateEmplLeaveStatus" engine="simple" default-entity-name="EmplLeave"
+            location="component://humanres/script/org/ofbiz/humanres/HumanResServices.xml" invoke="updateEmplLeaveStatus" auth="true">
+        <description>Update Leave Approval Status</description>
+        <permission-service service-name="humanResManagerPermission" main-action="UPDATE"/>
+        <auto-attributes mode="IN" include="pk" optional="false"/>
+        <auto-attributes mode="IN" include="nonpk" optional="true"/>
+    </service>
+    
 </services>

Modified: ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml (original)
+++ ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml Fri Oct 30 10:07:09 2009
@@ -396,9 +396,15 @@
         <security https="true" auth="true"/>
         <response name="success" type="view" value="NewEmplLeave"/>
     </request-map>
-    <request-map uri="EditEmplLeaves">
+    <request-map uri="EditEmplLeave">
         <security https="true" auth="true"/>
-        <response name="success" type="view" value="EditEmplLeaves"/>
+        <response name="success" type="view" value="EditEmplLeave"/>
+    </request-map>
+    <request-map uri="deleteEmplLeave">
+        <security https="true" auth="true"/>
+        <event type="service" invoke="deleteEmplLeave"/>
+        <response name="success" type="view" value="FindEmplLeaves"/>
+        <response name="error" type="view" value="FindEmplLeaves"/>
     </request-map>
     <request-map uri="EditEmplLeaveTypes">
         <security https="true" auth="true"/>
@@ -821,14 +827,14 @@
     <request-map uri="createEmplLeaveExt">
         <security https="true" auth="true"/>
         <event type="service" invoke="createEmplLeave"/>
-        <response name="success" type="view" value="EditEmplLeaves"/>
-        <response name="error" type="view" value="EditEmplLeaves"/>
+        <response name="success" type="view" value="EditEmplLeave"/>
+        <response name="error" type="view" value="EditEmplLeave"/>
     </request-map>
     <request-map uri="updateEmplLeaveExt">
         <security https="true" auth="true"/>
-        <event type="service-multi" invoke="updateEmplLeave"/>
-        <response name="success" type="view" value="EditEmplLeaves"/>
-        <response name="error" type="view" value="EditEmplLeaves"/>
+        <event type="service" invoke="updateEmplLeave"/>
+        <response name="success" type="view" value="EditEmplLeave"/>
+        <response name="error" type="view" value="EditEmplLeave"/>
     </request-map>
 
     <!--====================Recruitment Requests===================================-->
@@ -1020,6 +1026,42 @@
         <security auth="true" https="true"/>
         <response name="success" type="view" value="LookupTraining"/>
     </request-map>
+    <request-map uri="EditEmplLeaveReasonTypes">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="EditEmplLeaveReasonTypes"/>
+    </request-map>
+    <request-map uri="createEmplLeaveReasonType">
+        <security https="true" auth="true"/>
+        <event type="service" invoke="createEmplLeaveReasonType"/>
+        <response name="success" type="view" value="EditEmplLeaveReasonTypes"/>
+        <response name="error" type="view" value="EditEmplLeaveReasonTypes"/>
+    </request-map>
+    <request-map uri="updateEmplLeaveReasonType">
+        <security https="true" auth="true"/>
+        <event type="service-multi" invoke="updateEmplLeaveReasonType"/>
+        <response name="success" type="view" value="EditEmplLeaveReasonTypes"/>
+        <response name="error" type="view" value="EditEmplLeaveReasonTypes"/>
+    </request-map>
+    <request-map uri="deleteEmplLeaveReasonType">
+        <security https="true" auth="true"/>
+        <event type="service" invoke="deleteEmplLeaveReasonType"/>
+        <response name="success" type="view" value="EditEmplLeaveReasonTypes"/>
+        <response name="error" type="view" value="EditEmplLeaveReasonTypes"/>
+    </request-map>
+    <request-map uri="FindLeaveApprovals">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="FindLeaveApprovals"/>
+    </request-map>
+    <request-map uri="EditEmplLeaveStatus">
+       <security https="true" auth="true"/>
+        <response name="success" type="view" value="EditEmplLeaveStatus"/>
+    </request-map>
+    <request-map uri="updateEmplLeaveStatus">
+        <security https="true" auth="true"/>
+        <event type="service" invoke="updateEmplLeaveStatus"/>
+        <response name="success" type="view" value="EditEmplLeaveStatus"/>
+        <response name="error" type="view" value="EditEmplLeaveStatus"/>
+    </request-map>
     <!-- ===================Lookup Request===================== -->
     <request-map uri="LookupPartyName"><security auth="true" https="true"/><response name="success" type="view" value="LookupPartyName"/></request-map>
     <request-map uri="LookupPayment"><security auth="true" https="true"/><response name="success" type="view" value="LookupPayment"/></request-map>
@@ -1124,8 +1166,11 @@
 
     <view-map name="FindEmplLeaves" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#FindEmplLeaves"/>
     <view-map name="NewEmplLeave" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#NewEmplLeave"/>
-    <view-map name="EditEmplLeaves" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#EditEmplLeaves"/>
-    <view-map name="EditEmplLeaveTypes" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#EditEmplLeaveTypes"/>
+    <view-map name="EditEmplLeave" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#EditEmplLeave"/>
+    <view-map name="EditEmplLeaveTypes" type="screen" page="component://humanres/widget/GlobalHRSettingScreens.xml#EditEmplLeaveTypes"/>
+    <view-map name="EditEmplLeaveReasonTypes" type="screen" page="component://humanres/widget/GlobalHRSettingScreens.xml#EditEmplLeaveReasonTypes"/>
+    <view-map name="FindLeaveApprovals" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#FindLeaveApprovals"/>
+    <view-map name="EditEmplLeaveStatus" type="screen" page="component://humanres/widget/EmplLeaveScreens.xml#EditEmplLeaveStatus"/>
     
     <!-- ==================Recruitment View Map===================== -->
     <view-map name="FindJobRequisitions" type="screen" page="component://humanres/widget/RecruitmentScreens.xml#FindJobRequisitions"/>

Modified: ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml Fri Oct 30 10:07:09 2009
@@ -29,92 +29,131 @@
                 <set field="leaveTypeId" from-field="parameters.leaveTypeId"/>
                 <set field="fromDate" from-field="parameters.fromDate"/>
                 <set field="emplLeaveCtx" from-field="parameters"/>
+                <service service-name="humanResManagerPermission" result-map="permResult">
+                    <field-map field-name="mainAction" value="ADMIN"/>
+                </service>
+                <set field="hasAdminPermission" from-field="permResult.hasPermission"/>
             </actions>
             <widgets>
                 <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                     <decorator-section name="body">
-                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
-                            <decorator-section name="menu-bar">
-                                <section>
-                                    <widgets>
-                                        <container style="button-bar">
-                                            <link target="NewEmplLeave" text="${uiLabelMap.HumanResNewLeave}" style="buttontext"/>
-                                        </container>
-                                    </widgets>
-                                </section>
-                            </decorator-section>
-                            <decorator-section name="search-options">
-                                <include-form name="FindEmplLeaves" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
-                            </decorator-section>
-                            <decorator-section name="search-results">
-                                <include-form name="ListEmplLeaves" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
-                            </decorator-section>
-                        </decorator-screen>
+                        <include-menu name="EmplLeaveTabBar" location="component://humanres/widget/HumanresMenus.xml"/>
+                  	    <section>
+                            <condition>
+                                <if-has-permission permission="HUMANRES" action="_VIEW"/>
+                            </condition>
+                            <widgets>
+		                        <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
+		                            <decorator-section name="menu-bar">
+		                                <section>
+		                                    <widgets>
+		                                        <container style="button-bar">
+		                                            <link target="EditEmplLeave" text="${uiLabelMap.HumanResNewLeave}" style="buttontext"/>
+		                                        </container>
+		                                    </widgets>
+		                                </section>
+		                            </decorator-section>
+		                            <decorator-section name="search-options">
+		                                <include-form name="FindEmplLeaves" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
+		                            </decorator-section>
+		                            <decorator-section name="search-results">
+		                                <include-form name="ListEmplLeaves" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
+		                            </decorator-section>
+		                        </decorator-screen>
+		                    </widgets>
+		                </section>
                     </decorator-section>
                 </decorator-screen>
             </widgets>
         </section>
     </screen>
-    <screen name="NewEmplLeave">
-        <section>
+    <screen name="FindLeaveApprovals">
+    	<section>
             <actions>
-                <set field="titleProperty" value="HumanResAddEmplLeave"/>
+                <set field="titleProperty" value="PageTitleFindApprovals"/>
+                <set field="tabButtonItem" value="Approval"/>
                 <set field="headerItem" value="Leave"/>
-                <set field="emplLeaveCtx" from-field="parameters.PartyId"/>
+                <service service-name="humanResManagerPermission" result-map="permResult">
+                    <field-map field-name="mainAction" value="ADMIN"/>
+                </service>
+                <set field="hasAdminPermission" from-field="permResult.hasPermission"/>
+                <set field="approverPartyId" from-field="parameters.userLogin.partyId"/>
             </actions>
             <widgets>
                 <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                     <decorator-section name="body">
-                        <screenlet title="${uiLabelMap.HumanResAddEmplLeave}">
-                            <section>
-                                <widgets>
-                                    <include-form name="AddEmplLeave" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
-                                </widgets>
-                            </section>
-                        </screenlet>
+                        <include-menu name="EmplLeaveTabBar" location="component://humanres/widget/HumanresMenus.xml"/>
+                        <section>
+                            <condition>
+                                <if-has-permission permission="HUMANRES" action="_VIEW"/>
+                            </condition>
+                            <widgets>
+                                <decorator-screen name="FindScreenDecorator" location="component://common/widget/CommonScreens.xml">
+                                    <decorator-section name="search-options">
+                                        <include-form name="FindLeaveApprovals" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
+                                    </decorator-section>
+                                    <decorator-section name="search-results">
+                                        <include-form name="ListLeaveApprovals" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
+                                    </decorator-section>
+                                </decorator-screen>
+                            </widgets>
+                            <fail-widgets>
+                                <label style="h3">${uiLabelMap.HumanResViewPermissionError}</label>
+                            </fail-widgets>
+                        </section>
                     </decorator-section>
                 </decorator-screen>
             </widgets>
         </section>
     </screen>
-    <screen name="EditEmplLeaves">
+    <screen name="EditEmplLeave">
         <section>
             <actions>
                 <set field="titleProperty" value="HumanResEditEmplLeave"/>
-                <set field="headerItem" value="Employee"/>
+                <set field="headerItem" value="Leave"/>
                 <set field="tabButtonItem" value="EditEmplLeaves"/>
                 <set field="partyId" from-field="parameters.partyId"/>
-                <set field="emplLeaveCtx.partyId" from-field="parameters.partyId"/>
-                <set field="parameters.insideEmployee" value="true"/>
+                <set field="leaveTypeId" from-field="parameters.leaveTypeId"/>
+                <set field="fromDate" from-field="parameters.fromDate"/>
+                <entity-one entity-name="EmplLeave" value-field="leaveApp" auto-field-map="false">
+                    <field-map field-name="partyId" from-field="partyId"/>
+                    <field-map field-name="leaveTypeId" from-field="leaveTypeId"/>
+                    <field-map field-name="fromDate" from-field="fromDate"/>
+                </entity-one>
             </actions>
             <widgets>
-                <decorator-screen name="CommonPartyDecorator" location="${parameters.mainDecoratorLocation}">
+                 <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                     <decorator-section name="body">
+                        <include-menu name="EmplLeaveTabBar" location="component://humanres/widget/HumanresMenus.xml"/>	
                         <screenlet id="AddEmplLeavePanel" title="${uiLabelMap.HumanResAddEmplLeave}" collapsible="true">
-                            <include-form name="AddEmplLeave" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
+                            <include-form name="EditEmplLeave" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
                         </screenlet>
-                        <include-form name="ListEmplLeaves" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
                     </decorator-section>
                 </decorator-screen>
             </widgets>
         </section>
     </screen>
-    <screen name="EditEmplLeaveTypes">
+    <screen name="EditEmplLeaveStatus">
         <section>
             <actions>
-                <set field="titleProperty" value="HumanResEditEmplLeaveType"/>
-                <set field="headerItem" value="GlobalHRSettings"/>
-                <set field="tabButtonItem" value="EmplLeaveType"/>
+                <set field="titleProperty" value="PageTitleEditApprovalStatus"/>
+                <set field="tabButtonItem" value="Approval"/>                
+                <set field="partyId" from-field="parameters.partyId"/>
                 <set field="leaveTypeId" from-field="parameters.leaveTypeId"/>
-                <entity-one entity-name="EmplLeaveType" value-field="emplLeaveType"/>
+                <set field="fromDate" from-field="parameters.fromDate"/>
+                <entity-one entity-name="EmplLeave" value-field="leaveApp" auto-field-map="false">
+                    <field-map field-name="partyId" from-field="partyId"/>
+                    <field-map field-name="leaveTypeId" from-field="leaveTypeId"/>
+                    <field-map field-name="fromDate" from-field="fromDate"/>
+                </entity-one>
             </actions>
             <widgets>
-                <decorator-screen name="GlobalHRSettingsDecorator" location="${parameters.mainDecoratorLocation}">
+                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                     <decorator-section name="body">
-                        <screenlet id="AddEmplLeaveTypePanel" title="${uiLabelMap.HumanResAddEmplLeaveType}" collapsible="true">
-                            <include-form name="AddEmplLeaveType" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
+                        <include-menu name="EmplLeaveTabBar" location="component://humanres/widget/HumanresMenus.xml"/>
+                        <screenlet id="EditEmplLeaveStatus" title="${uiLabelMap.HumanResEditLeaveApprovalStatus}" collapsible="true">
+                            <include-form name="EditEmplLeaveStatus" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
                         </screenlet>
-                        <include-form name="ListEmplLeaveTypes" location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
                     </decorator-section>
                 </decorator-screen>
             </widgets>

Modified: ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml Fri Oct 30 10:07:09 2009
@@ -274,8 +274,7 @@
                 <set field="titleProperty" value="HumanResEditEmplLeave"/>
                 <set field="tabButtonItem" value="EditEmployeeLeaves"/>
                 <set field="partyId" from-field="parameters.partyId"/>
-                <set field="emplLeaveCtx.partyId" from-field="parameters.partyId"/>
-                <set field="parameters.insideEmployee" value="true"/>
+                <entity-one entity-name="EmplLeave" value-field="leaveApp"/>
             </actions>
             <widgets>
                 <decorator-screen name="EmployeeDecorator" location="${parameters.mainDecoratorLocation}">

Modified: ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml Fri Oct 30 10:07:09 2009
@@ -226,4 +226,48 @@
             </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>
 </screens>

Modified: ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml Fri Oct 30 10:07:09 2009
@@ -289,4 +289,27 @@
         </menu-item>
     </menu>
     
+	<menu name="EmplLeaveReasonTypeTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml"
+        default-menu-item-name="Employee Leave Reason Type" type="simple" menu-container-style="button-bar tab-bar" 
+        default-selected-style="selected" selected-menuitem-context-field-name="tabButtonItem">
+        <menu-item name="EmplLeaveType" title="${uiLabelMap.HumanResEmployeeLeaveType}">
+            <link target="EditEmplLeaveTypes"/>
+        </menu-item>
+        <menu-item name="EmplLeaveReasonType" title="${uiLabelMap.HumanResEmployeeType}">
+            <link target="EditEmplLeaveReasonTypes"/>
+        </menu-item>
+    </menu>
+    
+    <menu name="EmplLeaveTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml"
+        default-menu-item-name="Employee Leave" type="simple" menu-container-style="button-bar tab-bar" 
+        default-selected-style="selected" selected-menuitem-context-field-name="tabButtonItem">
+        <menu-item name="Employee Leave" title="${uiLabelMap.HumanResEmployeeLeave}">
+            <link target="FindEmplLeaves"/>
+        </menu-item>
+        <menu-item name="Approval" title="${uiLabelMap.HumanResLeaveApproval}">
+            <condition><if-has-permission permission="HUMANRES" action="_APPROVE"/></condition>
+            <link target="FindLeaveApprovals"/>
+        </menu-item>
+    </menu>
+
 </menus>

Modified: ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml Fri Oct 30 10:07:09 2009
@@ -29,66 +29,155 @@
                 <entity-options description="${description}" key-field-name="leaveTypeId" entity-name="EmplLeaveType"/>
             </drop-down>
         </field>
+        <field name="emplLeaveReasonTypeId">
+            <drop-down allow-empty="true">
+                <entity-options description="${description}" key-field-name="emplLeaveReasonTypeId" entity-name="EmplLeaveReasonType"/>
+            </drop-down>
+        </field>
+        <field name="leaveStatus">
+            <drop-down allow-empty="true">
+                <entity-options description="${description}" key-field-name="statusId" entity-name="StatusItem">
+                    <entity-constraint name="statusTypeId" operator="equals" value="LEAVE_STATUS"/>
+                    <entity-order-by field-name="description"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="approverPartyId" title="${uiLabelMap.PartyApproverId}"><lookup target-form-name="LookupPartyName"/></field>
+        <field name="description"><hidden/></field>
         <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
         <field name="searchButton" widget-style="smallSubmit"><submit button-type="button"/></field>
     </form>
-    <form name="ListEmplLeaves" type="multi" use-row-submit="true" separate-columns="true" target="updateEmplLeaveExt?partyId=${partyId}" list-name="listIt" paginate-target="FindEmplLeaves"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
+    <form name="ListEmplLeaves" list-name="listIt" type="list" odd-row-style="alternate-row" header-row-style="header-row-2" 
+        paginate-target="FindEmplLeaves" default-table-style="basic-table hover-bar">
         <actions>
+        	<set field="entityName" value="EmplLeave"/>
             <service service-name="performFind" result-map="result" result-map-list="listIt">
                 <field-map field-name="inputFields" from-field="parameters"/>
-                <field-map field-name="entityName" value="EmplLeave"/>
-                <field-map field-name="orderBy" value="fromDate"/>
+                <field-map field-name="entityName" from-field="entityName"/>
                 <field-map field-name="viewIndex" from-field="viewIndex"/>
                 <field-map field-name="viewSize" from-field="viewSize"/>
             </service>
-            <set field="insideEmployee" from-field="parameters.insideEmployee"/>
         </actions>
-        <alt-target use-when="insideEmployee==null" target="updateEmplLeave"/>
-        <auto-fields-service service-name="updateEmplLeave"/>
-        <field name="partyId"><display/></field>
-        <field name="leaveTypeId"><display/></field>
-        <field name="fromDate"><display/></field>
-        <field name="_rowSubmit" title="${uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></field>
-    </form>
-    <form name="AddEmplLeave" type="single" target="createEmplLeave"
+        <auto-fields-entity entity-name="EmplLeave" default-field-type="display"/>
+        <field name="partyId" field-name="partyId">
+            <display-entity entity-name="PartyNameView" description="${firstName} ${lastName}">
+                <sub-hyperlink target="/partymgr/control/viewprofile" target-type="inter-app" description="${partyId}" link-style="buttontext">
+                    <parameter param-name="partyId" from-field="partyId"/>
+                </sub-hyperlink>
+            </display-entity>
+        </field>
+        <field name="approverPartyId" field-name="partyId">
+            <display-entity entity-name="PartyNameView" description="${firstName} ${lastName}">
+                <sub-hyperlink target="/partymgr/control/viewprofile" target-type="inter-app" description="${approverPartyId}" link-style="buttontext">
+                    <parameter param-name="approverPartyId" from-field="approverPartyId"/>
+                </sub-hyperlink>
+            </display-entity>
+        </field>
+        <field name="leaveStatus"><display/></field>
+        <field name="updateLeave" title="${uiLabelMap.CommonUpdate}" widget-style="buttontext" use-when="hasAdminPermission">
+            <hyperlink also-hidden="false" description="${uiLabelMap.CommonUpdate}" target="EditEmplLeave"> 
+                <parameter param-name="partyId"/>
+                <parameter param-name="leaveTypeId"/>
+                <parameter param-name="fromDate"/>
+            </hyperlink>
+        </field>
+        <field name="deleteLink" title="${uiLabelMap.CommonDelete}" widget-style="buttontext" use-when="hasAdminPermission">
+            <hyperlink also-hidden="false" description="${uiLabelMap.CommonDelete}" target="deleteEmplLeave"> 
+                <parameter param-name="partyId"/>
+                <parameter param-name="leaveTypeId"/>
+                <parameter param-name="fromDate"/> 
+            </hyperlink>
+        </field>
+        <field name="description"><hidden/></field>
+      </form>
+    <form name="EditEmplLeave" type="single" target="updateEmplLeaveExt" default-map-name="leaveApp"
         header-row-style="header-row" default-table-style="basic-table">
-        <actions>
-            <set field="insideEmployee" from-field="parameters.insideEmployee"/>
-        </actions>
-        <alt-target use-when="insideEmployee != null" target="createEmplLeaveExt"/>
-        <auto-fields-service service-name="createEmplLeave"/>
-        <field name="partyId" use-when="emplLeaveCtx!=null"><hidden/></field>
-        <field name="partyId" use-when="emplLeaveCtx==null"><lookup target-form-name="LookupPartyName"/></field>
-        <field name="leaveTypeId">
+        <alt-target use-when="leaveApp==null" target="createEmplLeaveExt"/>
+        <auto-fields-service service-name="updateEmplLeave" map-name="leaveApp"/>
+        <field name="partyId" tooltip="${uiLabelMap.CommonRequired}"><lookup target-form-name="LookupPartyName"/></field>
+        <field name="approverPartyId" tooltip="${uiLabelMap.CommonRequired}"><lookup target-form-name="LookupPartyName"/></field>
+        <field name="leaveTypeId" tooltip="${uiLabelMap.CommonRequired}">
             <drop-down allow-empty="true">
                 <entity-options description="${description}" key-field-name="leaveTypeId" entity-name="EmplLeaveType"/>
             </drop-down>
         </field>
-        <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button-type="button"/></field>
+        <field name="emplLeaveReasonTypeId">
+            <drop-down allow-empty="true">
+                <entity-options description="${description}" key-field-name="emplLeaveReasonTypeId" entity-name="EmplLeaveReasonType"/>
+            </drop-down>
+        </field>
+        <field name="fromDate" tooltip="${uiLabelMap.CommonRequired}"><date-time type="timestamp"></date-time></field>
+        <field name="thruDate" tooltip="${uiLabelMap.CommonRequired}"><date-time type="timestamp"></date-time></field>
+        <field name="leaveStatus"><hidden value="LEAVE_CREATED"/></field>
+        <field name="submitButton" use-when="leaveApp==null" title="${uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button-type="button"/></field>
+        <field name="submitButton" use-when="leaveApp!=null" title="Update" widget-style="smallSubmit"><submit button-type="button"/></field>
+    </form>
+   <form name="FindLeaveApprovals" target="FindLeaveApprovals" type="single">
+        <auto-fields-entity entity-name="EmplLeave" default-field-type="find"/>
+        <field name="noConditionFind"><hidden value="Y"/></field>
+        <!--<field name="approverPartyId" use-when="!hasAdminPermission"><hidden value="${approverPartyId}"/></field>-->
+        <field name="partyId"><lookup target-form-name="LookupPartyName"/></field>
+        <field name="leaveStatus" title="${uiLabelMap.HumanResLeaveStatus} ${uiLabelMap.CommonStatus}">
+            <drop-down allow-empty="true">
+                <entity-options description="${description}" key-field-name="statusId" entity-name="StatusItem">
+                    <entity-constraint name="statusTypeId" operator="equals" value="LEAVE_STATUS"/>
+                    <entity-order-by field-name="description"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="description"><hidden/></field>
+        <field name="searchButton" widget-style="smallSubmit"><submit button-type="button"/></field>
     </form>
-    <form name="ListEmplLeaveTypes" type="multi" title="" target="updateEmplLeaveType"
-        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
+    <form name="ListLeaveApprovals" list-name="listIt" type="list" odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
         <actions>
-            <entity-condition entity-name="EmplLeaveType"><order-by field-name="leaveTypeId"/></entity-condition>
+            <set field="entityName" value="EmplLeave"/>
+            <service service-name="performFind" result-map="result" result-map-list="listIt">
+                <field-map field-name="inputFields" from-field="parameters"/>
+                <field-map field-name="entityName" from-field="entityName"/>
+            </service>
         </actions>
-        <auto-fields-service service-name="updateEmplLeaveType" default-field-type="hidden"/>
-        <field name="leaveTypeId"><display/></field>
-        <field name="description" title="${uiLabelMap.CommonDescription}"><text/></field>
-        <field name="deleteLink" title="${uiLabelMap.CommonDelete}" widget-style="buttontext">
-            <hyperlink target="deleteEmplLeaveType" description="${uiLabelMap.CommonDelete}" also-hidden="false">
+		<auto-fields-entity entity-name="EmplLeave" default-field-type="display"/>
+        <field name="partyId" field-name="partyId">
+            <display-entity entity-name="PartyNameView" description="${firstName} ${lastName}">
+                <sub-hyperlink target="/partymgr/control/viewprofile" target-type="inter-app" description="${partyId}" link-style="buttontext">
+                    <parameter param-name="partyId" from-field="partyId"/>
+                </sub-hyperlink>
+            </display-entity>
+        </field>
+        <field name="approverPartyId" field-name="partyId">
+            <display-entity entity-name="PartyNameView" description="${firstName} ${lastName}">
+                <sub-hyperlink target="/partymgr/control/viewprofile" target-type="inter-app" description="${approverPartyId}" link-style="buttontext">
+                    <parameter param-name="approverPartyId" from-field="approverPartyId"/>
+                </sub-hyperlink>
+            </display-entity>
+        </field>
+        <field name="leaveStatus"><display/></field>
+        <field name="UpdateStatus" title="${uiLabelMap.CommonUpdate}" widget-style="buttontext">
+            <hyperlink target="EditEmplLeaveStatus" description="${uiLabelMap.CommonUpdate}" > 
+                <parameter param-name="partyId"/>
+                <parameter param-name="fromDate"/>
                 <parameter param-name="leaveTypeId"/>
             </hyperlink>
         </field>
-        <field name="_rowSubmit" title="${uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></field>
     </form>
-    <form name="AddEmplLeaveType" type="single" target="createEmplLeaveType" default-map-name="emplLeaveType"
-        header-row-style="header-row" default-table-style="basic-table">
-        <auto-fields-service service-name="createEmplLeaveType" default-field-type="hidden"/>
-        <field name="leaveTypeId"><text/></field>
-        <field name="description" title="${uiLabelMap.CommonDescription}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button-type="text-link"/></field>
+    <form name="EditEmplLeaveStatus" type="single" target="updateEmplLeaveStatus" default-map-name="leaveApp">
+        <auto-fields-service service-name="updateEmplLeaveStatus" map-name="leaveApp"/>
+        <field name="partyId"><display/></field>
+        <field name="approverPartyId"><display/></field>
+        <field name="leaveTypeId"><display/></field>
+        <field name="emplLeaveReasonTypeId"><display/></field>
+        <field name="fromDate"><display/></field>
+        <field name="thruDate"><display/></field>
+        <field name="description"><display/></field>
+        <field name="leaveStatus" title="${uiLabelMap.HumanResLeaveStatus} ${uiLabelMap.CommonStatus}">
+            <drop-down allow-empty="false">
+                <entity-options description="${description}" key-field-name="statusId" entity-name="StatusItem">
+                    <entity-constraint name="statusTypeId" operator="equals" value="LEAVE_STATUS"/>
+                    <entity-order-by field-name="description"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="leaveStatus" use-when="leaveApp!=null&amp;&amp;leaveApp.getString(&quot;leaveStatus&quot;).equals(&quot;LEAVE_REJECTED&quot;)"><display></display></field>
+        <field name="submitButton" title="Update" widget-style="smallSubmit"><submit button-type="button"/></field>
     </form>
 </forms>
\ No newline at end of file

Modified: ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml Fri Oct 30 10:07:09 2009
@@ -185,13 +185,22 @@
         <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button-type="button"/></field>
     </form>
     <form name="AddEmplLeave" type="single" target="createEmplLeave">
-        <auto-fields-service service-name="createEmplLeave"/>
+        <auto-fields-service service-name="updateEmplLeave" map-name="leaveApp"/>
         <field name="partyId"><hidden/></field>
-        <field name="leaveTypeId">
+        <field name="leaveTypeId" tooltip="${uiLabelMap.CommonRequired}">
             <drop-down allow-empty="true">
                 <entity-options description="${description}" key-field-name="leaveTypeId" entity-name="EmplLeaveType"/>
             </drop-down>
         </field>
+        <field name="emplLeaveReasonTypeId">
+            <drop-down allow-empty="true">
+                <entity-options description="${description}" key-field-name="emplLeaveReasonTypeId" entity-name="EmplLeaveReasonType"/>
+            </drop-down>
+        </field>
+        <field name="fromDate" tooltip="${uiLabelMap.CommonRequired}"><date-time type="timestamp"></date-time></field>
+        <field name="thruDate" tooltip="${uiLabelMap.CommonRequired}"><date-time type="timestamp"></date-time></field>
+        <field name="leaveStatus"><hidden value="LEAVE_CREATED"/></field>
+        <field name="approverPartyId" tooltip="${uiLabelMap.CommonRequired}"><lookup target-form-name="LookupPartyName"/></field>
         <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button-type="button"/></field>
     </form>
     <form name="ListEmplLeaves" type="list" list-name="listIt" separate-columns="true" target="updateEmplLeave" paginate-target="FindEmplLeaves"
@@ -204,9 +213,12 @@
         </actions>
         <auto-fields-service service-name="updateEmplLeave"/>
         <field name="partyId"><hidden/></field>
+        <field name="approverPartyId"><lookup target-form-name="LookupPartyName"/></field>
+        <field name="leaveStatus"><display/></field>
+        <field name="emplLeaveReasonTypeId"><display/></field>
         <field name="leaveTypeId"><display-entity description="${description}" entity-name="EmplLeaveType"/></field>
-        <field name="fromDate"><display/></field>
-        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></field>
+        <field name="fromDate"></field>
+        <field name="submitButton" title="${uiLabelMap.CommonUpdate}"><submit button-type="button"/></field>
     </form>
     <form name="CurrentEmploymentData" default-map-name="employmentData" type="single">
         <field name="company" entry-name="employment.partyIdFrom">

Modified: ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml?rev=831249&r1=831248&r2=831249&view=diff
==============================================================================
--- ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml (original)
+++ ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml Fri Oct 30 10:07:09 2009
@@ -260,4 +260,50 @@
         <field name="description" title="${uiLabelMap.CommonDescription}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
         <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button-type="text-link"/></field>
     </form>
+    <form name="AddEmplLeaveType" type="single" target="createEmplLeaveType" default-map-name="emplLeaveType"
+        header-row-style="header-row" default-table-style="basic-table">
+        <auto-fields-service service-name="createEmplLeaveType" default-field-type="hidden"/>
+        <field name="leaveTypeId"><text/></field>
+        <field name="description" title="${uiLabelMap.CommonDescription}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
+        <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button-type="text-link"/></field>
+    </form>
+    <form name="ListEmplLeaveTypes" type="multi" title="" target="updateEmplLeaveType"
+        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
+        <actions>
+            <entity-condition entity-name="EmplLeaveType"><order-by field-name="leaveTypeId"/></entity-condition>
+        </actions>
+        <auto-fields-service service-name="updateEmplLeaveType" default-field-type="hidden"/>
+        <field name="leaveTypeId"><display/></field>
+        <field name="description" title="${uiLabelMap.CommonDescription}"><text/></field>
+        <field name="deleteLink" title="${uiLabelMap.CommonDelete}" widget-style="buttontext">
+            <hyperlink target="deleteEmplLeaveType" description="${uiLabelMap.CommonDelete}" also-hidden="false">
+                <parameter param-name="leaveTypeId"/>
+            </hyperlink>
+        </field>
+        <field name="_rowSubmit" title="${uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
+        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></field>
+    </form>
+    <form name="AddEmplLeaveReasonType" type="single" target="createEmplLeaveReasonType" default-map-name="emplLeaveReasonType"
+        header-row-style="header-row" default-table-style="basic-table">
+        <auto-fields-service service-name="createEmplLeaveReasonType" default-field-type="hidden"/>
+        <field name="emplLeaveReasonTypeId"><text/></field>
+        <field name="description" title="${uiLabelMap.CommonDescription}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
+        <field name="submitButton" title="${uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button-type="text-link"/></field>
+    </form>
+    <form name="ListEmplLeaveReasonTypes" type="multi" title="" target="updateEmplLeaveReasonType"
+        odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar">
+        <actions>
+            <entity-condition entity-name="EmplLeaveReasonType"><order-by field-name="emplLeaveReasonTypeId"/></entity-condition>
+        </actions>
+        <auto-fields-service service-name="updateEmplLeaveReasonType" default-field-type="hidden"/>
+        <field name="emplLeaveReasonTypeId"><display/></field>
+        <field name="description" title="${uiLabelMap.CommonDescription}"><text/></field>
+        <field name="deleteLink" title="${uiLabelMap.CommonDelete}" widget-style="buttontext">
+            <hyperlink target="deleteEmplLeaveReasonType" description="${uiLabelMap.CommonDelete}" also-hidden="false">
+                <parameter param-name="emplLeaveReasonTypeId"/>
+            </hyperlink>
+        </field>
+        <field name="_rowSubmit" title="${uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
+        <field name="submitButton" title="${uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></field>
+    </form>
 </forms>



Re: svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Posted by Ashish Vijaywargiya <vi...@gmail.com>.
Fixed in r831899.
Thanks Jacques for your comment and patience :-).

--
Ashish


On Mon, Nov 2, 2009 at 3:44 PM, Jacques Le Roux <
jacques.le.roux@les7arts.com> wrote:

> Thanks Scott,
>
> Fixed at r831842
> BTW we have still these older warnings..
>
>   [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:233:WARN
> ] =-=-=-=-= Found 3 warnings when checking the entity definitions:
>   [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:235:WARN
> ] [FieldNameRW] Column name PASSWORD of entity PaymentGatewayOrbital is a
> reserved word.
>   [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:235:WARN
> ] [FieldNameRW] Column name CLASS of entity PaymentGatewayOrbital is a
> reserved word.
>
> Jacques
>
>

Re: svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Posted by Ashish Vijaywargiya <vi...@gmail.com>.
I am on it now Jacques.
Will update the trunk ASAP.

--
Ashish

On Mon, Nov 2, 2009 at 3:44 PM, Jacques Le Roux <
jacques.le.roux@les7arts.com> wrote:

> Thanks Scott,
>
> Fixed at r831842
> BTW we have still these older warnings..
>
>   [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:233:WARN
> ] =-=-=-=-= Found 3 warnings when checking the entity definitions:
>   [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:235:WARN
> ] [FieldNameRW] Column name PASSWORD of entity PaymentGatewayOrbital is a
> reserved word.
>   [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:235:WARN
> ] [FieldNameRW] Column name CLASS of entity PaymentGatewayOrbital is a
> reserved word.
>
> Jacques
>
> From: "Scott Gray" <sc...@hotwaxmedia.com>
> Hi Jacques,
>
> You've got a foreign key name in here that's longer than 18
> characters, its showing up as a warning on start up.
>
> Regards
> Scott
>
> HotWax Media
> http://www.hotwaxmedia.com
>
> On 30/10/2009, at 11:07 PM, jleroux@apache.org wrote:
>
>  Author: jleroux
>> Date: Fri Oct 30 10:07:09 2009
>> New Revision: 831249
>>
>> URL: http://svn.apache.org/viewvc?rev=831249&view=rev
>> Log:
>> A patch from Pradeep Ruhil "HR Leave Enhancement ." (
>> https://issues.apache.org/jira/browse/OFBIZ-2938 ) - OFBIZ-2938
>> In this patch we are doing enhancement in HumanResource Leave Module.
>> Initially we can only create new leave application for a partyId.
>> But there was not functionality available for approval of leave.
>> So in this patch we have given functionality for Leave approval as  well
>> as leave creation.
>> + A better French label
>>
>>

Re: svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Posted by Jacques Le Roux <ja...@les7arts.com>.
Thanks Scott,

Fixed at r831842
BTW we have still these older warnings..

    [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:233:WARN ] =-=-=-=-= Found 3 warnings when checking the entity 
definitions:
    [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:235:WARN ] [FieldNameRW] Column name PASSWORD of entity 
PaymentGatewayOrbital is a reserved word.
    [java] 2009-11-02 10:58:27,937 (main) [   GenericDelegator.java:235:WARN ] [FieldNameRW] Column name CLASS of entity 
PaymentGatewayOrbital is a reserved word.

Jacques

From: "Scott Gray" <sc...@hotwaxmedia.com>
Hi Jacques,

You've got a foreign key name in here that's longer than 18
characters, its showing up as a warning on start up.

Regards
Scott

HotWax Media
http://www.hotwaxmedia.com

On 30/10/2009, at 11:07 PM, jleroux@apache.org wrote:

> Author: jleroux
> Date: Fri Oct 30 10:07:09 2009
> New Revision: 831249
>
> URL: http://svn.apache.org/viewvc?rev=831249&view=rev
> Log:
> A patch from Pradeep Ruhil "HR Leave Enhancement ." (https://issues.apache.org/jira/browse/OFBIZ-2938 ) - OFBIZ-2938
> In this patch we are doing enhancement in HumanResource Leave Module.
> Initially we can only create new leave application for a partyId.
> But there was not functionality available for approval of leave.
> So in this patch we have given functionality for Leave approval as  well as leave creation.
> + A better French label
>
> Modified:
>    ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml
>    ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
>    ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
>    ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ HumanResServices.xml
>    ofbiz/trunk/applications/humanres/servicedef/services.xml
>    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ controller.xml
>    ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml
>    ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
>    ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml
>    ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
>    ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml
>    ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml
>    ofbiz/trunk/applications/humanres/widget/forms/ GlobalHRSettingForms.xml
>
> Modified: ofbiz/trunk/applications/humanres/config/ HumanResUiLabels.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml  (original)
> +++ ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml  Fri Oct 30 10:07:09 2009
> @@ -224,7 +224,7 @@
>     </property>
>     <property key="FormFieldTitle_leaveTypeId">
>         <value xml:lang="en">Leave Type Id</value>
> -        <value xml:lang="fr">Réf. de type de congé</value>
> +        <value xml:lang="fr">Type de congé</value>
>         <value xml:lang="it">Tipo di licenziamento</value>
>         <value xml:lang="zh">请å?ç±»åz<ç¼-号</value>
>     </property>
> @@ -1873,4 +1873,31 @@
>     <property key="PageTitleFindTrainingApprovals">
>         <value xml:lang="en">Find Training Approvals</value>
>     </property>
> +    <property key="HumanResEmplReasonType">
> +        <value xml:lang="en">EmplLeave Reason Type</value>
> +    </property>
> +    <property key="HumanResAddEmplLeaveReasonType">
> +        <value xml:lang="en">Add Employee Leave Reason</value>
> +    </property>
> +    <property key="HumanResLeaveApproval">
> +        <value xml:lang="en">Leave Approval</value>
> +    </property>
> +    <property key="HumanResEditLeaveApprovalStatus">
> +        <value xml:lang="en">Edit Leave Approval Status</value>
> +    </property>
> +    <property key="HumanResLeaveStatus">
> +        <value xml:lang="en">Leave</value>
> +    </property>
> +    <property key="HumanResEmployeeLeave">
> +        <value xml:lang="en">Employee Leave</value>
> +    </property>
> +    <property key="HumanResEmployeeLeaveType">
> +        <value xml:lang="en">Leave Type</value>
> +    </property>
> +    <property key="HumanResEmployeeType">
> +        <value xml:lang="en">Reason Type</value>
> +    </property>
> +    <property key="PartyApproverId">
> +        <value xml:lang="en">Approver Party Id</value>
> +    </property>
> </resource>
>
> Modified: ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml  (original)
> +++ ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml Fri  Oct 30 10:07:09 2009
> @@ -53,6 +53,10 @@
>     <StatusItem statusId="TRAINING_APPROVED"  statusTypeId="TRAINING_STATUS"  description="Approved"/>
>     <StatusItem statusId="TRAINING_REJECTED"  statusTypeId="TRAINING_STATUS"  description="Rejected"/>
>
> +    <StatusType statusTypeId="LEAVE_STATUS" description="Employee  Leave Status"/>
> +    <StatusItem statusId="LEAVE_APPROVED"  statusTypeId="LEAVE_STATUS"  description="Approved"/>
> +    <StatusItem statusId="LEAVE_REJECTED"  statusTypeId="LEAVE_STATUS"  description="Rejected"/>
> +
>     <EmplPositionType description="Programmer" hasTable="N"  parentTypeId="" emplPositionTypeId="PROGRAMMER"/>
>     <EmplPositionType description="System Administrator"  hasTable="N" parentTypeId="" emplPositionTypeId="SYS_ADMIN"/>
>     <EmplPositionType description="Business Analyst" hasTable="N"  parentTypeId="" emplPositionTypeId="BIZ_ANALYST"/>
> @@ -101,8 +105,10 @@
>     <TerminationType description="Fired" hasTable="N"  parentTypeId="" terminationTypeId="FIRE"/>
>     <TerminationType description="Retirement" hasTable="N"  parentTypeId="" terminationTypeId="RETIRE"/>
>
> -    <EmplLeaveType description="Medical" hasTable="N"  parentTypeId="" leaveTypeId="MEDICAL"/>
> -    <EmplLeaveType description="Casual" hasTable="N"  parentTypeId="" leaveTypeId="CASUAL"/>
> +    <EmplLeaveType description="Inland Earned Leave" hasTable="N"  parentTypeId="" leaveTypeId="INLAND_EARNED"/>
> +    <EmplLeaveType description="Inland Loss of Pay" hasTable="N"  parentTypeId="" leaveTypeId="LOSS_OF_PAY"/>
> +    <EmplLeaveType description="Inland Restricted Holiday"  hasTable="N" parentTypeId="" leaveTypeId="RESTRICTED_HOLIDAY"/>
> +    <EmplLeaveType description="Inland Special Day Off"  hasTable="N" parentTypeId="" leaveTypeId="SPECIAL_DAY_OFF"/>
>
>     <WebSite webSiteId="HR" siteName="Human Resource Manager"  visualThemeSetId="BACKOFFICE"/>
>
> @@ -142,5 +148,8 @@
>     <Enumeration description="Written Aptitude Exam"  enumCode="WRITTEN_APT" enumId="EXAM_WRITTEN_APT" sequenceId="01" 
> enumTypeId="EXAM_TYPE"/>
>     <Enumeration description="Technical Exam" enumCode="TECHNICAL"  enumId="EXAM_TECHNICAL" sequenceId="02" 
> enumTypeId="EXAM_TYPE"/>
>     <Enumeration description="Group Discussion"  enumCode="GROUP_DISCN" enumId="EXAM_GROUP_DISCN" sequenceId="03" 
> enumTypeId="EXAM_TYPE"/>
> +
> +    <EmplLeaveReasonType description="Medical" hasTable="N"  parentTypeId="" emplLeaveReasonTypeId="Fever"/>
> +    <EmplLeaveReasonType description="Casual" hasTable="N"  parentTypeId="" emplLeaveReasonTypeId="Personal Work"/>
>
> </entity-engine-xml>
>
> Modified: ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml  (original)
> +++ ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml Fri  Oct 30 10:07:09 2009
> @@ -432,8 +432,11 @@
>             title="Employee Leave Entity">
>         <field name="partyId" type="id-ne"/>
>         <field name="leaveTypeId" type="id-ne"/>
> +        <field name="emplLeaveReasonTypeId" type="id-ne"/>
>         <field name="fromDate" type="date-time"/>
>         <field name="thruDate" type="date-time"/>
> +        <field name="approverPartyId" type="id-ne"/>
> +      <field name="leaveStatus" type="short-varchar"/>
>         <field name="description" type="description"/>
>         <prim-key field="partyId"/>
>         <prim-key field="leaveTypeId"/>
> @@ -444,6 +447,12 @@
>         <relation type="one" fk-name="EMPL_LEAVE_ELETP" rel-entity- name="EmplLeaveType">
>             <key-map field-name="leaveTypeId"/>
>         </relation>
> +        <relation type="one" fk-name="EMPL_LEAVE_REASON_ELETP" rel- entity-name="EmplLeaveReasonType">
> +            <key-map field-name="emplLeaveReasonTypeId"/>
> +        </relation>
> +        <relation type="one" fk-name="EMPL_LEAVE_APPR"  title="Approver" rel-entity-name="Party">
> +            <key-map field-name="approverPartyId" rel-field- name="partyId"/>
> +     </relation>
>     </entity>
>     <entity entity-name="EmplLeaveType"
>             package-name="org.ofbiz.humanres.employment"
> @@ -934,4 +943,16 @@
>         <field name="trainingRequestId" type="id-ne"></field>
>         <prim-key field="trainingRequestId"/>
>     </entity>
> +    <entity entity-name="EmplLeaveReasonType"
> +            package-name="org.ofbiz.humanres.employment"
> +            title="Leave Reason Type Entity">
> +        <field name="emplLeaveReasonTypeId" type="id-ne"/>
> +        <field name="parentTypeId" type="id-ne"/>
> +        <field name="hasTable" type="indicator"/>
> +        <field name="description" type="description"/>
> +        <prim-key field="emplLeaveReasonTypeId"/>
> +        <relation type="one" fk-name="EMPL_REASON_TPAR"  title="Parent" rel-entity-name="EmplLeaveReasonType">
> +            <key-map field-name="parentTypeId" rel-field- name="emplLeaveReasonTypeId"/>
> +        </relation>
> +     </entity>
> </entitymodel>
>
> Modified: ofbiz/trunk/applications/humanres/script/org/ofbiz/ humanres/HumanResServices.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ HumanResServices.xml (original)
> +++ ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ HumanResServices.xml Fri Oct 30 10:07:09 2009
> @@ -648,7 +648,8 @@
>         <entity-one entity-name="AgreementEmploymentAppl" value- field="agreementEmploymentAppl"/>
>         <remove-value value-field="agreementEmploymentAppl"/>
>     </simple-method>
> -        <simple-method method-name="createEmplLeave" short- description="Create Employee Leave">
> +
> +    <simple-method method-name="createEmplLeave" short- description="Create Employee Leave">
>         <make-value entity-name="EmplLeave" value-field="newEntity"/>
>         <set-pk-fields value-field="newEntity" map="parameters"/>
>         <set-nonpk-fields value-field="newEntity" map="parameters"/>
> @@ -662,6 +663,11 @@
>         <store-value value-field="lookedUpValue"/>
>     </simple-method>
>
> +    <simple-method method-name="deleteEmplLeave" short- description="Delete Employee Leave">
> +        <entity-one entity-name="EmplLeave" value-field="emplLeave"/>
> +        <remove-value value-field="emplLeave"/>
> +    </simple-method>
> +
>     <simple-method method-name="createEmplLeaveType" short- description="Create a LeaveType">
>         <make-value entity-name="EmplLeaveType" value- field="newEntity"/>
>         <set-pk-fields map="parameters" value-field="newEntity"/>
> @@ -863,4 +869,32 @@
>         <remove-value value-field="lookedUpValue"/>
>     </simple-method>
>
> +    <simple-method method-name="createEmplLeaveReasonType" short- description="Create a Leave Reason Type">
> +        <make-value entity-name="EmplLeaveReasonType" value- field="newEntity"/>
> +        <set-pk-fields map="parameters" value-field="newEntity"/>
> +        <set-nonpk-fields map="parameters" value-field="newEntity"/>
> +        <if-empty field="newEntity.emplLeaveReasonTypeId">
> +            <sequenced-id sequence-name="EmplLeaveReasonType"  field="newEntity.emplLeaveReasonTypeId"/>
> +        </if-empty>
> +        <field-to-result field="newEntity.emplLeaveReasonTypeId"  result-name="emplLeaveReasonTypeId"/>
> +        <create-value value-field="newEntity"/>
> +    </simple-method>
> +
> +    <simple-method method-name="updateEmplLeaveReasonType" short- description="Update leave Reason Type">
> +        <entity-one entity-name="EmplLeaveReasonType" value- field="lookedUpValue"/>
> +        <set-nonpk-fields value-field="lookedUpValue"  map="parameters"/>
> +        <store-value value-field="lookedUpValue"/>
> +    </simple-method>
> +
> +    <simple-method method-name="deleteEmplLeaveReasonType" short- description="Delete leave Reason Type">
> +        <entity-one entity-name="EmplLeaveReasonType" value- field="lookedUpValue"/>
> +        <remove-value value-field="lookedUpValue"/>
> +    </simple-method>
> +
> +    <simple-method method-name="updateEmplLeaveStatus" short- description="Update Leave Approval Status">
> +        <entity-one entity-name="EmplLeave" value- field="lookedUpValue"/>
> +        <set-nonpk-fields value-field="lookedUpValue"  map="parameters"/>
> +        <store-value value-field="lookedUpValue"/>
> +    </simple-method>
> +
> </simple-methods>
>
> Modified: ofbiz/trunk/applications/humanres/servicedef/services.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/servicedef/services.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/servicedef/services.xml  (original)
> +++ ofbiz/trunk/applications/humanres/servicedef/services.xml Fri  Oct 30 10:07:09 2009
> @@ -664,12 +664,15 @@
>         <permission-service service-name="humanResManagerPermission"  main-action="DELETE"/>
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>     </service>
> +
>     <service name="createEmplLeave" engine="simple" default-entity- name="EmplLeave"
>              location="component://humanres/script/org/ofbiz/ humanres/HumanResServices.xml" invoke="createEmplLeave" auth="true">
>         <description>Create Employee Leave</description>
>         <permission-service service-name="humanResManagerPermission"  main-action="CREATE"/>
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>         <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="approverPartyId" optional="false"/>
> +        <override name="thruDate" optional="false"/>
>     </service>
>
>     <service name="updateEmplLeave" engine="simple" default-entity- name="EmplLeave"
> @@ -678,8 +681,17 @@
>         <permission-service service-name="humanResManagerPermission"  main-action="UPDATE"/>
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>         <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="approverPartyId" optional="false"/>
> +        <override name="thruDate" optional="false"/>
>     </service>
>
> +    <service name="deleteEmplLeave" engine="simple" default-entity- name="EmplLeave"
> +             location="component://humanres/script/org/ofbiz/ humanres/HumanResServices.xml" invoke="deleteEmplLeave" 
> auth="true">
> +        <description>Delete AgreementEmploymentAppl</description>
> +        <permission-service service- name="humanResManagerPermission" main-action="DELETE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +    </service>
> +
>     <service name="createEmplLeaveType" engine="simple" default- entity-name="EmplLeaveType"
>              location="component://humanres/script/org/ofbiz/ humanres/HumanResServices.xml" invoke="createEmplLeaveType" 
> auth="true">
>         <description>Create Valid LeaveType</description>
> @@ -893,4 +905,37 @@
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>     </service>
>
> +    <service name="createEmplLeaveReasonType" engine="simple"  default-entity-name="EmplLeaveReasonType"
> +             location="component://humanres/script/org/ofbiz/ humanres/HumanResServices.xml" invoke="createEmplLeaveReasonType" 
> auth="true">
> +        <description>Create Valid Leave Reason Type</description>
> +        <permission-service service- name="humanResManagerPermission" main-action="CREATE"/>
> +        <auto-attributes mode="INOUT" include="pk" optional="true"/>
> +        <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="description" optional="false"/>
> +    </service>
> +
> +    <service name="updateEmplLeaveReasonType" engine="simple"  default-entity-name="EmplLeaveReasonType"
> +             location="component://humanres/script/org/ofbiz/ humanres/HumanResServices.xml" invoke="updateEmplLeaveReasonType" 
> auth="true">
> +        <description>Update Valid Leave Reason Type</description>
> +        <permission-service service- name="humanResManagerPermission" main-action="UPDATE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +        <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="description" optional="false"/>
> +    </service>
> +
> +    <service name="deleteEmplLeaveReasonType" engine="simple"  default-entity-name="EmplLeaveReasonType"
> +        location="component://humanres/script/org/ofbiz/humanres/ HumanResServices.xml" invoke="deleteEmplLeaveReasonType" 
> auth="true">
> +        <description>Delete Valid Leave Reason Type</description>
> +        <permission-service service- name="humanResManagerPermission" main-action="DELETE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +    </service>
> +
> +    <service name="updateEmplLeaveStatus" engine="simple" default- entity-name="EmplLeave"
> +            location="component://humanres/script/org/ofbiz/ humanres/HumanResServices.xml" invoke="updateEmplLeaveStatus" 
> auth="true">
> +        <description>Update Leave Approval Status</description>
> +        <permission-service service- name="humanResManagerPermission" main-action="UPDATE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +        <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +    </service>
> +
> </services>
>
> Modified: ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ controller.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ controller.xml (original)
> +++ ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ controller.xml Fri Oct 30 10:07:09 2009
> @@ -396,9 +396,15 @@
>         <security https="true" auth="true"/>
>         <response name="success" type="view" value="NewEmplLeave"/>
>     </request-map>
> -    <request-map uri="EditEmplLeaves">
> +    <request-map uri="EditEmplLeave">
>         <security https="true" auth="true"/>
> -        <response name="success" type="view" value="EditEmplLeaves"/>
> +        <response name="success" type="view" value="EditEmplLeave"/>
> +    </request-map>
> +    <request-map uri="deleteEmplLeave">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="deleteEmplLeave"/>
> +        <response name="success" type="view" value="FindEmplLeaves"/>
> +        <response name="error" type="view" value="FindEmplLeaves"/>
>     </request-map>
>     <request-map uri="EditEmplLeaveTypes">
>         <security https="true" auth="true"/>
> @@ -821,14 +827,14 @@
>     <request-map uri="createEmplLeaveExt">
>         <security https="true" auth="true"/>
>         <event type="service" invoke="createEmplLeave"/>
> -        <response name="success" type="view" value="EditEmplLeaves"/>
> -        <response name="error" type="view" value="EditEmplLeaves"/>
> +        <response name="success" type="view" value="EditEmplLeave"/>
> +        <response name="error" type="view" value="EditEmplLeave"/>
>     </request-map>
>     <request-map uri="updateEmplLeaveExt">
>         <security https="true" auth="true"/>
> -        <event type="service-multi" invoke="updateEmplLeave"/>
> -        <response name="success" type="view" value="EditEmplLeaves"/>
> -        <response name="error" type="view" value="EditEmplLeaves"/>
> +        <event type="service" invoke="updateEmplLeave"/>
> +        <response name="success" type="view" value="EditEmplLeave"/>
> +        <response name="error" type="view" value="EditEmplLeave"/>
>     </request-map>
>
>     <!--====================Recruitment  Requests===================================-->
> @@ -1020,6 +1026,42 @@
>         <security auth="true" https="true"/>
>         <response name="success" type="view" value="LookupTraining"/>
>     </request-map>
> +    <request-map uri="EditEmplLeaveReasonTypes">
> +        <security https="true" auth="true"/>
> +        <response name="success" type="view"  value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="createEmplLeaveReasonType">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="createEmplLeaveReasonType"/>
> +        <response name="success" type="view"  value="EditEmplLeaveReasonTypes"/>
> +        <response name="error" type="view"  value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="updateEmplLeaveReasonType">
> +        <security https="true" auth="true"/>
> +        <event type="service-multi"  invoke="updateEmplLeaveReasonType"/>
> +        <response name="success" type="view"  value="EditEmplLeaveReasonTypes"/>
> +        <response name="error" type="view"  value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="deleteEmplLeaveReasonType">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="deleteEmplLeaveReasonType"/>
> +        <response name="success" type="view"  value="EditEmplLeaveReasonTypes"/>
> +        <response name="error" type="view"  value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="FindLeaveApprovals">
> +        <security https="true" auth="true"/>
> +        <response name="success" type="view"  value="FindLeaveApprovals"/>
> +    </request-map>
> +    <request-map uri="EditEmplLeaveStatus">
> +       <security https="true" auth="true"/>
> +        <response name="success" type="view"  value="EditEmplLeaveStatus"/>
> +    </request-map>
> +    <request-map uri="updateEmplLeaveStatus">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="updateEmplLeaveStatus"/>
> +        <response name="success" type="view"  value="EditEmplLeaveStatus"/>
> +        <response name="error" type="view"  value="EditEmplLeaveStatus"/>
> +    </request-map>
>     <!-- ===================Lookup Request===================== -->
>     <request-map uri="LookupPartyName"><security auth="true"  https="true"/><response name="success" type="view" 
> value="LookupPartyName"/></request-map>
>     <request-map uri="LookupPayment"><security auth="true"  https="true"/><response name="success" type="view" 
> value="LookupPayment"/></request-map>
> @@ -1124,8 +1166,11 @@
>
>     <view-map name="FindEmplLeaves" type="screen" page="component:// humanres/widget/EmplLeaveScreens.xml#FindEmplLeaves"/>
>     <view-map name="NewEmplLeave" type="screen" page="component:// humanres/widget/EmplLeaveScreens.xml#NewEmplLeave"/>
> -    <view-map name="EditEmplLeaves" type="screen" page="component:// humanres/widget/EmplLeaveScreens.xml#EditEmplLeaves"/>
> -    <view-map name="EditEmplLeaveTypes" type="screen"  page="component://humanres/widget/ 
> EmplLeaveScreens.xml#EditEmplLeaveTypes"/>
> +    <view-map name="EditEmplLeave" type="screen" page="component:// humanres/widget/EmplLeaveScreens.xml#EditEmplLeave"/>
> +    <view-map name="EditEmplLeaveTypes" type="screen"  page="component://humanres/widget/ 
> GlobalHRSettingScreens.xml#EditEmplLeaveTypes"/>
> +    <view-map name="EditEmplLeaveReasonTypes" type="screen"  page="component://humanres/widget/ 
> GlobalHRSettingScreens.xml#EditEmplLeaveReasonTypes"/>
> +    <view-map name="FindLeaveApprovals" type="screen"  page="component://humanres/widget/ 
> EmplLeaveScreens.xml#FindLeaveApprovals"/>
> +    <view-map name="EditEmplLeaveStatus" type="screen"  page="component://humanres/widget/ 
> EmplLeaveScreens.xml#EditEmplLeaveStatus"/>
>
>     <!-- ==================Recruitment View Map=====================  -->
>     <view-map name="FindJobRequisitions" type="screen"  page="component://humanres/widget/ 
> RecruitmentScreens.xml#FindJobRequisitions"/>
>
> Modified: ofbiz/trunk/applications/humanres/widget/ EmplLeaveScreens.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml  (original)
> +++ ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml  Fri Oct 30 10:07:09 2009
> @@ -29,92 +29,131 @@
>                 <set field="leaveTypeId" from- field="parameters.leaveTypeId"/>
>                 <set field="fromDate" from- field="parameters.fromDate"/>
>                 <set field="emplLeaveCtx" from-field="parameters"/>
> +                <service service-name="humanResManagerPermission"  result-map="permResult">
> +                    <field-map field-name="mainAction"  value="ADMIN"/>
> +                </service>
> +                <set field="hasAdminPermission" from- field="permResult.hasPermission"/>
>             </actions>
>             <widgets>
>                 <decorator-screen name="main-decorator" location="$ {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> -                        <decorator-screen  name="FindScreenDecorator" location="component://common/widget/ CommonScreens.xml">
> -                            <decorator-section name="menu-bar">
> -                                <section>
> -                                    <widgets>
> -                                        <container style="button- bar">
> -                                            <link  target="NewEmplLeave" text="${uiLabelMap.HumanResNewLeave}" 
> style="buttontext"/>
> -                                        </container>
> -                                    </widgets>
> -                                </section>
> -                            </decorator-section>
> -                            <decorator-section name="search-options">
> -                                <include-form name="FindEmplLeaves" 
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> -                            </decorator-section>
> -                            <decorator-section name="search-results">
> -                                <include-form name="ListEmplLeaves" 
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> -                            </decorator-section>
> -                        </decorator-screen>
> +                        <include-menu name="EmplLeaveTabBar"  location="component://humanres/widget/HumanresMenus.xml"/>
> +                      <section>
> +                            <condition>
> +                                <if-has-permission  permission="HUMANRES" action="_VIEW"/>
> +                            </condition>
> +                            <widgets>
> +                         <decorator-screen  name="FindScreenDecorator" location="component://common/widget/ CommonScreens.xml">
> +                             <decorator-section name="menu-bar">
> +                                 <section>
> +                                     <widgets>
> +                                         <container style="button- bar">
> +                                             <link  target="EditEmplLeave" text="${uiLabelMap.HumanResNewLeave}" 
> style="buttontext"/>
> +                                         </container>
> +                                     </widgets>
> +                                 </section>
> +                             </decorator-section>
> +                             <decorator-section name="search- options">
> +                                 <include-form  name="FindEmplLeaves" location="component://humanres/widget/forms/ 
> EmplLeaveForms.xml"/>
> +                             </decorator-section>
> +                             <decorator-section name="search- results">
> +                                 <include-form  name="ListEmplLeaves" location="component://humanres/widget/forms/ 
> EmplLeaveForms.xml"/>
> +                             </decorator-section>
> +                         </decorator-screen>
> +                     </widgets>
> +                 </section>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>         </section>
>     </screen>
> -    <screen name="NewEmplLeave">
> -        <section>
> +    <screen name="FindLeaveApprovals">
> +    <section>
>             <actions>
> -                <set field="titleProperty"  value="HumanResAddEmplLeave"/>
> +                <set field="titleProperty"  value="PageTitleFindApprovals"/>
> +                <set field="tabButtonItem" value="Approval"/>
>                 <set field="headerItem" value="Leave"/>
> -                <set field="emplLeaveCtx" from- field="parameters.PartyId"/>
> +                <service service-name="humanResManagerPermission"  result-map="permResult">
> +                    <field-map field-name="mainAction"  value="ADMIN"/>
> +                </service>
> +                <set field="hasAdminPermission" from- field="permResult.hasPermission"/>
> +                <set field="approverPartyId" from- field="parameters.userLogin.partyId"/>
>             </actions>
>             <widgets>
>                 <decorator-screen name="main-decorator" location="$ {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> -                        <screenlet title="$ {uiLabelMap.HumanResAddEmplLeave}">
> -                            <section>
> -                                <widgets>
> -                                    <include-form  name="AddEmplLeave" location="component://humanres/widget/forms/ 
> EmplLeaveForms.xml"/>
> -                                </widgets>
> -                            </section>
> -                        </screenlet>
> +                        <include-menu name="EmplLeaveTabBar"  location="component://humanres/widget/HumanresMenus.xml"/>
> +                        <section>
> +                            <condition>
> +                                <if-has-permission  permission="HUMANRES" action="_VIEW"/>
> +                            </condition>
> +                            <widgets>
> +                                <decorator-screen  name="FindScreenDecorator" location="component://common/widget/ 
> CommonScreens.xml">
> +                                    <decorator-section name="search- options">
> +                                        <include-form  name="FindLeaveApprovals" location="component://humanres/widget/ 
> forms/EmplLeaveForms.xml"/>
> +                                    </decorator-section>
> +                                    <decorator-section name="search- results">
> +                                        <include-form  name="ListLeaveApprovals" location="component://humanres/widget/ 
> forms/EmplLeaveForms.xml"/>
> +                                    </decorator-section>
> +                                </decorator-screen>
> +                            </widgets>
> +                            <fail-widgets>
> +                                <label style="h3">$ {uiLabelMap.HumanResViewPermissionError}</label>
> +                            </fail-widgets>
> +                        </section>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>         </section>
>     </screen>
> -    <screen name="EditEmplLeaves">
> +    <screen name="EditEmplLeave">
>         <section>
>             <actions>
>                 <set field="titleProperty"  value="HumanResEditEmplLeave"/>
> -                <set field="headerItem" value="Employee"/>
> +                <set field="headerItem" value="Leave"/>
>                 <set field="tabButtonItem" value="EditEmplLeaves"/>
>                 <set field="partyId" from-field="parameters.partyId"/>
> -                <set field="emplLeaveCtx.partyId" from- field="parameters.partyId"/>
> -                <set field="parameters.insideEmployee" value="true"/>
> +                <set field="leaveTypeId" from- field="parameters.leaveTypeId"/>
> +                <set field="fromDate" from- field="parameters.fromDate"/>
> +                <entity-one entity-name="EmplLeave" value- field="leaveApp" auto-field-map="false">
> +                    <field-map field-name="partyId" from- field="partyId"/>
> +                    <field-map field-name="leaveTypeId" from- field="leaveTypeId"/>
> +                    <field-map field-name="fromDate" from- field="fromDate"/>
> +                </entity-one>
>             </actions>
>             <widgets>
> -                <decorator-screen name="CommonPartyDecorator"  location="${parameters.mainDecoratorLocation}">
> +                 <decorator-screen name="main-decorator" location="$ {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> +                        <include-menu name="EmplLeaveTabBar"  location="component://humanres/widget/HumanresMenus.xml"/> 
> <screenlet id="AddEmplLeavePanel" title="$ {uiLabelMap.HumanResAddEmplLeave}" collapsible="true">
> -                            <include-form name="AddEmplLeave"  location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> +                            <include-form name="EditEmplLeave"  location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
>                         </screenlet>
> -                        <include-form name="ListEmplLeaves"  location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>         </section>
>     </screen>
> -    <screen name="EditEmplLeaveTypes">
> +    <screen name="EditEmplLeaveStatus">
>         <section>
>             <actions>
> -                <set field="titleProperty"  value="HumanResEditEmplLeaveType"/>
> -                <set field="headerItem" value="GlobalHRSettings"/>
> -                <set field="tabButtonItem" value="EmplLeaveType"/>
> +                <set field="titleProperty"  value="PageTitleEditApprovalStatus"/>
> +                <set field="tabButtonItem" value="Approval"/>
> +                <set field="partyId" from- field="parameters.partyId"/>
>                 <set field="leaveTypeId" from- field="parameters.leaveTypeId"/>
> -                <entity-one entity-name="EmplLeaveType" value- field="emplLeaveType"/>
> +                <set field="fromDate" from- field="parameters.fromDate"/>
> +                <entity-one entity-name="EmplLeave" value- field="leaveApp" auto-field-map="false">
> +                    <field-map field-name="partyId" from- field="partyId"/>
> +                    <field-map field-name="leaveTypeId" from- field="leaveTypeId"/>
> +                    <field-map field-name="fromDate" from- field="fromDate"/>
> +                </entity-one>
>             </actions>
>             <widgets>
> -                <decorator-screen name="GlobalHRSettingsDecorator"  location="${parameters.mainDecoratorLocation}">
> +                <decorator-screen name="main-decorator" location="$ {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> -                        <screenlet id="AddEmplLeaveTypePanel"  title="${uiLabelMap.HumanResAddEmplLeaveType}" collapsible="true">
> -                            <include-form name="AddEmplLeaveType" 
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> +                        <include-menu name="EmplLeaveTabBar"  location="component://humanres/widget/HumanresMenus.xml"/>
> +                        <screenlet id="EditEmplLeaveStatus" title="$ {uiLabelMap.HumanResEditLeaveApprovalStatus}" 
> collapsible="true">
> +                            <include-form  name="EditEmplLeaveStatus" location="component://humanres/widget/ 
> forms/EmplLeaveForms.xml"/>
>                         </screenlet>
> -                        <include-form name="ListEmplLeaveTypes" 
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>
> Modified: ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml  (original)
> +++ ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml Fri  Oct 30 10:07:09 2009
> @@ -274,8 +274,7 @@
>                 <set field="titleProperty"  value="HumanResEditEmplLeave"/>
>                 <set field="tabButtonItem"  value="EditEmployeeLeaves"/>
>                 <set field="partyId" from-field="parameters.partyId"/>
> -                <set field="emplLeaveCtx.partyId" from- field="parameters.partyId"/>
> -                <set field="parameters.insideEmployee" value="true"/>
> +                <entity-one entity-name="EmplLeave" value- field="leaveApp"/>
>             </actions>
>             <widgets>
>                 <decorator-screen name="EmployeeDecorator"  location="${parameters.mainDecoratorLocation}">
>
> Modified: ofbiz/trunk/applications/humanres/widget/ GlobalHRSettingScreens.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/ GlobalHRSettingScreens.xml (original)
> +++ ofbiz/trunk/applications/humanres/widget/ GlobalHRSettingScreens.xml Fri Oct 30 10:07:09 2009
> @@ -226,4 +226,48 @@
>             </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>
> </screens>
>
> Modified: ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml  (original)
> +++ ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml Fri  Oct 30 10:07:09 2009
> @@ -289,4 +289,27 @@
>         </menu-item>
>     </menu>
>
> + <menu name="EmplLeaveReasonTypeTabBar" extends="CommonTabBarMenu"  extends-resource="component://common/widget/CommonMenus.xml"
> +        default-menu-item-name="Employee Leave Reason Type"  type="simple" menu-container-style="button-bar tab-bar"
> +        default-selected-style="selected" selected-menuitem-context- field-name="tabButtonItem">
> +        <menu-item name="EmplLeaveType" title="$ {uiLabelMap.HumanResEmployeeLeaveType}">
> +            <link target="EditEmplLeaveTypes"/>
> +        </menu-item>
> +        <menu-item name="EmplLeaveReasonType" title="$ {uiLabelMap.HumanResEmployeeType}">
> +            <link target="EditEmplLeaveReasonTypes"/>
> +        </menu-item>
> +    </menu>
> +
> +    <menu name="EmplLeaveTabBar" extends="CommonTabBarMenu" extends- resource="component://common/widget/CommonMenus.xml"
> +        default-menu-item-name="Employee Leave" type="simple" menu- container-style="button-bar tab-bar"
> +        default-selected-style="selected" selected-menuitem-context- field-name="tabButtonItem">
> +        <menu-item name="Employee Leave" title="$ {uiLabelMap.HumanResEmployeeLeave}">
> +            <link target="FindEmplLeaves"/>
> +        </menu-item>
> +        <menu-item name="Approval" title="$ {uiLabelMap.HumanResLeaveApproval}">
> +            <condition><if-has-permission permission="HUMANRES"  action="_APPROVE"/></condition>
> +            <link target="FindLeaveApprovals"/>
> +        </menu-item>
> +    </menu>
> +
> </menus>
>
> Modified: ofbiz/trunk/applications/humanres/widget/forms/ EmplLeaveForms.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/forms/ EmplLeaveForms.xml (original)
> +++ ofbiz/trunk/applications/humanres/widget/forms/ EmplLeaveForms.xml Fri Oct 30 10:07:09 2009
> @@ -29,66 +29,155 @@
>                 <entity-options description="${description}" key- field-name="leaveTypeId" entity-name="EmplLeaveType"/>
>             </drop-down>
>         </field>
> +        <field name="emplLeaveReasonTypeId">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- field-name="emplLeaveReasonTypeId" 
> entity-name="EmplLeaveReasonType"/>
> +            </drop-down>
> +        </field>
> +        <field name="leaveStatus">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- field-name="statusId" entity-name="StatusItem">
> +                    <entity-constraint name="statusTypeId"  operator="equals" value="LEAVE_STATUS"/>
> +                    <entity-order-by field-name="description"/>
> +                </entity-options>
> +            </drop-down>
> +        </field>
> +        <field name="approverPartyId" title="$ {uiLabelMap.PartyApproverId}"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="description"><hidden/></field>
>         <field name="noConditionFind"><hidden value="Y"/><!-- if  this isn't there then with all fields empty no query will be 
> done -- 
> ></field>
>         <field name="searchButton" widget- style="smallSubmit"><submit button-type="button"/></field>
>     </form>
> -    <form name="ListEmplLeaves" type="multi" use-row-submit="true"  separate-columns="true" target="updateEmplLeaveExt?partyId=$ 
> {partyId}" list-name="listIt" paginate-target="FindEmplLeaves"
> -        odd-row-style="alternate-row" header-row-style="header- row-2" default-table-style="basic-table hover-bar">
> +    <form name="ListEmplLeaves" list-name="listIt" type="list" odd- row-style="alternate-row" header-row-style="header-row-2"
> +        paginate-target="FindEmplLeaves" default-table-style="basic- table hover-bar">
>         <actions>
> +        <set field="entityName" value="EmplLeave"/>
>             <service service-name="performFind" result-map="result"  result-map-list="listIt">
>                 <field-map field-name="inputFields" from- field="parameters"/>
> -                <field-map field-name="entityName"  value="EmplLeave"/>
> -                <field-map field-name="orderBy" value="fromDate"/>
> +                <field-map field-name="entityName" from- field="entityName"/>
>                 <field-map field-name="viewIndex" from- field="viewIndex"/>
>                 <field-map field-name="viewSize" from- field="viewSize"/>
>             </service>
> -            <set field="insideEmployee" from- field="parameters.insideEmployee"/>
>         </actions>
> -        <alt-target use-when="insideEmployee==null"  target="updateEmplLeave"/>
> -        <auto-fields-service service-name="updateEmplLeave"/>
> -        <field name="partyId"><display/></field>
> -        <field name="leaveTypeId"><display/></field>
> -        <field name="fromDate"><display/></field>
> -        <field name="_rowSubmit" title="$ {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> -        <field name="submitButton" title="$ {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ field>
> -    </form>
> -    <form name="AddEmplLeave" type="single" target="createEmplLeave"
> +        <auto-fields-entity entity-name="EmplLeave" default-field- type="display"/>
> +        <field name="partyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ viewprofile" target-type="inter-app" description="${partyId}" link- 
> style="buttontext">
> +                    <parameter param-name="partyId" from- field="partyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="approverPartyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ viewprofile" target-type="inter-app" description="$ {approverPartyId}" 
> link-style="buttontext">
> +                    <parameter param-name="approverPartyId" from- field="approverPartyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="leaveStatus"><display/></field>
> +        <field name="updateLeave" title="$ {uiLabelMap.CommonUpdate}" widget-style="buttontext" use- when="hasAdminPermission">
> +            <hyperlink also-hidden="false" description="$ {uiLabelMap.CommonUpdate}" target="EditEmplLeave">
> +                <parameter param-name="partyId"/>
> +                <parameter param-name="leaveTypeId"/>
> +                <parameter param-name="fromDate"/>
> +            </hyperlink>
> +        </field>
> +        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  widget-style="buttontext" use-when="hasAdminPermission">
> +            <hyperlink also-hidden="false" description="$ {uiLabelMap.CommonDelete}" target="deleteEmplLeave">
> +                <parameter param-name="partyId"/>
> +                <parameter param-name="leaveTypeId"/>
> +                <parameter param-name="fromDate"/>
> +            </hyperlink>
> +        </field>
> +        <field name="description"><hidden/></field>
> +      </form>
> +    <form name="EditEmplLeave" type="single"  target="updateEmplLeaveExt" default-map-name="leaveApp"
>         header-row-style="header-row" default-table-style="basic- table">
> -        <actions>
> -            <set field="insideEmployee" from- field="parameters.insideEmployee"/>
> -        </actions>
> -        <alt-target use-when="insideEmployee != null"  target="createEmplLeaveExt"/>
> -        <auto-fields-service service-name="createEmplLeave"/>
> -        <field name="partyId" use-when="emplLeaveCtx!=null"><hidden/
> ></field>
> -        <field name="partyId" use-when="emplLeaveCtx==null"><lookup  target-form-name="LookupPartyName"/></field>
> -        <field name="leaveTypeId">
> +        <alt-target use-when="leaveApp==null"  target="createEmplLeaveExt"/>
> +        <auto-fields-service service-name="updateEmplLeave" map- name="leaveApp"/>
> +        <field name="partyId" tooltip="$ {uiLabelMap.CommonRequired}"><lookup target-form- name="LookupPartyName"/></field>
> +        <field name="approverPartyId" tooltip="$ {uiLabelMap.CommonRequired}"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="leaveTypeId" tooltip="$ {uiLabelMap.CommonRequired}">
>             <drop-down allow-empty="true">
>                 <entity-options description="${description}" key- field-name="leaveTypeId" entity-name="EmplLeaveType"/>
>             </drop-down>
>         </field>
> -        <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
> +        <field name="emplLeaveReasonTypeId">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- field-name="emplLeaveReasonTypeId" 
> entity-name="EmplLeaveReasonType"/>
> +            </drop-down>
> +        </field>
> +        <field name="fromDate" tooltip="$ {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- time></field>
> +        <field name="thruDate" tooltip="$ {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- time></field>
> +        <field name="leaveStatus"><hidden value="LEAVE_CREATED"/></ field>
> +        <field name="submitButton" use-when="leaveApp==null"  title="${uiLabelMap.CommonCreate}" widget- 
> style="smallSubmit"><submit button-type="button"/></field>
> +        <field name="submitButton" use-when="leaveApp!=null"  title="Update" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
> +    </form>
> +   <form name="FindLeaveApprovals" target="FindLeaveApprovals"  type="single">
> +        <auto-fields-entity entity-name="EmplLeave" default-field- type="find"/>
> +        <field name="noConditionFind"><hidden value="Y"/></field>
> +        <!--<field name="approverPartyId" use-when="! hasAdminPermission"><hidden value="${approverPartyId}"/></field>-->
> +        <field name="partyId"><lookup target-form- name="LookupPartyName"/></field>
> +        <field name="leaveStatus" title="$ {uiLabelMap.HumanResLeaveStatus} ${uiLabelMap.CommonStatus}">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- field-name="statusId" entity-name="StatusItem">
> +                    <entity-constraint name="statusTypeId"  operator="equals" value="LEAVE_STATUS"/>
> +                    <entity-order-by field-name="description"/>
> +                </entity-options>
> +            </drop-down>
> +        </field>
> +        <field name="description"><hidden/></field>
> +        <field name="searchButton" widget- style="smallSubmit"><submit button-type="button"/></field>
>     </form>
> -    <form name="ListEmplLeaveTypes" type="multi" title=""  target="updateEmplLeaveType"
> -        odd-row-style="alternate-row" header-row-style="header- row-2" default-table-style="basic-table hover-bar">
> +    <form name="ListLeaveApprovals" list-name="listIt" type="list"  odd-row-style="alternate-row" header-row-style="header-row-2" 
> default-table-style="basic-table hover-bar">
>         <actions>
> -            <entity-condition entity-name="EmplLeaveType"><order-by  field-name="leaveTypeId"/></entity-condition>
> +            <set field="entityName" value="EmplLeave"/>
> +            <service service-name="performFind" result-map="result"  result-map-list="listIt">
> +                <field-map field-name="inputFields" from- field="parameters"/>
> +                <field-map field-name="entityName" from- field="entityName"/>
> +            </service>
>         </actions>
> -        <auto-fields-service service-name="updateEmplLeaveType"  default-field-type="hidden"/>
> -        <field name="leaveTypeId"><display/></field>
> -        <field name="description" title="$ {uiLabelMap.CommonDescription}"><text/></field>
> -        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  widget-style="buttontext">
> -            <hyperlink target="deleteEmplLeaveType" description="$ {uiLabelMap.CommonDelete}" also-hidden="false">
> + <auto-fields-entity entity-name="EmplLeave" default-field- type="display"/>
> +        <field name="partyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ viewprofile" target-type="inter-app" description="${partyId}" link- 
> style="buttontext">
> +                    <parameter param-name="partyId" from- field="partyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="approverPartyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ viewprofile" target-type="inter-app" description="$ {approverPartyId}" 
> link-style="buttontext">
> +                    <parameter param-name="approverPartyId" from- field="approverPartyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="leaveStatus"><display/></field>
> +        <field name="UpdateStatus" title="$ {uiLabelMap.CommonUpdate}" widget-style="buttontext">
> +            <hyperlink target="EditEmplLeaveStatus" description="$ {uiLabelMap.CommonUpdate}" >
> +                <parameter param-name="partyId"/>
> +                <parameter param-name="fromDate"/>
>                 <parameter param-name="leaveTypeId"/>
>             </hyperlink>
>         </field>
> -        <field name="_rowSubmit" title="$ {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> -        <field name="submitButton" title="$ {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ field>
>     </form>
> -    <form name="AddEmplLeaveType" type="single"  target="createEmplLeaveType" default-map-name="emplLeaveType"
> -        header-row-style="header-row" default-table-style="basic- table">
> -        <auto-fields-service service-name="createEmplLeaveType"  default-field-type="hidden"/>
> -        <field name="leaveTypeId"><text/></field>
> -        <field name="description" title="$ {uiLabelMap.CommonDescription}" tooltip="$ {uiLabelMap.CommonRequired}" 
> widget-style="required"><text/></field>
> -        <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
> +    <form name="EditEmplLeaveStatus" type="single"  target="updateEmplLeaveStatus" default-map-name="leaveApp">
> +        <auto-fields-service service-name="updateEmplLeaveStatus"  map-name="leaveApp"/>
> +        <field name="partyId"><display/></field>
> +        <field name="approverPartyId"><display/></field>
> +        <field name="leaveTypeId"><display/></field>
> +        <field name="emplLeaveReasonTypeId"><display/></field>
> +        <field name="fromDate"><display/></field>
> +        <field name="thruDate"><display/></field>
> +        <field name="description"><display/></field>
> +        <field name="leaveStatus" title="$ {uiLabelMap.HumanResLeaveStatus} ${uiLabelMap.CommonStatus}">
> +            <drop-down allow-empty="false">
> +                <entity-options description="${description}" key- field-name="statusId" entity-name="StatusItem">
> +                    <entity-constraint name="statusTypeId"  operator="equals" value="LEAVE_STATUS"/>
> +                    <entity-order-by field-name="description"/>
> +                </entity-options>
> +            </drop-down>
> +        </field>
> +        <field name="leaveStatus" use-when="leaveApp! = null &amp ;&amp ;leaveApp .getString (&quot 
> ;leaveStatus&quot;).equals(&quot;LEAVE_REJECTED&quot;)"><display></ display></field>
> +        <field name="submitButton" title="Update" widget- style="smallSubmit"><submit button-type="button"/></field>
>     </form>
> </forms>
> \ No newline at end of file
>
> Modified: ofbiz/trunk/applications/humanres/widget/forms/ EmployeeForms.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml  (original)
> +++ ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml  Fri Oct 30 10:07:09 2009
> @@ -185,13 +185,22 @@
>         <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
>     </form>
>     <form name="AddEmplLeave" type="single" target="createEmplLeave">
> -        <auto-fields-service service-name="createEmplLeave"/>
> +        <auto-fields-service service-name="updateEmplLeave" map- name="leaveApp"/>
>         <field name="partyId"><hidden/></field>
> -        <field name="leaveTypeId">
> +        <field name="leaveTypeId" tooltip="$ {uiLabelMap.CommonRequired}">
>             <drop-down allow-empty="true">
>                 <entity-options description="${description}" key- field-name="leaveTypeId" entity-name="EmplLeaveType"/>
>             </drop-down>
>         </field>
> +        <field name="emplLeaveReasonTypeId">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- field-name="emplLeaveReasonTypeId" 
> entity-name="EmplLeaveReasonType"/>
> +            </drop-down>
> +        </field>
> +        <field name="fromDate" tooltip="$ {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- time></field>
> +        <field name="thruDate" tooltip="$ {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- time></field>
> +        <field name="leaveStatus"><hidden value="LEAVE_CREATED"/></ field>
> +        <field name="approverPartyId" tooltip="$ {uiLabelMap.CommonRequired}"><lookup target-form- 
> name="LookupPartyName"/></field>
>         <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
>     </form>
>     <form name="ListEmplLeaves" type="list" list-name="listIt"  separate-columns="true" target="updateEmplLeave" paginate- 
> target="FindEmplLeaves"
> @@ -204,9 +213,12 @@
>         </actions>
>         <auto-fields-service service-name="updateEmplLeave"/>
>         <field name="partyId"><hidden/></field>
> +        <field name="approverPartyId"><lookup target-form- name="LookupPartyName"/></field>
> +        <field name="leaveStatus"><display/></field>
> +        <field name="emplLeaveReasonTypeId"><display/></field>
>         <field name="leaveTypeId"><display-entity description="$ {description}" entity-name="EmplLeaveType"/></field>
> -        <field name="fromDate"><display/></field>
> -        <field name="submitButton" title="$ {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ field>
> +        <field name="fromDate"></field>
> +        <field name="submitButton" title="$ {uiLabelMap.CommonUpdate}"><submit button-type="button"/></field>
>     </form>
>     <form name="CurrentEmploymentData" default-map- name="employmentData" type="single">
>         <field name="company" entry-name="employment.partyIdFrom">
>
> Modified: ofbiz/trunk/applications/humanres/widget/forms/ GlobalHRSettingForms.xml
> URL: 
> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml?rev=831249&r1=831248&r2=831249&view=diff
> = = = = = = = = ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/forms/ GlobalHRSettingForms.xml (original)
> +++ ofbiz/trunk/applications/humanres/widget/forms/ GlobalHRSettingForms.xml Fri Oct 30 10:07:09 2009
> @@ -260,4 +260,50 @@
>         <field name="description" title="$ {uiLabelMap.CommonDescription}" tooltip="$ {uiLabelMap.CommonRequired}" 
> widget-style="required"><text/></field>
>         <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
>     </form>
> +    <form name="AddEmplLeaveType" type="single"  target="createEmplLeaveType" default-map-name="emplLeaveType"
> +        header-row-style="header-row" default-table-style="basic- table">
> +        <auto-fields-service service-name="createEmplLeaveType"  default-field-type="hidden"/>
> +        <field name="leaveTypeId"><text/></field>
> +        <field name="description" title="$ {uiLabelMap.CommonDescription}" tooltip="$ {uiLabelMap.CommonRequired}" 
> widget-style="required"><text/></field>
> +        <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
> +    </form>
> +    <form name="ListEmplLeaveTypes" type="multi" title=""  target="updateEmplLeaveType"
> +        odd-row-style="alternate-row" header-row-style="header- row-2" default-table-style="basic-table hover-bar">
> +        <actions>
> +            <entity-condition entity-name="EmplLeaveType"><order-by  field-name="leaveTypeId"/></entity-condition>
> +        </actions>
> +        <auto-fields-service service-name="updateEmplLeaveType"  default-field-type="hidden"/>
> +        <field name="leaveTypeId"><display/></field>
> +        <field name="description" title="$ {uiLabelMap.CommonDescription}"><text/></field>
> +        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  widget-style="buttontext">
> +            <hyperlink target="deleteEmplLeaveType" description="$ {uiLabelMap.CommonDelete}" also-hidden="false">
> +                <parameter param-name="leaveTypeId"/>
> +            </hyperlink>
> +        </field>
> +        <field name="_rowSubmit" title="$ {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> +        <field name="submitButton" title="$ {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ field>
> +    </form>
> +    <form name="AddEmplLeaveReasonType" type="single"  target="createEmplLeaveReasonType" default-map- name="emplLeaveReasonType"
> +        header-row-style="header-row" default-table-style="basic- table">
> +        <auto-fields-service service- name="createEmplLeaveReasonType" default-field-type="hidden"/>
> +        <field name="emplLeaveReasonTypeId"><text/></field>
> +        <field name="description" title="$ {uiLabelMap.CommonDescription}" tooltip="$ {uiLabelMap.CommonRequired}" 
> widget-style="required"><text/></field>
> +        <field name="submitButton" title="$ {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
> +    </form>
> +    <form name="ListEmplLeaveReasonTypes" type="multi" title=""  target="updateEmplLeaveReasonType"
> +        odd-row-style="alternate-row" header-row-style="header- row-2" default-table-style="basic-table hover-bar">
> +        <actions>
> +            <entity-condition entity- name="EmplLeaveReasonType"><order-by field- 
> name="emplLeaveReasonTypeId"/></entity-condition>
> +        </actions>
> +        <auto-fields-service service- name="updateEmplLeaveReasonType" default-field-type="hidden"/>
> +        <field name="emplLeaveReasonTypeId"><display/></field>
> +        <field name="description" title="$ {uiLabelMap.CommonDescription}"><text/></field>
> +        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  widget-style="buttontext">
> +            <hyperlink target="deleteEmplLeaveReasonType"  description="${uiLabelMap.CommonDelete}" also-hidden="false">
> +                <parameter param-name="emplLeaveReasonTypeId"/>
> +            </hyperlink>
> +        </field>
> +        <field name="_rowSubmit" title="$ {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> +        <field name="submitButton" title="$ {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ field>
> +    </form>
> </forms>
>
>




Re: svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Posted by Scott Gray <sc...@hotwaxmedia.com>.
Hi Jacques,

You've got a foreign key name in here that's longer than 18  
characters, its showing up as a warning on start up.

Regards
Scott

HotWax Media
http://www.hotwaxmedia.com

On 30/10/2009, at 11:07 PM, jleroux@apache.org wrote:

> Author: jleroux
> Date: Fri Oct 30 10:07:09 2009
> New Revision: 831249
>
> URL: http://svn.apache.org/viewvc?rev=831249&view=rev
> Log:
> A patch from Pradeep Ruhil "HR Leave Enhancement ." (https://issues.apache.org/jira/browse/OFBIZ-2938 
> ) - OFBIZ-2938
> In this patch we are doing enhancement in HumanResource Leave Module.
> Initially we can only create new leave application for a partyId.
> But there was not functionality available for approval of leave.
> So in this patch we have given functionality for Leave approval as  
> well as leave creation.
> + A better French label
>
> Modified:
>    ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml
>    ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
>    ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
>    ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ 
> HumanResServices.xml
>    ofbiz/trunk/applications/humanres/servicedef/services.xml
>    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ 
> controller.xml
>    ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml
>    ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
>    ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml
>    ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
>    ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml
>    ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml
>    ofbiz/trunk/applications/humanres/widget/forms/ 
> GlobalHRSettingForms.xml
>
> Modified: ofbiz/trunk/applications/humanres/config/ 
> HumanResUiLabels.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml  
> Fri Oct 30 10:07:09 2009
> @@ -224,7 +224,7 @@
>     </property>
>     <property key="FormFieldTitle_leaveTypeId">
>         <value xml:lang="en">Leave Type Id</value>
> -        <value xml:lang="fr">Réf. de type de congé</value>
> +        <value xml:lang="fr">Type de congé</value>
>         <value xml:lang="it">Tipo di licenziamento</value>
>         <value xml:lang="zh">请假类型编号</value>
>     </property>
> @@ -1873,4 +1873,31 @@
>     <property key="PageTitleFindTrainingApprovals">
>         <value xml:lang="en">Find Training Approvals</value>
>     </property>
> +    <property key="HumanResEmplReasonType">
> +        <value xml:lang="en">EmplLeave Reason Type</value>
> +    </property>
> +    <property key="HumanResAddEmplLeaveReasonType">
> +        <value xml:lang="en">Add Employee Leave Reason</value>
> +    </property>
> +    <property key="HumanResLeaveApproval">
> +        <value xml:lang="en">Leave Approval</value>
> +    </property>
> +    <property key="HumanResEditLeaveApprovalStatus">
> +        <value xml:lang="en">Edit Leave Approval Status</value>
> +    </property>
> +    <property key="HumanResLeaveStatus">
> +        <value xml:lang="en">Leave</value>
> +    </property>
> +    <property key="HumanResEmployeeLeave">
> +        <value xml:lang="en">Employee Leave</value>
> +    </property>
> +    <property key="HumanResEmployeeLeaveType">
> +        <value xml:lang="en">Leave Type</value>
> +    </property>
> +    <property key="HumanResEmployeeType">
> +        <value xml:lang="en">Reason Type</value>
> +    </property>
> +    <property key="PartyApproverId">
> +        <value xml:lang="en">Approver Party Id</value>
> +    </property>
> </resource>
>
> Modified: ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml Fri  
> Oct 30 10:07:09 2009
> @@ -53,6 +53,10 @@
>     <StatusItem statusId="TRAINING_APPROVED"  
> statusTypeId="TRAINING_STATUS"  description="Approved"/>
>     <StatusItem statusId="TRAINING_REJECTED"  
> statusTypeId="TRAINING_STATUS"  description="Rejected"/>
>
> +    <StatusType statusTypeId="LEAVE_STATUS" description="Employee  
> Leave Status"/>
> +    <StatusItem statusId="LEAVE_APPROVED"  
> statusTypeId="LEAVE_STATUS"  description="Approved"/>
> +    <StatusItem statusId="LEAVE_REJECTED"  
> statusTypeId="LEAVE_STATUS"  description="Rejected"/>
> +
>     <EmplPositionType description="Programmer" hasTable="N"  
> parentTypeId="" emplPositionTypeId="PROGRAMMER"/>
>     <EmplPositionType description="System Administrator"  
> hasTable="N" parentTypeId="" emplPositionTypeId="SYS_ADMIN"/>
>     <EmplPositionType description="Business Analyst" hasTable="N"  
> parentTypeId="" emplPositionTypeId="BIZ_ANALYST"/>
> @@ -101,8 +105,10 @@
>     <TerminationType description="Fired" hasTable="N"  
> parentTypeId="" terminationTypeId="FIRE"/>
>     <TerminationType description="Retirement" hasTable="N"  
> parentTypeId="" terminationTypeId="RETIRE"/>
>
> -    <EmplLeaveType description="Medical" hasTable="N"  
> parentTypeId="" leaveTypeId="MEDICAL"/>
> -    <EmplLeaveType description="Casual" hasTable="N"  
> parentTypeId="" leaveTypeId="CASUAL"/>
> +    <EmplLeaveType description="Inland Earned Leave" hasTable="N"  
> parentTypeId="" leaveTypeId="INLAND_EARNED"/>
> +    <EmplLeaveType description="Inland Loss of Pay" hasTable="N"  
> parentTypeId="" leaveTypeId="LOSS_OF_PAY"/>
> +    <EmplLeaveType description="Inland Restricted Holiday"  
> hasTable="N" parentTypeId="" leaveTypeId="RESTRICTED_HOLIDAY"/>
> +    <EmplLeaveType description="Inland Special Day Off"  
> hasTable="N" parentTypeId="" leaveTypeId="SPECIAL_DAY_OFF"/>
>
>     <WebSite webSiteId="HR" siteName="Human Resource Manager"  
> visualThemeSetId="BACKOFFICE"/>
>
> @@ -142,5 +148,8 @@
>     <Enumeration description="Written Aptitude Exam"  
> enumCode="WRITTEN_APT" enumId="EXAM_WRITTEN_APT" sequenceId="01"  
> enumTypeId="EXAM_TYPE"/>
>     <Enumeration description="Technical Exam" enumCode="TECHNICAL"  
> enumId="EXAM_TECHNICAL" sequenceId="02" enumTypeId="EXAM_TYPE"/>
>     <Enumeration description="Group Discussion"  
> enumCode="GROUP_DISCN" enumId="EXAM_GROUP_DISCN" sequenceId="03"  
> enumTypeId="EXAM_TYPE"/>
> +
> +    <EmplLeaveReasonType description="Medical" hasTable="N"  
> parentTypeId="" emplLeaveReasonTypeId="Fever"/>
> +    <EmplLeaveReasonType description="Casual" hasTable="N"  
> parentTypeId="" emplLeaveReasonTypeId="Personal Work"/>
>
> </entity-engine-xml>
>
> Modified: ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml Fri  
> Oct 30 10:07:09 2009
> @@ -432,8 +432,11 @@
>             title="Employee Leave Entity">
>         <field name="partyId" type="id-ne"/>
>         <field name="leaveTypeId" type="id-ne"/>
> +        <field name="emplLeaveReasonTypeId" type="id-ne"/>
>         <field name="fromDate" type="date-time"/>
>         <field name="thruDate" type="date-time"/>
> +        <field name="approverPartyId" type="id-ne"/>
> +      	<field name="leaveStatus" type="short-varchar"/>
>         <field name="description" type="description"/>
>         <prim-key field="partyId"/>
>         <prim-key field="leaveTypeId"/>
> @@ -444,6 +447,12 @@
>         <relation type="one" fk-name="EMPL_LEAVE_ELETP" rel-entity- 
> name="EmplLeaveType">
>             <key-map field-name="leaveTypeId"/>
>         </relation>
> +        <relation type="one" fk-name="EMPL_LEAVE_REASON_ELETP" rel- 
> entity-name="EmplLeaveReasonType">
> +            <key-map field-name="emplLeaveReasonTypeId"/>
> +        </relation>
> +        <relation type="one" fk-name="EMPL_LEAVE_APPR"  
> title="Approver" rel-entity-name="Party">
> +            <key-map field-name="approverPartyId" rel-field- 
> name="partyId"/>
> +	    </relation>
>     </entity>
>     <entity entity-name="EmplLeaveType"
>             package-name="org.ofbiz.humanres.employment"
> @@ -934,4 +943,16 @@
>         <field name="trainingRequestId" type="id-ne"></field>
>         <prim-key field="trainingRequestId"/>
>     </entity>
> +    <entity entity-name="EmplLeaveReasonType"
> +            package-name="org.ofbiz.humanres.employment"
> +            title="Leave Reason Type Entity">
> +        <field name="emplLeaveReasonTypeId" type="id-ne"/>
> +        <field name="parentTypeId" type="id-ne"/>
> +        <field name="hasTable" type="indicator"/>
> +        <field name="description" type="description"/>
> +        <prim-key field="emplLeaveReasonTypeId"/>
> +        <relation type="one" fk-name="EMPL_REASON_TPAR"  
> title="Parent" rel-entity-name="EmplLeaveReasonType">
> +            <key-map field-name="parentTypeId" rel-field- 
> name="emplLeaveReasonTypeId"/>
> +        </relation>
> +     </entity>
> </entitymodel>
>
> Modified: ofbiz/trunk/applications/humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/HumanResServices.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ 
> HumanResServices.xml (original)
> +++ ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ 
> HumanResServices.xml Fri Oct 30 10:07:09 2009
> @@ -648,7 +648,8 @@
>         <entity-one entity-name="AgreementEmploymentAppl" value- 
> field="agreementEmploymentAppl"/>
>         <remove-value value-field="agreementEmploymentAppl"/>
>     </simple-method>
> -        <simple-method method-name="createEmplLeave" short- 
> description="Create Employee Leave">
> +
> +    <simple-method method-name="createEmplLeave" short- 
> description="Create Employee Leave">
>         <make-value entity-name="EmplLeave" value-field="newEntity"/>
>         <set-pk-fields value-field="newEntity" map="parameters"/>
>         <set-nonpk-fields value-field="newEntity" map="parameters"/>
> @@ -662,6 +663,11 @@
>         <store-value value-field="lookedUpValue"/>
>     </simple-method>
>
> +    <simple-method method-name="deleteEmplLeave" short- 
> description="Delete Employee Leave">
> +        <entity-one entity-name="EmplLeave" value-field="emplLeave"/>
> +        <remove-value value-field="emplLeave"/>
> +    </simple-method>
> +
>     <simple-method method-name="createEmplLeaveType" short- 
> description="Create a LeaveType">
>         <make-value entity-name="EmplLeaveType" value- 
> field="newEntity"/>
>         <set-pk-fields map="parameters" value-field="newEntity"/>
> @@ -863,4 +869,32 @@
>         <remove-value value-field="lookedUpValue"/>
>     </simple-method>
>
> +    <simple-method method-name="createEmplLeaveReasonType" short- 
> description="Create a Leave Reason Type">
> +        <make-value entity-name="EmplLeaveReasonType" value- 
> field="newEntity"/>
> +        <set-pk-fields map="parameters" value-field="newEntity"/>
> +        <set-nonpk-fields map="parameters" value-field="newEntity"/>
> +        <if-empty field="newEntity.emplLeaveReasonTypeId">
> +            <sequenced-id sequence-name="EmplLeaveReasonType"  
> field="newEntity.emplLeaveReasonTypeId"/>
> +        </if-empty>
> +        <field-to-result field="newEntity.emplLeaveReasonTypeId"  
> result-name="emplLeaveReasonTypeId"/>
> +        <create-value value-field="newEntity"/>
> +    </simple-method>
> +
> +    <simple-method method-name="updateEmplLeaveReasonType" short- 
> description="Update leave Reason Type">
> +        <entity-one entity-name="EmplLeaveReasonType" value- 
> field="lookedUpValue"/>
> +        <set-nonpk-fields value-field="lookedUpValue"  
> map="parameters"/>
> +        <store-value value-field="lookedUpValue"/>
> +    </simple-method>
> +
> +    <simple-method method-name="deleteEmplLeaveReasonType" short- 
> description="Delete leave Reason Type">
> +        <entity-one entity-name="EmplLeaveReasonType" value- 
> field="lookedUpValue"/>
> +        <remove-value value-field="lookedUpValue"/>
> +    </simple-method>
> +
> +    <simple-method method-name="updateEmplLeaveStatus" short- 
> description="Update Leave Approval Status">
> +        <entity-one entity-name="EmplLeave" value- 
> field="lookedUpValue"/>
> +        <set-nonpk-fields value-field="lookedUpValue"  
> map="parameters"/>
> +        <store-value value-field="lookedUpValue"/>
> +    </simple-method>
> +
> </simple-methods>
>
> Modified: ofbiz/trunk/applications/humanres/servicedef/services.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/servicedef/services.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/servicedef/services.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/servicedef/services.xml Fri  
> Oct 30 10:07:09 2009
> @@ -664,12 +664,15 @@
>         <permission-service service-name="humanResManagerPermission"  
> main-action="DELETE"/>
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>     </service>
> +
>     <service name="createEmplLeave" engine="simple" default-entity- 
> name="EmplLeave"
>              location="component://humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml" invoke="createEmplLeave" auth="true">
>         <description>Create Employee Leave</description>
>         <permission-service service-name="humanResManagerPermission"  
> main-action="CREATE"/>
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>         <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="approverPartyId" optional="false"/>
> +        <override name="thruDate" optional="false"/>
>     </service>
>
>     <service name="updateEmplLeave" engine="simple" default-entity- 
> name="EmplLeave"
> @@ -678,8 +681,17 @@
>         <permission-service service-name="humanResManagerPermission"  
> main-action="UPDATE"/>
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>         <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="approverPartyId" optional="false"/>
> +        <override name="thruDate" optional="false"/>
>     </service>
>
> +    <service name="deleteEmplLeave" engine="simple" default-entity- 
> name="EmplLeave"
> +             location="component://humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml" invoke="deleteEmplLeave" auth="true">
> +        <description>Delete AgreementEmploymentAppl</description>
> +        <permission-service service- 
> name="humanResManagerPermission" main-action="DELETE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +    </service>
> +
>     <service name="createEmplLeaveType" engine="simple" default- 
> entity-name="EmplLeaveType"
>              location="component://humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml" invoke="createEmplLeaveType"  
> auth="true">
>         <description>Create Valid LeaveType</description>
> @@ -893,4 +905,37 @@
>         <auto-attributes mode="IN" include="pk" optional="false"/>
>     </service>
>
> +    <service name="createEmplLeaveReasonType" engine="simple"  
> default-entity-name="EmplLeaveReasonType"
> +             location="component://humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml" invoke="createEmplLeaveReasonType"  
> auth="true">
> +        <description>Create Valid Leave Reason Type</description>
> +        <permission-service service- 
> name="humanResManagerPermission" main-action="CREATE"/>
> +        <auto-attributes mode="INOUT" include="pk" optional="true"/>
> +        <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="description" optional="false"/>
> +    </service>
> +
> +    <service name="updateEmplLeaveReasonType" engine="simple"  
> default-entity-name="EmplLeaveReasonType"
> +             location="component://humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml" invoke="updateEmplLeaveReasonType"  
> auth="true">
> +        <description>Update Valid Leave Reason Type</description>
> +        <permission-service service- 
> name="humanResManagerPermission" main-action="UPDATE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +        <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +        <override name="description" optional="false"/>
> +    </service>
> +
> +    <service name="deleteEmplLeaveReasonType" engine="simple"  
> default-entity-name="EmplLeaveReasonType"
> +        location="component://humanres/script/org/ofbiz/humanres/ 
> HumanResServices.xml" invoke="deleteEmplLeaveReasonType" auth="true">
> +        <description>Delete Valid Leave Reason Type</description>
> +        <permission-service service- 
> name="humanResManagerPermission" main-action="DELETE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +    </service>
> +
> +    <service name="updateEmplLeaveStatus" engine="simple" default- 
> entity-name="EmplLeave"
> +            location="component://humanres/script/org/ofbiz/ 
> humanres/HumanResServices.xml" invoke="updateEmplLeaveStatus"  
> auth="true">
> +        <description>Update Leave Approval Status</description>
> +        <permission-service service- 
> name="humanResManagerPermission" main-action="UPDATE"/>
> +        <auto-attributes mode="IN" include="pk" optional="false"/>
> +        <auto-attributes mode="IN" include="nonpk" optional="true"/>
> +    </service>
> +
> </services>
>
> Modified: ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ 
> controller.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ 
> controller.xml (original)
> +++ ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ 
> controller.xml Fri Oct 30 10:07:09 2009
> @@ -396,9 +396,15 @@
>         <security https="true" auth="true"/>
>         <response name="success" type="view" value="NewEmplLeave"/>
>     </request-map>
> -    <request-map uri="EditEmplLeaves">
> +    <request-map uri="EditEmplLeave">
>         <security https="true" auth="true"/>
> -        <response name="success" type="view" value="EditEmplLeaves"/>
> +        <response name="success" type="view" value="EditEmplLeave"/>
> +    </request-map>
> +    <request-map uri="deleteEmplLeave">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="deleteEmplLeave"/>
> +        <response name="success" type="view" value="FindEmplLeaves"/>
> +        <response name="error" type="view" value="FindEmplLeaves"/>
>     </request-map>
>     <request-map uri="EditEmplLeaveTypes">
>         <security https="true" auth="true"/>
> @@ -821,14 +827,14 @@
>     <request-map uri="createEmplLeaveExt">
>         <security https="true" auth="true"/>
>         <event type="service" invoke="createEmplLeave"/>
> -        <response name="success" type="view" value="EditEmplLeaves"/>
> -        <response name="error" type="view" value="EditEmplLeaves"/>
> +        <response name="success" type="view" value="EditEmplLeave"/>
> +        <response name="error" type="view" value="EditEmplLeave"/>
>     </request-map>
>     <request-map uri="updateEmplLeaveExt">
>         <security https="true" auth="true"/>
> -        <event type="service-multi" invoke="updateEmplLeave"/>
> -        <response name="success" type="view" value="EditEmplLeaves"/>
> -        <response name="error" type="view" value="EditEmplLeaves"/>
> +        <event type="service" invoke="updateEmplLeave"/>
> +        <response name="success" type="view" value="EditEmplLeave"/>
> +        <response name="error" type="view" value="EditEmplLeave"/>
>     </request-map>
>
>     <!--====================Recruitment  
> Requests===================================-->
> @@ -1020,6 +1026,42 @@
>         <security auth="true" https="true"/>
>         <response name="success" type="view" value="LookupTraining"/>
>     </request-map>
> +    <request-map uri="EditEmplLeaveReasonTypes">
> +        <security https="true" auth="true"/>
> +        <response name="success" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="createEmplLeaveReasonType">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="createEmplLeaveReasonType"/>
> +        <response name="success" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +        <response name="error" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="updateEmplLeaveReasonType">
> +        <security https="true" auth="true"/>
> +        <event type="service-multi"  
> invoke="updateEmplLeaveReasonType"/>
> +        <response name="success" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +        <response name="error" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="deleteEmplLeaveReasonType">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="deleteEmplLeaveReasonType"/>
> +        <response name="success" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +        <response name="error" type="view"  
> value="EditEmplLeaveReasonTypes"/>
> +    </request-map>
> +    <request-map uri="FindLeaveApprovals">
> +        <security https="true" auth="true"/>
> +        <response name="success" type="view"  
> value="FindLeaveApprovals"/>
> +    </request-map>
> +    <request-map uri="EditEmplLeaveStatus">
> +       <security https="true" auth="true"/>
> +        <response name="success" type="view"  
> value="EditEmplLeaveStatus"/>
> +    </request-map>
> +    <request-map uri="updateEmplLeaveStatus">
> +        <security https="true" auth="true"/>
> +        <event type="service" invoke="updateEmplLeaveStatus"/>
> +        <response name="success" type="view"  
> value="EditEmplLeaveStatus"/>
> +        <response name="error" type="view"  
> value="EditEmplLeaveStatus"/>
> +    </request-map>
>     <!-- ===================Lookup Request===================== -->
>     <request-map uri="LookupPartyName"><security auth="true"  
> https="true"/><response name="success" type="view"  
> value="LookupPartyName"/></request-map>
>     <request-map uri="LookupPayment"><security auth="true"  
> https="true"/><response name="success" type="view"  
> value="LookupPayment"/></request-map>
> @@ -1124,8 +1166,11 @@
>
>     <view-map name="FindEmplLeaves" type="screen" page="component:// 
> humanres/widget/EmplLeaveScreens.xml#FindEmplLeaves"/>
>     <view-map name="NewEmplLeave" type="screen" page="component:// 
> humanres/widget/EmplLeaveScreens.xml#NewEmplLeave"/>
> -    <view-map name="EditEmplLeaves" type="screen" page="component:// 
> humanres/widget/EmplLeaveScreens.xml#EditEmplLeaves"/>
> -    <view-map name="EditEmplLeaveTypes" type="screen"  
> page="component://humanres/widget/ 
> EmplLeaveScreens.xml#EditEmplLeaveTypes"/>
> +    <view-map name="EditEmplLeave" type="screen" page="component:// 
> humanres/widget/EmplLeaveScreens.xml#EditEmplLeave"/>
> +    <view-map name="EditEmplLeaveTypes" type="screen"  
> page="component://humanres/widget/ 
> GlobalHRSettingScreens.xml#EditEmplLeaveTypes"/>
> +    <view-map name="EditEmplLeaveReasonTypes" type="screen"  
> page="component://humanres/widget/ 
> GlobalHRSettingScreens.xml#EditEmplLeaveReasonTypes"/>
> +    <view-map name="FindLeaveApprovals" type="screen"  
> page="component://humanres/widget/ 
> EmplLeaveScreens.xml#FindLeaveApprovals"/>
> +    <view-map name="EditEmplLeaveStatus" type="screen"  
> page="component://humanres/widget/ 
> EmplLeaveScreens.xml#EditEmplLeaveStatus"/>
>
>     <!-- ==================Recruitment View Map=====================  
> -->
>     <view-map name="FindJobRequisitions" type="screen"  
> page="component://humanres/widget/ 
> RecruitmentScreens.xml#FindJobRequisitions"/>
>
> Modified: ofbiz/trunk/applications/humanres/widget/ 
> EmplLeaveScreens.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml  
> Fri Oct 30 10:07:09 2009
> @@ -29,92 +29,131 @@
>                 <set field="leaveTypeId" from- 
> field="parameters.leaveTypeId"/>
>                 <set field="fromDate" from- 
> field="parameters.fromDate"/>
>                 <set field="emplLeaveCtx" from-field="parameters"/>
> +                <service service-name="humanResManagerPermission"  
> result-map="permResult">
> +                    <field-map field-name="mainAction"  
> value="ADMIN"/>
> +                </service>
> +                <set field="hasAdminPermission" from- 
> field="permResult.hasPermission"/>
>             </actions>
>             <widgets>
>                 <decorator-screen name="main-decorator" location="$ 
> {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> -                        <decorator-screen  
> name="FindScreenDecorator" location="component://common/widget/ 
> CommonScreens.xml">
> -                            <decorator-section name="menu-bar">
> -                                <section>
> -                                    <widgets>
> -                                        <container style="button- 
> bar">
> -                                            <link  
> target="NewEmplLeave" text="${uiLabelMap.HumanResNewLeave}"  
> style="buttontext"/>
> -                                        </container>
> -                                    </widgets>
> -                                </section>
> -                            </decorator-section>
> -                            <decorator-section name="search-options">
> -                                <include-form name="FindEmplLeaves"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> -                            </decorator-section>
> -                            <decorator-section name="search-results">
> -                                <include-form name="ListEmplLeaves"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> -                            </decorator-section>
> -                        </decorator-screen>
> +                        <include-menu name="EmplLeaveTabBar"  
> location="component://humanres/widget/HumanresMenus.xml"/>
> +                  	    <section>
> +                            <condition>
> +                                <if-has-permission  
> permission="HUMANRES" action="_VIEW"/>
> +                            </condition>
> +                            <widgets>
> +		                        <decorator-screen  
> name="FindScreenDecorator" location="component://common/widget/ 
> CommonScreens.xml">
> +		                            <decorator-section name="menu-bar">
> +		                                <section>
> +		                                    <widgets>
> +		                                        <container style="button- 
> bar">
> +		                                            <link  
> target="EditEmplLeave" text="${uiLabelMap.HumanResNewLeave}"  
> style="buttontext"/>
> +		                                        </container>
> +		                                    </widgets>
> +		                                </section>
> +		                            </decorator-section>
> +		                            <decorator-section name="search- 
> options">
> +		                                <include-form  
> name="FindEmplLeaves" location="component://humanres/widget/forms/ 
> EmplLeaveForms.xml"/>
> +		                            </decorator-section>
> +		                            <decorator-section name="search- 
> results">
> +		                                <include-form  
> name="ListEmplLeaves" location="component://humanres/widget/forms/ 
> EmplLeaveForms.xml"/>
> +		                            </decorator-section>
> +		                        </decorator-screen>
> +		                    </widgets>
> +		                </section>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>         </section>
>     </screen>
> -    <screen name="NewEmplLeave">
> -        <section>
> +    <screen name="FindLeaveApprovals">
> +    	<section>
>             <actions>
> -                <set field="titleProperty"  
> value="HumanResAddEmplLeave"/>
> +                <set field="titleProperty"  
> value="PageTitleFindApprovals"/>
> +                <set field="tabButtonItem" value="Approval"/>
>                 <set field="headerItem" value="Leave"/>
> -                <set field="emplLeaveCtx" from- 
> field="parameters.PartyId"/>
> +                <service service-name="humanResManagerPermission"  
> result-map="permResult">
> +                    <field-map field-name="mainAction"  
> value="ADMIN"/>
> +                </service>
> +                <set field="hasAdminPermission" from- 
> field="permResult.hasPermission"/>
> +                <set field="approverPartyId" from- 
> field="parameters.userLogin.partyId"/>
>             </actions>
>             <widgets>
>                 <decorator-screen name="main-decorator" location="$ 
> {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> -                        <screenlet title="$ 
> {uiLabelMap.HumanResAddEmplLeave}">
> -                            <section>
> -                                <widgets>
> -                                    <include-form  
> name="AddEmplLeave" location="component://humanres/widget/forms/ 
> EmplLeaveForms.xml"/>
> -                                </widgets>
> -                            </section>
> -                        </screenlet>
> +                        <include-menu name="EmplLeaveTabBar"  
> location="component://humanres/widget/HumanresMenus.xml"/>
> +                        <section>
> +                            <condition>
> +                                <if-has-permission  
> permission="HUMANRES" action="_VIEW"/>
> +                            </condition>
> +                            <widgets>
> +                                <decorator-screen  
> name="FindScreenDecorator" location="component://common/widget/ 
> CommonScreens.xml">
> +                                    <decorator-section name="search- 
> options">
> +                                        <include-form  
> name="FindLeaveApprovals" location="component://humanres/widget/ 
> forms/EmplLeaveForms.xml"/>
> +                                    </decorator-section>
> +                                    <decorator-section name="search- 
> results">
> +                                        <include-form  
> name="ListLeaveApprovals" location="component://humanres/widget/ 
> forms/EmplLeaveForms.xml"/>
> +                                    </decorator-section>
> +                                </decorator-screen>
> +                            </widgets>
> +                            <fail-widgets>
> +                                <label style="h3">$ 
> {uiLabelMap.HumanResViewPermissionError}</label>
> +                            </fail-widgets>
> +                        </section>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>         </section>
>     </screen>
> -    <screen name="EditEmplLeaves">
> +    <screen name="EditEmplLeave">
>         <section>
>             <actions>
>                 <set field="titleProperty"  
> value="HumanResEditEmplLeave"/>
> -                <set field="headerItem" value="Employee"/>
> +                <set field="headerItem" value="Leave"/>
>                 <set field="tabButtonItem" value="EditEmplLeaves"/>
>                 <set field="partyId" from-field="parameters.partyId"/>
> -                <set field="emplLeaveCtx.partyId" from- 
> field="parameters.partyId"/>
> -                <set field="parameters.insideEmployee" value="true"/>
> +                <set field="leaveTypeId" from- 
> field="parameters.leaveTypeId"/>
> +                <set field="fromDate" from- 
> field="parameters.fromDate"/>
> +                <entity-one entity-name="EmplLeave" value- 
> field="leaveApp" auto-field-map="false">
> +                    <field-map field-name="partyId" from- 
> field="partyId"/>
> +                    <field-map field-name="leaveTypeId" from- 
> field="leaveTypeId"/>
> +                    <field-map field-name="fromDate" from- 
> field="fromDate"/>
> +                </entity-one>
>             </actions>
>             <widgets>
> -                <decorator-screen name="CommonPartyDecorator"  
> location="${parameters.mainDecoratorLocation}">
> +                 <decorator-screen name="main-decorator" location="$ 
> {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> +                        <include-menu name="EmplLeaveTabBar"  
> location="component://humanres/widget/HumanresMenus.xml"/>	
>                         <screenlet id="AddEmplLeavePanel" title="$ 
> {uiLabelMap.HumanResAddEmplLeave}" collapsible="true">
> -                            <include-form name="AddEmplLeave"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> +                            <include-form name="EditEmplLeave"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
>                         </screenlet>
> -                        <include-form name="ListEmplLeaves"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>         </section>
>     </screen>
> -    <screen name="EditEmplLeaveTypes">
> +    <screen name="EditEmplLeaveStatus">
>         <section>
>             <actions>
> -                <set field="titleProperty"  
> value="HumanResEditEmplLeaveType"/>
> -                <set field="headerItem" value="GlobalHRSettings"/>
> -                <set field="tabButtonItem" value="EmplLeaveType"/>
> +                <set field="titleProperty"  
> value="PageTitleEditApprovalStatus"/>
> +                <set field="tabButtonItem" value="Approval"/>
> +                <set field="partyId" from- 
> field="parameters.partyId"/>
>                 <set field="leaveTypeId" from- 
> field="parameters.leaveTypeId"/>
> -                <entity-one entity-name="EmplLeaveType" value- 
> field="emplLeaveType"/>
> +                <set field="fromDate" from- 
> field="parameters.fromDate"/>
> +                <entity-one entity-name="EmplLeave" value- 
> field="leaveApp" auto-field-map="false">
> +                    <field-map field-name="partyId" from- 
> field="partyId"/>
> +                    <field-map field-name="leaveTypeId" from- 
> field="leaveTypeId"/>
> +                    <field-map field-name="fromDate" from- 
> field="fromDate"/>
> +                </entity-one>
>             </actions>
>             <widgets>
> -                <decorator-screen name="GlobalHRSettingsDecorator"  
> location="${parameters.mainDecoratorLocation}">
> +                <decorator-screen name="main-decorator" location="$ 
> {parameters.mainDecoratorLocation}">
>                     <decorator-section name="body">
> -                        <screenlet id="AddEmplLeaveTypePanel"  
> title="${uiLabelMap.HumanResAddEmplLeaveType}" collapsible="true">
> -                            <include-form name="AddEmplLeaveType"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
> +                        <include-menu name="EmplLeaveTabBar"  
> location="component://humanres/widget/HumanresMenus.xml"/>
> +                        <screenlet id="EditEmplLeaveStatus" title="$ 
> {uiLabelMap.HumanResEditLeaveApprovalStatus}" collapsible="true">
> +                            <include-form  
> name="EditEmplLeaveStatus" location="component://humanres/widget/ 
> forms/EmplLeaveForms.xml"/>
>                         </screenlet>
> -                        <include-form name="ListEmplLeaveTypes"  
> location="component://humanres/widget/forms/EmplLeaveForms.xml"/>
>                     </decorator-section>
>                 </decorator-screen>
>             </widgets>
>
> Modified: ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml Fri  
> Oct 30 10:07:09 2009
> @@ -274,8 +274,7 @@
>                 <set field="titleProperty"  
> value="HumanResEditEmplLeave"/>
>                 <set field="tabButtonItem"  
> value="EditEmployeeLeaves"/>
>                 <set field="partyId" from-field="parameters.partyId"/>
> -                <set field="emplLeaveCtx.partyId" from- 
> field="parameters.partyId"/>
> -                <set field="parameters.insideEmployee" value="true"/>
> +                <entity-one entity-name="EmplLeave" value- 
> field="leaveApp"/>
>             </actions>
>             <widgets>
>                 <decorator-screen name="EmployeeDecorator"  
> location="${parameters.mainDecoratorLocation}">
>
> Modified: ofbiz/trunk/applications/humanres/widget/ 
> GlobalHRSettingScreens.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/ 
> GlobalHRSettingScreens.xml (original)
> +++ ofbiz/trunk/applications/humanres/widget/ 
> GlobalHRSettingScreens.xml Fri Oct 30 10:07:09 2009
> @@ -226,4 +226,48 @@
>             </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>
> </screens>
>
> Modified: ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml Fri  
> Oct 30 10:07:09 2009
> @@ -289,4 +289,27 @@
>         </menu-item>
>     </menu>
>
> +	<menu name="EmplLeaveReasonTypeTabBar" extends="CommonTabBarMenu"  
> extends-resource="component://common/widget/CommonMenus.xml"
> +        default-menu-item-name="Employee Leave Reason Type"  
> type="simple" menu-container-style="button-bar tab-bar"
> +        default-selected-style="selected" selected-menuitem-context- 
> field-name="tabButtonItem">
> +        <menu-item name="EmplLeaveType" title="$ 
> {uiLabelMap.HumanResEmployeeLeaveType}">
> +            <link target="EditEmplLeaveTypes"/>
> +        </menu-item>
> +        <menu-item name="EmplLeaveReasonType" title="$ 
> {uiLabelMap.HumanResEmployeeType}">
> +            <link target="EditEmplLeaveReasonTypes"/>
> +        </menu-item>
> +    </menu>
> +
> +    <menu name="EmplLeaveTabBar" extends="CommonTabBarMenu" extends- 
> resource="component://common/widget/CommonMenus.xml"
> +        default-menu-item-name="Employee Leave" type="simple" menu- 
> container-style="button-bar tab-bar"
> +        default-selected-style="selected" selected-menuitem-context- 
> field-name="tabButtonItem">
> +        <menu-item name="Employee Leave" title="$ 
> {uiLabelMap.HumanResEmployeeLeave}">
> +            <link target="FindEmplLeaves"/>
> +        </menu-item>
> +        <menu-item name="Approval" title="$ 
> {uiLabelMap.HumanResLeaveApproval}">
> +            <condition><if-has-permission permission="HUMANRES"  
> action="_APPROVE"/></condition>
> +            <link target="FindLeaveApprovals"/>
> +        </menu-item>
> +    </menu>
> +
> </menus>
>
> Modified: ofbiz/trunk/applications/humanres/widget/forms/ 
> EmplLeaveForms.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/forms/ 
> EmplLeaveForms.xml (original)
> +++ ofbiz/trunk/applications/humanres/widget/forms/ 
> EmplLeaveForms.xml Fri Oct 30 10:07:09 2009
> @@ -29,66 +29,155 @@
>                 <entity-options description="${description}" key- 
> field-name="leaveTypeId" entity-name="EmplLeaveType"/>
>             </drop-down>
>         </field>
> +        <field name="emplLeaveReasonTypeId">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- 
> field-name="emplLeaveReasonTypeId" entity-name="EmplLeaveReasonType"/>
> +            </drop-down>
> +        </field>
> +        <field name="leaveStatus">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- 
> field-name="statusId" entity-name="StatusItem">
> +                    <entity-constraint name="statusTypeId"  
> operator="equals" value="LEAVE_STATUS"/>
> +                    <entity-order-by field-name="description"/>
> +                </entity-options>
> +            </drop-down>
> +        </field>
> +        <field name="approverPartyId" title="$ 
> {uiLabelMap.PartyApproverId}"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="description"><hidden/></field>
>         <field name="noConditionFind"><hidden value="Y"/><!-- if  
> this isn't there then with all fields empty no query will be done -- 
> ></field>
>         <field name="searchButton" widget- 
> style="smallSubmit"><submit button-type="button"/></field>
>     </form>
> -    <form name="ListEmplLeaves" type="multi" use-row-submit="true"  
> separate-columns="true" target="updateEmplLeaveExt?partyId=$ 
> {partyId}" list-name="listIt" paginate-target="FindEmplLeaves"
> -        odd-row-style="alternate-row" header-row-style="header- 
> row-2" default-table-style="basic-table hover-bar">
> +    <form name="ListEmplLeaves" list-name="listIt" type="list" odd- 
> row-style="alternate-row" header-row-style="header-row-2"
> +        paginate-target="FindEmplLeaves" default-table-style="basic- 
> table hover-bar">
>         <actions>
> +        	<set field="entityName" value="EmplLeave"/>
>             <service service-name="performFind" result-map="result"  
> result-map-list="listIt">
>                 <field-map field-name="inputFields" from- 
> field="parameters"/>
> -                <field-map field-name="entityName"  
> value="EmplLeave"/>
> -                <field-map field-name="orderBy" value="fromDate"/>
> +                <field-map field-name="entityName" from- 
> field="entityName"/>
>                 <field-map field-name="viewIndex" from- 
> field="viewIndex"/>
>                 <field-map field-name="viewSize" from- 
> field="viewSize"/>
>             </service>
> -            <set field="insideEmployee" from- 
> field="parameters.insideEmployee"/>
>         </actions>
> -        <alt-target use-when="insideEmployee==null"  
> target="updateEmplLeave"/>
> -        <auto-fields-service service-name="updateEmplLeave"/>
> -        <field name="partyId"><display/></field>
> -        <field name="leaveTypeId"><display/></field>
> -        <field name="fromDate"><display/></field>
> -        <field name="_rowSubmit" title="$ 
> {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> -        <field name="submitButton" title="$ 
> {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ 
> field>
> -    </form>
> -    <form name="AddEmplLeave" type="single" target="createEmplLeave"
> +        <auto-fields-entity entity-name="EmplLeave" default-field- 
> type="display"/>
> +        <field name="partyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  
> description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ 
> viewprofile" target-type="inter-app" description="${partyId}" link- 
> style="buttontext">
> +                    <parameter param-name="partyId" from- 
> field="partyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="approverPartyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  
> description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ 
> viewprofile" target-type="inter-app" description="$ 
> {approverPartyId}" link-style="buttontext">
> +                    <parameter param-name="approverPartyId" from- 
> field="approverPartyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="leaveStatus"><display/></field>
> +        <field name="updateLeave" title="$ 
> {uiLabelMap.CommonUpdate}" widget-style="buttontext" use- 
> when="hasAdminPermission">
> +            <hyperlink also-hidden="false" description="$ 
> {uiLabelMap.CommonUpdate}" target="EditEmplLeave">
> +                <parameter param-name="partyId"/>
> +                <parameter param-name="leaveTypeId"/>
> +                <parameter param-name="fromDate"/>
> +            </hyperlink>
> +        </field>
> +        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  
> widget-style="buttontext" use-when="hasAdminPermission">
> +            <hyperlink also-hidden="false" description="$ 
> {uiLabelMap.CommonDelete}" target="deleteEmplLeave">
> +                <parameter param-name="partyId"/>
> +                <parameter param-name="leaveTypeId"/>
> +                <parameter param-name="fromDate"/>
> +            </hyperlink>
> +        </field>
> +        <field name="description"><hidden/></field>
> +      </form>
> +    <form name="EditEmplLeave" type="single"  
> target="updateEmplLeaveExt" default-map-name="leaveApp"
>         header-row-style="header-row" default-table-style="basic- 
> table">
> -        <actions>
> -            <set field="insideEmployee" from- 
> field="parameters.insideEmployee"/>
> -        </actions>
> -        <alt-target use-when="insideEmployee != null"  
> target="createEmplLeaveExt"/>
> -        <auto-fields-service service-name="createEmplLeave"/>
> -        <field name="partyId" use-when="emplLeaveCtx!=null"><hidden/ 
> ></field>
> -        <field name="partyId" use-when="emplLeaveCtx==null"><lookup  
> target-form-name="LookupPartyName"/></field>
> -        <field name="leaveTypeId">
> +        <alt-target use-when="leaveApp==null"  
> target="createEmplLeaveExt"/>
> +        <auto-fields-service service-name="updateEmplLeave" map- 
> name="leaveApp"/>
> +        <field name="partyId" tooltip="$ 
> {uiLabelMap.CommonRequired}"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="approverPartyId" tooltip="$ 
> {uiLabelMap.CommonRequired}"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="leaveTypeId" tooltip="$ 
> {uiLabelMap.CommonRequired}">
>             <drop-down allow-empty="true">
>                 <entity-options description="${description}" key- 
> field-name="leaveTypeId" entity-name="EmplLeaveType"/>
>             </drop-down>
>         </field>
> -        <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
> +        <field name="emplLeaveReasonTypeId">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- 
> field-name="emplLeaveReasonTypeId" entity-name="EmplLeaveReasonType"/>
> +            </drop-down>
> +        </field>
> +        <field name="fromDate" tooltip="$ 
> {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- 
> time></field>
> +        <field name="thruDate" tooltip="$ 
> {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- 
> time></field>
> +        <field name="leaveStatus"><hidden value="LEAVE_CREATED"/></ 
> field>
> +        <field name="submitButton" use-when="leaveApp==null"  
> title="${uiLabelMap.CommonCreate}" widget- 
> style="smallSubmit"><submit button-type="button"/></field>
> +        <field name="submitButton" use-when="leaveApp!=null"  
> title="Update" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
> +    </form>
> +   <form name="FindLeaveApprovals" target="FindLeaveApprovals"  
> type="single">
> +        <auto-fields-entity entity-name="EmplLeave" default-field- 
> type="find"/>
> +        <field name="noConditionFind"><hidden value="Y"/></field>
> +        <!--<field name="approverPartyId" use-when="! 
> hasAdminPermission"><hidden value="${approverPartyId}"/></field>-->
> +        <field name="partyId"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="leaveStatus" title="$ 
> {uiLabelMap.HumanResLeaveStatus} ${uiLabelMap.CommonStatus}">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- 
> field-name="statusId" entity-name="StatusItem">
> +                    <entity-constraint name="statusTypeId"  
> operator="equals" value="LEAVE_STATUS"/>
> +                    <entity-order-by field-name="description"/>
> +                </entity-options>
> +            </drop-down>
> +        </field>
> +        <field name="description"><hidden/></field>
> +        <field name="searchButton" widget- 
> style="smallSubmit"><submit button-type="button"/></field>
>     </form>
> -    <form name="ListEmplLeaveTypes" type="multi" title=""  
> target="updateEmplLeaveType"
> -        odd-row-style="alternate-row" header-row-style="header- 
> row-2" default-table-style="basic-table hover-bar">
> +    <form name="ListLeaveApprovals" list-name="listIt" type="list"  
> odd-row-style="alternate-row" header-row-style="header-row-2"  
> default-table-style="basic-table hover-bar">
>         <actions>
> -            <entity-condition entity-name="EmplLeaveType"><order-by  
> field-name="leaveTypeId"/></entity-condition>
> +            <set field="entityName" value="EmplLeave"/>
> +            <service service-name="performFind" result-map="result"  
> result-map-list="listIt">
> +                <field-map field-name="inputFields" from- 
> field="parameters"/>
> +                <field-map field-name="entityName" from- 
> field="entityName"/>
> +            </service>
>         </actions>
> -        <auto-fields-service service-name="updateEmplLeaveType"  
> default-field-type="hidden"/>
> -        <field name="leaveTypeId"><display/></field>
> -        <field name="description" title="$ 
> {uiLabelMap.CommonDescription}"><text/></field>
> -        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  
> widget-style="buttontext">
> -            <hyperlink target="deleteEmplLeaveType" description="$ 
> {uiLabelMap.CommonDelete}" also-hidden="false">
> +		<auto-fields-entity entity-name="EmplLeave" default-field- 
> type="display"/>
> +        <field name="partyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  
> description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ 
> viewprofile" target-type="inter-app" description="${partyId}" link- 
> style="buttontext">
> +                    <parameter param-name="partyId" from- 
> field="partyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="approverPartyId" field-name="partyId">
> +            <display-entity entity-name="PartyNameView"  
> description="${firstName} ${lastName}">
> +                <sub-hyperlink target="/partymgr/control/ 
> viewprofile" target-type="inter-app" description="$ 
> {approverPartyId}" link-style="buttontext">
> +                    <parameter param-name="approverPartyId" from- 
> field="approverPartyId"/>
> +                </sub-hyperlink>
> +            </display-entity>
> +        </field>
> +        <field name="leaveStatus"><display/></field>
> +        <field name="UpdateStatus" title="$ 
> {uiLabelMap.CommonUpdate}" widget-style="buttontext">
> +            <hyperlink target="EditEmplLeaveStatus" description="$ 
> {uiLabelMap.CommonUpdate}" >
> +                <parameter param-name="partyId"/>
> +                <parameter param-name="fromDate"/>
>                 <parameter param-name="leaveTypeId"/>
>             </hyperlink>
>         </field>
> -        <field name="_rowSubmit" title="$ 
> {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> -        <field name="submitButton" title="$ 
> {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ 
> field>
>     </form>
> -    <form name="AddEmplLeaveType" type="single"  
> target="createEmplLeaveType" default-map-name="emplLeaveType"
> -        header-row-style="header-row" default-table-style="basic- 
> table">
> -        <auto-fields-service service-name="createEmplLeaveType"  
> default-field-type="hidden"/>
> -        <field name="leaveTypeId"><text/></field>
> -        <field name="description" title="$ 
> {uiLabelMap.CommonDescription}" tooltip="$ 
> {uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
> -        <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
> +    <form name="EditEmplLeaveStatus" type="single"  
> target="updateEmplLeaveStatus" default-map-name="leaveApp">
> +        <auto-fields-service service-name="updateEmplLeaveStatus"  
> map-name="leaveApp"/>
> +        <field name="partyId"><display/></field>
> +        <field name="approverPartyId"><display/></field>
> +        <field name="leaveTypeId"><display/></field>
> +        <field name="emplLeaveReasonTypeId"><display/></field>
> +        <field name="fromDate"><display/></field>
> +        <field name="thruDate"><display/></field>
> +        <field name="description"><display/></field>
> +        <field name="leaveStatus" title="$ 
> {uiLabelMap.HumanResLeaveStatus} ${uiLabelMap.CommonStatus}">
> +            <drop-down allow-empty="false">
> +                <entity-options description="${description}" key- 
> field-name="statusId" entity-name="StatusItem">
> +                    <entity-constraint name="statusTypeId"  
> operator="equals" value="LEAVE_STATUS"/>
> +                    <entity-order-by field-name="description"/>
> +                </entity-options>
> +            </drop-down>
> +        </field>
> +        <field name="leaveStatus" use-when="leaveApp! 
> = 
> null 
> &amp 
> ;&amp 
> ;leaveApp 
> .getString 
> (&quot 
> ;leaveStatus&quot;).equals(&quot;LEAVE_REJECTED&quot;)"><display></ 
> display></field>
> +        <field name="submitButton" title="Update" widget- 
> style="smallSubmit"><submit button-type="button"/></field>
>     </form>
> </forms>
> \ No newline at end of file
>
> Modified: ofbiz/trunk/applications/humanres/widget/forms/ 
> EmployeeForms.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml  
> Fri Oct 30 10:07:09 2009
> @@ -185,13 +185,22 @@
>         <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
>     </form>
>     <form name="AddEmplLeave" type="single" target="createEmplLeave">
> -        <auto-fields-service service-name="createEmplLeave"/>
> +        <auto-fields-service service-name="updateEmplLeave" map- 
> name="leaveApp"/>
>         <field name="partyId"><hidden/></field>
> -        <field name="leaveTypeId">
> +        <field name="leaveTypeId" tooltip="$ 
> {uiLabelMap.CommonRequired}">
>             <drop-down allow-empty="true">
>                 <entity-options description="${description}" key- 
> field-name="leaveTypeId" entity-name="EmplLeaveType"/>
>             </drop-down>
>         </field>
> +        <field name="emplLeaveReasonTypeId">
> +            <drop-down allow-empty="true">
> +                <entity-options description="${description}" key- 
> field-name="emplLeaveReasonTypeId" entity-name="EmplLeaveReasonType"/>
> +            </drop-down>
> +        </field>
> +        <field name="fromDate" tooltip="$ 
> {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- 
> time></field>
> +        <field name="thruDate" tooltip="$ 
> {uiLabelMap.CommonRequired}"><date-time type="timestamp"></date- 
> time></field>
> +        <field name="leaveStatus"><hidden value="LEAVE_CREATED"/></ 
> field>
> +        <field name="approverPartyId" tooltip="$ 
> {uiLabelMap.CommonRequired}"><lookup target-form- 
> name="LookupPartyName"/></field>
>         <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="smallSubmit"><submit button- 
> type="button"/></field>
>     </form>
>     <form name="ListEmplLeaves" type="list" list-name="listIt"  
> separate-columns="true" target="updateEmplLeave" paginate- 
> target="FindEmplLeaves"
> @@ -204,9 +213,12 @@
>         </actions>
>         <auto-fields-service service-name="updateEmplLeave"/>
>         <field name="partyId"><hidden/></field>
> +        <field name="approverPartyId"><lookup target-form- 
> name="LookupPartyName"/></field>
> +        <field name="leaveStatus"><display/></field>
> +        <field name="emplLeaveReasonTypeId"><display/></field>
>         <field name="leaveTypeId"><display-entity description="$ 
> {description}" entity-name="EmplLeaveType"/></field>
> -        <field name="fromDate"><display/></field>
> -        <field name="submitButton" title="$ 
> {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ 
> field>
> +        <field name="fromDate"></field>
> +        <field name="submitButton" title="$ 
> {uiLabelMap.CommonUpdate}"><submit button-type="button"/></field>
>     </form>
>     <form name="CurrentEmploymentData" default-map- 
> name="employmentData" type="single">
>         <field name="company" entry-name="employment.partyIdFrom">
>
> Modified: ofbiz/trunk/applications/humanres/widget/forms/ 
> GlobalHRSettingForms.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/widget/forms/GlobalHRSettingForms.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/widget/forms/ 
> GlobalHRSettingForms.xml (original)
> +++ ofbiz/trunk/applications/humanres/widget/forms/ 
> GlobalHRSettingForms.xml Fri Oct 30 10:07:09 2009
> @@ -260,4 +260,50 @@
>         <field name="description" title="$ 
> {uiLabelMap.CommonDescription}" tooltip="$ 
> {uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
>         <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
>     </form>
> +    <form name="AddEmplLeaveType" type="single"  
> target="createEmplLeaveType" default-map-name="emplLeaveType"
> +        header-row-style="header-row" default-table-style="basic- 
> table">
> +        <auto-fields-service service-name="createEmplLeaveType"  
> default-field-type="hidden"/>
> +        <field name="leaveTypeId"><text/></field>
> +        <field name="description" title="$ 
> {uiLabelMap.CommonDescription}" tooltip="$ 
> {uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
> +        <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
> +    </form>
> +    <form name="ListEmplLeaveTypes" type="multi" title=""  
> target="updateEmplLeaveType"
> +        odd-row-style="alternate-row" header-row-style="header- 
> row-2" default-table-style="basic-table hover-bar">
> +        <actions>
> +            <entity-condition entity-name="EmplLeaveType"><order-by  
> field-name="leaveTypeId"/></entity-condition>
> +        </actions>
> +        <auto-fields-service service-name="updateEmplLeaveType"  
> default-field-type="hidden"/>
> +        <field name="leaveTypeId"><display/></field>
> +        <field name="description" title="$ 
> {uiLabelMap.CommonDescription}"><text/></field>
> +        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  
> widget-style="buttontext">
> +            <hyperlink target="deleteEmplLeaveType" description="$ 
> {uiLabelMap.CommonDelete}" also-hidden="false">
> +                <parameter param-name="leaveTypeId"/>
> +            </hyperlink>
> +        </field>
> +        <field name="_rowSubmit" title="$ 
> {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> +        <field name="submitButton" title="$ 
> {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ 
> field>
> +    </form>
> +    <form name="AddEmplLeaveReasonType" type="single"  
> target="createEmplLeaveReasonType" default-map- 
> name="emplLeaveReasonType"
> +        header-row-style="header-row" default-table-style="basic- 
> table">
> +        <auto-fields-service service- 
> name="createEmplLeaveReasonType" default-field-type="hidden"/>
> +        <field name="emplLeaveReasonTypeId"><text/></field>
> +        <field name="description" title="$ 
> {uiLabelMap.CommonDescription}" tooltip="$ 
> {uiLabelMap.CommonRequired}" widget-style="required"><text/></field>
> +        <field name="submitButton" title="$ 
> {uiLabelMap.CommonCreate}" widget-style="buttontext"><submit button- 
> type="text-link"/></field>
> +    </form>
> +    <form name="ListEmplLeaveReasonTypes" type="multi" title=""  
> target="updateEmplLeaveReasonType"
> +        odd-row-style="alternate-row" header-row-style="header- 
> row-2" default-table-style="basic-table hover-bar">
> +        <actions>
> +            <entity-condition entity- 
> name="EmplLeaveReasonType"><order-by field- 
> name="emplLeaveReasonTypeId"/></entity-condition>
> +        </actions>
> +        <auto-fields-service service- 
> name="updateEmplLeaveReasonType" default-field-type="hidden"/>
> +        <field name="emplLeaveReasonTypeId"><display/></field>
> +        <field name="description" title="$ 
> {uiLabelMap.CommonDescription}"><text/></field>
> +        <field name="deleteLink" title="${uiLabelMap.CommonDelete}"  
> widget-style="buttontext">
> +            <hyperlink target="deleteEmplLeaveReasonType"  
> description="${uiLabelMap.CommonDelete}" also-hidden="false">
> +                <parameter param-name="emplLeaveReasonTypeId"/>
> +            </hyperlink>
> +        </field>
> +        <field name="_rowSubmit" title="$ 
> {uiLabelMap.CommonSelect}"><hidden value="Y"/></field>
> +        <field name="submitButton" title="$ 
> {uiLabelMap.CommonSubmit}" widget-style="smallSubmit"><submit/></ 
> field>
> +    </form>
> </forms>
>
>


Re: svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Posted by Jacques Le Roux <ja...@les7arts.com>.
I thought it was a type of leave specific to a country ?
Hopefully, Pradeep  will give a better answer.

Jacques

From: "Scott Gray" <sc...@hotwaxmedia.com>
> Could someone explain the EmplLeaveTypes below? I've never heard of  the terms (particularly "Inland") before and a google search 
> for those  exact phrases reveals nothing but OFBiz mailing list results.
>
> Thanks
> Scott
>
> HotWax Media
> http://www.hotwaxmedia.com
>
> On 30/10/2009, at 11:07 PM, jleroux@apache.org wrote:
>
>> Author: jleroux
>> Date: Fri Oct 30 10:07:09 2009
>> New Revision: 831249
>>
>> URL: http://svn.apache.org/viewvc?rev=831249&view=rev
>> Log:
>> A patch from Pradeep Ruhil "HR Leave Enhancement ." (https://issues.apache.org/jira/browse/OFBIZ-2938 ) - OFBIZ-2938
>> In this patch we are doing enhancement in HumanResource Leave Module.
>> Initially we can only create new leave application for a partyId.
>> But there was not functionality available for approval of leave.
>> So in this patch we have given functionality for Leave approval as  well as leave creation.
>> + A better French label
>>
>> Modified:
>>    ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml
>>    ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
>>    ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
>>    ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ HumanResServices.xml
>>    ofbiz/trunk/applications/humanres/servicedef/services.xml
>>    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ controller.xml
>>    ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml
>>    ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
>>    ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml
>>    ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
>>    ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml
>>    ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml
>>    ofbiz/trunk/applications/humanres/widget/forms/ GlobalHRSettingForms.xml
>>
>> Modified: ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml?rev=831249&r1=831248&r2=831249&view=diff
>> = = = = = = = = ======================================================================
>> --- ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml  (original)
>> +++ ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml Fri  Oct 30 10:07:09 2009
>> @@ -101,8 +105,10 @@
>>     <TerminationType description="Fired" hasTable="N"  parentTypeId="" terminationTypeId="FIRE"/>
>>     <TerminationType description="Retirement" hasTable="N"  parentTypeId="" terminationTypeId="RETIRE"/>
>>
>> -    <EmplLeaveType description="Medical" hasTable="N"  parentTypeId="" leaveTypeId="MEDICAL"/>
>> -    <EmplLeaveType description="Casual" hasTable="N"  parentTypeId="" leaveTypeId="CASUAL"/>
>> +    <EmplLeaveType description="Inland Earned Leave" hasTable="N"  parentTypeId="" leaveTypeId="INLAND_EARNED"/>
>> +    <EmplLeaveType description="Inland Loss of Pay" hasTable="N"  parentTypeId="" leaveTypeId="LOSS_OF_PAY"/>
>> +    <EmplLeaveType description="Inland Restricted Holiday"  hasTable="N" parentTypeId="" leaveTypeId="RESTRICTED_HOLIDAY"/>
>> +    <EmplLeaveType description="Inland Special Day Off"  hasTable="N" parentTypeId="" leaveTypeId="SPECIAL_DAY_OFF"/>
>>
>>     <WebSite webSiteId="HR" siteName="Human Resource Manager"  visualThemeSetId="BACKOFFICE"/>
>>
>
> 



Re: svn commit: r831249 - in /ofbiz/trunk/applications/humanres: config/ data/ entitydef/ script/org/ofbiz/humanres/ servicedef/ webapp/humanres/WEB-INF/ widget/ widget/forms/

Posted by Scott Gray <sc...@hotwaxmedia.com>.
Could someone explain the EmplLeaveTypes below? I've never heard of  
the terms (particularly "Inland") before and a google search for those  
exact phrases reveals nothing but OFBiz mailing list results.

Thanks
Scott

HotWax Media
http://www.hotwaxmedia.com

On 30/10/2009, at 11:07 PM, jleroux@apache.org wrote:

> Author: jleroux
> Date: Fri Oct 30 10:07:09 2009
> New Revision: 831249
>
> URL: http://svn.apache.org/viewvc?rev=831249&view=rev
> Log:
> A patch from Pradeep Ruhil "HR Leave Enhancement ." (https://issues.apache.org/jira/browse/OFBIZ-2938 
> ) - OFBIZ-2938
> In this patch we are doing enhancement in HumanResource Leave Module.
> Initially we can only create new leave application for a partyId.
> But there was not functionality available for approval of leave.
> So in this patch we have given functionality for Leave approval as  
> well as leave creation.
> + A better French label
>
> Modified:
>    ofbiz/trunk/applications/humanres/config/HumanResUiLabels.xml
>    ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
>    ofbiz/trunk/applications/humanres/entitydef/entitymodel.xml
>    ofbiz/trunk/applications/humanres/script/org/ofbiz/humanres/ 
> HumanResServices.xml
>    ofbiz/trunk/applications/humanres/servicedef/services.xml
>    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/ 
> controller.xml
>    ofbiz/trunk/applications/humanres/widget/EmplLeaveScreens.xml
>    ofbiz/trunk/applications/humanres/widget/EmployeeScreens.xml
>    ofbiz/trunk/applications/humanres/widget/GlobalHRSettingScreens.xml
>    ofbiz/trunk/applications/humanres/widget/HumanresMenus.xml
>    ofbiz/trunk/applications/humanres/widget/forms/EmplLeaveForms.xml
>    ofbiz/trunk/applications/humanres/widget/forms/EmployeeForms.xml
>    ofbiz/trunk/applications/humanres/widget/forms/ 
> GlobalHRSettingForms.xml
>
> Modified: ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml
> URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml?rev=831249&r1=831248&r2=831249&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml  
> (original)
> +++ ofbiz/trunk/applications/humanres/data/HumanResTypeData.xml Fri  
> Oct 30 10:07:09 2009
> @@ -101,8 +105,10 @@
>     <TerminationType description="Fired" hasTable="N"  
> parentTypeId="" terminationTypeId="FIRE"/>
>     <TerminationType description="Retirement" hasTable="N"  
> parentTypeId="" terminationTypeId="RETIRE"/>
>
> -    <EmplLeaveType description="Medical" hasTable="N"  
> parentTypeId="" leaveTypeId="MEDICAL"/>
> -    <EmplLeaveType description="Casual" hasTable="N"  
> parentTypeId="" leaveTypeId="CASUAL"/>
> +    <EmplLeaveType description="Inland Earned Leave" hasTable="N"  
> parentTypeId="" leaveTypeId="INLAND_EARNED"/>
> +    <EmplLeaveType description="Inland Loss of Pay" hasTable="N"  
> parentTypeId="" leaveTypeId="LOSS_OF_PAY"/>
> +    <EmplLeaveType description="Inland Restricted Holiday"  
> hasTable="N" parentTypeId="" leaveTypeId="RESTRICTED_HOLIDAY"/>
> +    <EmplLeaveType description="Inland Special Day Off"  
> hasTable="N" parentTypeId="" leaveTypeId="SPECIAL_DAY_OFF"/>
>
>     <WebSite webSiteId="HR" siteName="Human Resource Manager"  
> visualThemeSetId="BACKOFFICE"/>
>