[FIX] OFFBOARDING: Fixed offboarding permission issues for normal employees
This commit is contained in:
@@ -106,10 +106,12 @@
|
||||
{% if perms.offboarding.view_offboarding or request.user.employee_get|is_in_offboarding:offboarding.offboarding %}
|
||||
<div class="oh-tabs__content" id="Offboarding{{ offboarding.offboarding.id }}">
|
||||
{% if perms.offboarding.add_offboardingstage or request.user.employee_get|any_manager %}
|
||||
<div class="d-flex flex-row-reverse">
|
||||
<a hx-get="{% url 'create-offboarding-stage' %}?offboarding_id={{offboarding.offboarding.id}}" style="width: 100px;" hx-target="#objectDetailsModalTarget" data-toggle="oh-modal-toggle" data-target="#objectDetailsModal" class="mb-3 oh-btn oh-btn--secondary">
|
||||
<ion-icon name="add-outline"></ion-icon>
|
||||
{% trans 'Stage' %}
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% include "offboarding/stage/stages.html" %}
|
||||
</div>
|
||||
|
||||
@@ -72,6 +72,7 @@
|
||||
<div class="oh-sticky-table__th text-center">{% trans "Task Status" %}</div>
|
||||
<div class="oh-sticky-table__th text-center" style="width: 250px;">{% trans "Actions" %}</div>
|
||||
{% for task in stage.grouper.offboardingtask_set.all %}
|
||||
{% if request.user.employee_get.offboardingemployee.employeetask_set.all|is_employee_tasks:task or perms.offboarding.add_offboardingtask or request.user.employee_get|any_manager %}
|
||||
<div class="oh-sticky-table__th" style="width: 200px;" >
|
||||
<div class="d-flex justify-content-between align-items-center">
|
||||
<span>
|
||||
@@ -96,14 +97,15 @@
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
<div class="oh-sticky-table__th" style="width: 120px;">
|
||||
{% if perms.offboarding.add_offboardingtask or request.user.employee_get|any_manager %}
|
||||
{% if perms.offboarding.add_offboardingtask or request.user.employee_get|any_manager %}
|
||||
<div class="oh-sticky-table__th" style="width: 120px;">
|
||||
<button class="oh-checkpoint-badge text-success" data-toggle="oh-modal-toggle" data-target="#objectDetailsModal" hx-get="{% url "offboarding-add-task" %}?stage_id={{stage.grouper.id}}" hx-target="#objectDetailsModalTarget">
|
||||
{% trans "Add Task" %}
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="oh-sticky-table__tbody" id="tableBody{{stage.grouper.id}}" data-stage-id="{{stage.grouper.id}}" data-archive-stage="{{stage.grouper.is_archived_stage|lower}}" data-offboarding-id="{{offboarding.offboarding.id}}">
|
||||
|
||||
@@ -154,8 +154,8 @@
|
||||
</div>
|
||||
</div>
|
||||
{% for task in stage.grouper.offboardingtask_set.all %}
|
||||
<div class="oh-sticky-table__td">
|
||||
{% if task|have_task:employee %}
|
||||
{% if task|have_task:employee %}
|
||||
<div class="oh-sticky-table__td">
|
||||
{% for assinged_tasks in employee|get_assigned_task:task %}
|
||||
<select
|
||||
hx-get="{% url "update-task-status" %}?stage_id={{stage.grouper.id}}&employee_ids={{employee.id}}&task_id={{assinged_tasks.task_id.id}}"
|
||||
@@ -174,8 +174,11 @@
|
||||
<option value="{{ assinged_task.0 }}">{{ assinged_task.1 }}</option>
|
||||
{% endif %} {% endfor %}
|
||||
</select>
|
||||
{% endfor %} {% else %}
|
||||
{% if perms.offboarding.add_offboardingtask or request.user.employee_get|any_manager %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% if perms.offboarding.add_offboardingtask or request.user.employee_get|any_manager %}
|
||||
<div class="oh-sticky-table__td">
|
||||
<button
|
||||
hx-get="{% url "offboarding-assign-task" %}?employee_ids={{employee.id}}&task_id={{task.id}}"
|
||||
hx-target="#offboardingBody{{offboarding.offboarding.id}}"
|
||||
@@ -185,11 +188,13 @@
|
||||
>
|
||||
{% trans 'Assign' %}
|
||||
</button>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% if perms.offboarding.add_offboardingtask or request.user.employee_get|any_manager %}
|
||||
<div class="oh-sticky-table__td"></div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
@@ -143,3 +143,16 @@ def completed_tasks(tasks):
|
||||
This method is used to to check any stage manager
|
||||
"""
|
||||
return tasks.filter(status="completed").count()
|
||||
|
||||
@register.filter("is_employee_tasks")
|
||||
def is_employee_tasks(employee_tasks,task):
|
||||
"""
|
||||
This method is used to to check any stage manager
|
||||
"""
|
||||
try:
|
||||
if task.title in employee_tasks.values_list("task_id__title", flat=True):
|
||||
print("true")
|
||||
return True
|
||||
return False
|
||||
except:
|
||||
return False
|
||||
Reference in New Issue
Block a user