From 873c2d871a35d0ca5107ac3795682e2736a8e6dd Mon Sep 17 00:00:00 2001 From: Horilla Date: Fri, 13 Dec 2024 15:37:24 +0530 Subject: [PATCH] [UPDT] LEAVE: Add duplicate button in action column of leave restrict page --- .../leave_type_individual_view.html | 508 ++++++++---------- leave/templates/leave/restrict/restrict.html | 17 +- leave/urls.py | 12 + 3 files changed, 237 insertions(+), 300 deletions(-) diff --git a/leave/templates/leave/leave_type/leave_type_individual_view.html b/leave/templates/leave/leave_type/leave_type_individual_view.html index 5af3fce5c..17effadaf 100644 --- a/leave/templates/leave/leave_type/leave_type_individual_view.html +++ b/leave/templates/leave/leave_type/leave_type_individual_view.html @@ -1,301 +1,219 @@ -{% load static %}{% load i18n %} {% load horillafilters %} {% if messages %} -
- {% for message in messages %} -
-
- {{ message }} +{% load static %}{% load i18n %} {% load horillafilters %} +{% if messages %} +
+ {% for message in messages %} +
+
+ {{ message }} +
+
+ {% endfor %}
-
- {% endfor %} -
- + {% endif %} {% if leave_type and request.GET.instances_ids and not compensatory %} -
- +
+ - -
-{% endif %} {% if leave_type %} -
-

- {% trans "Details" %} -

- -
-
-
-
-
- Mary Magdalene -
-
- {{leave_type.name}} -
+ +
+{% endif %} +{% if leave_type %} +
+

+ {% trans "Details" %} +

+ +
+
+
+
+
+ Mary Magdalene +
+
+ {{leave_type.name}} +
+
+
+
+
+
+ {% trans "Period In" %} + {{leave_type.get_period_in_display}} +
+
+ {% trans "Total Days" %} + + {% if leave_type.limit_leave %} + {{leave_type.count}} + {% else %} + {% trans "No Limit" %} + {% endif %} + +
+
+
+ {% trans "Reset" %} + +
+ {{leave_type.reset|yes_no}} +
+ {% if leave_type.reset_based %} +
+ {% trans "Reset Based" %} + {{leave_type.get_reset_based_display}} +
+ {% endif %} + {% if leave_type.reset_month %} +
+ {% trans "Reset Month" %} + {{leave_type.get_reset_month_display}} +
+ {% endif %} + {% if leave_type.reset_day %} +
+ {% trans "Reset Day" %} + {{leave_type.reset_day}} +
+ {% endif %} + {% if leave_type.reset_weekend %} +
+ {% trans "Reset weekend" %} + {{leave_type.get_reset_weekend_display}} +
+ {% endif %} +
+
+ {% trans "Carryforward Type" %} +
+ {{leave_type.get_carryforward_type_display}} +
+
+
+ {% if leave_type.carryforward_max %} +
+ {% trans "Maximum Carryforward" %} + {{leave_type.carryforward_max}} +
+ {% endif %} + {% if leave_type.carryforward_expire_in %} +
+ {% trans "Carryforward Expire in" %} + {{leave_type.carryforward_expire_in}} +
+ {% endif %} + {% if leave_type.carryforward_expire_period %} +
+ {% trans "Carryforward Expire period" %} + {{leave_type.carryforward_expire_period}} +
+ {% endif %} +
+
+ {% trans "Is Paid" %} +
+ {{leave_type.get_payment_display}} +
+
+
+
+
+ {% trans "Require Approval" %} +
+ {{leave_type.get_require_approval_display}} +
+
+
+
+
+ {% trans "Require Attachment" %} +
+ {{leave_type.get_require_attachment_display }} +
+
+
+ +
+
+ {% trans "Exclude company Leaves" %} +
+ {{leave_type.get_exclude_company_leave_display}} +
+
+
+
+
+ {% trans "Exclude Holidays" %} +
+ {{leave_type.get_exclude_holiday_display}} +
+
+
+
+
+ {% trans "Is Encashable" %} +
{{leave_type.is_encashable|yes_no}}
+
+
+
+
+ {% if perms.leave.change_leavetype and perms.leave.add_availableleave and perms.leave.delete_leavetype %} +
+ {% if compensatory %} + + + {% trans "Edit" %} + + {% else %} + + + {% trans "Edit" %} + + {% if not leave_type.is_compensatory_leave %} + + + {% trans "Assign" %} + + {% endif %} + + {% endif %} +
+ {% endif %} +
+
+
+{% else %} +
+ +
+
+ Page not found. 404. +
+ {% trans "There are no leave types to view" %} +
-
-
-
-
- {% trans "Period In" %} - {{leave_type.get_period_in_display}} -
-
- {% trans "Total Days" %} - {% if leave_type.limit_leave %}{{leave_type.count}}{% else %}{% trans "No Limit" %}{% endif %} -
-
-
- {% trans "Reset" %} - -
- {{leave_type.reset|yes_no}} -
- {% if leave_type.reset_based %} -
- {% trans "Reset Based" %} - {{leave_type.get_reset_based_display}} -
- {% endif %} {% if leave_type.reset_month %} -
- {% trans "Reset Month" %} - {{leave_type.get_reset_month_display}} -
- {% endif %} {% if leave_type.reset_day %} -
- {% trans "Reset Day" %} - {{leave_type.reset_day}} -
- {% endif %} {% if leave_type.reset_weekend %} -
- {% trans "Reset weekend" %} - {{leave_type.get_reset_weekend_display}} -
- {% endif %} -
-
- {% trans "Carryforward Type" %} -
- {{leave_type.get_carryforward_type_display}} -
-
-
- {% if leave_type.carryforward_max %} -
- {% trans "Maximum Carryforward" %} - {{leave_type.carryforward_max}} -
- {% endif %} {% if leave_type.carryforward_expire_in %} -
- {% trans "Carryforward Expire in" %} - {{leave_type.carryforward_expire_in}} -
- {% endif %} {% if leave_type.carryforward_expire_period %} -
- {% trans "Carryforward Expire period" %} - {{leave_type.carryforward_expire_period}} -
- {% endif %} -
-
- {% trans "Is Paid" %} -
- {{leave_type.get_payment_display}} -
-
-
-
-
- {% trans "Require Approval" %} -
- {{leave_type.get_require_approval_display}} -
-
-
-
-
- {% trans "Require Attachment" %} -
- {{leave_type.get_require_attachment_display }} -
-
-
- -
-
- {% trans "Exclude company Leaves" %} -
- {{leave_type.get_exclude_company_leave_display}} -
-
-
-
-
- {% trans "Exclude Holidays" %} -
- {{leave_type.get_exclude_holiday_display}} -
-
-
-
-
- {% trans "Is Encashable" %} - {% if leave_type.is_encashable %} -
{% trans "Yes" %}
- {% else %} -
{% trans "No" %}
- {% endif %} -
-
-
-
- {% if perms.leave.change_leavetype and perms.leave.add_availableleave and perms.leave.delete_leavetype %} -
- {% if compensatory %} - - - {% trans "Edit" %} - - {% else %} - - - {% trans "Edit" %} - - {% if not leave_type.is_compensatory_leave %} - - - {% trans "Assign" %} - - {% endif %} - - {% endif %} -
- {% endif %} -
-
-
-{% else %} -
- -
-
- Page not found. 404. -
- {% trans "There are no leave types to view" %} -
-
{% endif %} diff --git a/leave/templates/leave/restrict/restrict.html b/leave/templates/leave/restrict/restrict.html index 23f643b89..e7b921910 100644 --- a/leave/templates/leave/restrict/restrict.html +++ b/leave/templates/leave/restrict/restrict.html @@ -64,8 +64,8 @@
{% trans "Description" %}
{% trans "Company" %}
- {% if perms.leave.change_restrictleave or perms.leave.delete_restrictleave %} -
{% trans "Actions" %}
+ {% if perms.leave.add_restrictleave or perms.leave.change_restrictleave or perms.leave.delete_restrictleave %} +
{% trans "Actions" %}
{% endif %}
@@ -118,8 +118,8 @@
{{day.company_id}}
- {% if perms.leave.change_restrictleave or perms.leave.delete_restrictleave %} -
+ {% if perms.leave.add_restrictleave or perms.leave.change_restrictleave or perms.leave.delete_restrictleave %} +
{% if perms.leave.change_restrictleave %} {% endif %} + {% if perms.leave.add_restrictleave %} + + + + {% endif %} {% if perms.leave.delete_restrictleave %} + > {% endif %} diff --git a/leave/urls.py b/leave/urls.py index cb2148870..9b754efe2 100644 --- a/leave/urls.py +++ b/leave/urls.py @@ -2,7 +2,9 @@ from django import views from django.apps import apps from django.urls import path +from base.views import object_duplicate from employee.models import Employee +from leave.forms import RestrictLeaveForm from . import models, views @@ -354,6 +356,16 @@ urlpatterns = [ views.cut_available_leave, name="leave-cut-penalty", ), + path( + "duplicate-restrict-leave//", + object_duplicate, + name="duplicate-restrict-leave", + kwargs={ + "model": models.RestrictLeave, + "form": RestrictLeaveForm, + "template": "leave/restrict/restrict_form.html", + }, + ), ] if apps.is_installed("recruitment"):