From dbadbe23cda44ac85ad5a62b9a4c989f8cefb833 Mon Sep 17 00:00:00 2001 From: Horilla Date: Sat, 3 Feb 2024 14:03:12 +0530 Subject: [PATCH] [UPDT] EMPLOYEE: Employee archive method by checking related models for employee --- employee/models.py | 9 ++--- .../employee_personal_info/employee_card.html | 7 ++-- .../employee_personal_info/employee_list.html | 10 +++--- employee/templates/related_models.html | 33 +++++++++++++++++++ static/index/index.js | 14 +++++++- 5 files changed, 60 insertions(+), 13 deletions(-) create mode 100644 employee/templates/related_models.html diff --git a/employee/models.py b/employee/models.py index cb0c32081..73028e63f 100644 --- a/employee/models.py +++ b/employee/models.py @@ -4,6 +4,7 @@ models.py This module is used to register models for employee app """ + import datetime as dtime from datetime import date, datetime, timedelta import json @@ -265,14 +266,14 @@ class Employee(models.Model): related_models = [] if reporting_manager_query.exists(): related_models.append("Reporting manager") + if recruitment_manager_query.exists(): + related_models.append("Recruitment manager") if recruitment_stage_query.exists(): related_models.append("Recruitment stage manager") if onboarding_stage_query.exists(): related_models.append("Onboarding stage manager") if onboarding_task_query.exists(): related_models.append("Onboarding task manager") - if recruitment_manager_query.exists(): - related_models.append("Recruitment manager") related_models_dict = {"related_models": related_models} return related_models_dict @@ -281,7 +282,7 @@ class Employee(models.Model): last_name = ( self.employee_last_name if self.employee_last_name is not None else "" ) - badge_id = ((f"({self.badge_id})") if self.badge_id is not None else "") + badge_id = (f"({self.badge_id})") if self.badge_id is not None else "" return f"{self.employee_first_name} {last_name} {badge_id}" def check_online(self): @@ -709,4 +710,4 @@ class EmployeeGeneralSetting(models.Model): """ badge_id_prefix = models.CharField(max_length=5, default="PEP") - company_id = models.ForeignKey(Company,null=True,on_delete=models.CASCADE) + company_id = models.ForeignKey(Company, null=True, on_delete=models.CASCADE) diff --git a/employee/templates/employee_personal_info/employee_card.html b/employee/templates/employee_personal_info/employee_card.html index 16b575159..87fce1d89 100644 --- a/employee/templates/employee_personal_info/employee_card.html +++ b/employee/templates/employee_personal_info/employee_card.html @@ -15,6 +15,7 @@ {% trans "Online" %} +
{% if messages %}
{% for message in messages %} @@ -84,9 +85,9 @@ {% if perms.employee.delete_employee %}
  • {% if emp.is_active %} - - {% trans "Archive" %} - + + {% trans "Archive" %} + {% else %} {% trans "Un-Archive" %} diff --git a/employee/templates/employee_personal_info/employee_list.html b/employee/templates/employee_personal_info/employee_list.html index 90bd9bb4f..c251ad13b 100644 --- a/employee/templates/employee_personal_info/employee_list.html +++ b/employee/templates/employee_personal_info/employee_list.html @@ -70,7 +70,7 @@
  • @@ -81,7 +81,7 @@
    {% trans "Phone" %}
    {% endif %}
    @@ -93,7 +93,7 @@
    {% trans "Work Type" %}
    {% trans "Job Role" %}
    @@ -102,9 +102,9 @@
    {% trans "Company" %}
    {% trans "Work Email" %}
    {% trans "Date of Joining" %}
    diff --git a/employee/templates/related_models.html b/employee/templates/related_models.html new file mode 100644 index 000000000..f0fdafd27 --- /dev/null +++ b/employee/templates/related_models.html @@ -0,0 +1,33 @@ +{% load i18n %} + diff --git a/static/index/index.js b/static/index/index.js index 34c0c4acb..d3ac024f1 100644 --- a/static/index/index.js +++ b/static/index/index.js @@ -60,7 +60,19 @@ window.confirm = function (message) { if (event.target.tagName.toLowerCase() === "form") { event.target.submit(); } else if (event.target.tagName.toLowerCase() === "a") { - window.location.href = event.target.href; + if (event.target.href) { + window.location.href = event.target.href; + } else { + var path = event.target["htmx-internal-data"].path; + var verb = event.target["htmx-internal-data"].verb; + var hxTarget = $(event.target).attr("hx-target"); + if (verb === "post") { + // hx.post(path) + htmx.ajax("POST", path, hxTarget); + } else { + htmx.ajax("GET", path, hxTarget); + } + } } } else { }