[UPDT] LEAVE: Updated leave type admin site register
This commit is contained in:
@@ -7,6 +7,8 @@ from django.apps import apps
|
||||
from django.contrib import admin
|
||||
from simple_history.admin import SimpleHistoryAdmin
|
||||
|
||||
from leave.forms import LeaveTypeAdminForm
|
||||
|
||||
from .models import (
|
||||
AvailableLeave,
|
||||
LeaveAllocationRequest,
|
||||
@@ -19,8 +21,13 @@ from .models import (
|
||||
RestrictLeave,
|
||||
)
|
||||
|
||||
|
||||
class LeaveTypeAdmin(admin.ModelAdmin):
|
||||
form = LeaveTypeAdminForm
|
||||
|
||||
|
||||
# Register your models here.
|
||||
admin.site.register(LeaveType)
|
||||
admin.site.register(LeaveType, LeaveTypeAdmin)
|
||||
admin.site.register(LeaveRequest)
|
||||
admin.site.register(AvailableLeave)
|
||||
admin.site.register(LeaveAllocationRequest, SimpleHistoryAdmin)
|
||||
|
||||
@@ -93,6 +93,22 @@ class ConditionForm(forms.ModelForm):
|
||||
pass
|
||||
|
||||
|
||||
class LeaveTypeAdminForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = LeaveType
|
||||
fields = "__all__"
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
if f := self.fields.get("company_id"):
|
||||
from horilla_widgets.forms import default_select_option_template
|
||||
|
||||
w = getattr(f.widget, "widget", f.widget)
|
||||
if isinstance(w, forms.Select):
|
||||
w.option_template_name = default_select_option_template
|
||||
|
||||
|
||||
class LeaveTypeForm(ConditionForm):
|
||||
|
||||
employee_id = HorillaMultiSelectField(
|
||||
|
||||
@@ -248,7 +248,7 @@ class LeaveType(HorillaModel):
|
||||
)
|
||||
is_compensatory_leave = models.BooleanField(default=False)
|
||||
company_id = models.ForeignKey(
|
||||
Company, null=True, editable=False, on_delete=models.PROTECT
|
||||
Company, null=True, blank=True, on_delete=models.PROTECT
|
||||
)
|
||||
objects = HorillaCompanyManager(related_company_field="company_id")
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<button
|
||||
class="oh-btn oh-btn--light-bkg w-50" disabled>
|
||||
<ion-icon name="create-outline" ></ion-icon>
|
||||
</button></td>
|
||||
</button>
|
||||
{% endif %}
|
||||
{% if instance.status == 'requested' %}
|
||||
<button class="oh-btn oh-btn--danger-outline oh-btn--light-bkg w-50" id="delete-link"
|
||||
@@ -28,7 +28,7 @@
|
||||
{% else %}
|
||||
<button class="oh-btn oh-btn--light-bkg w-50" disabled>
|
||||
<ion-icon name="trash-outline"></ion-icon>
|
||||
</button></td>
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
{% load i18n %}
|
||||
{% include 'filter_tags.html' %}
|
||||
|
||||
<style>
|
||||
.oh-scrollable-container {
|
||||
overflow-x: auto;
|
||||
@@ -16,26 +18,28 @@
|
||||
border-radius:15px;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
<div class="oh-scrollable-container oh-wrapper mb-3">
|
||||
<div class="oh-layout--grid-3 mt-2 mb-2">
|
||||
{% for user_leave in user_leaves %}
|
||||
<div class="oh-kanban-card" id="requestCreateCard" data-toggle="oh-modal-toggle" data-target="#objectCreateModal"
|
||||
hx-get="{% url 'user-request' user_leave.leave_type_id.id %}" hx-target="#objectCreateModalTarget">
|
||||
<div class="oh-kanban-card__avatar">
|
||||
<div class="oh-kanban-card__profile-container">
|
||||
<img src="{{user_leave.leave_type_id.get_avatar }}" class="oh-kanban-card__profile-image"
|
||||
alt="Leave Icon" />
|
||||
<div class="oh-kanban-card" id="requestCreateCard" data-toggle="oh-modal-toggle" data-target="#objectCreateModal"
|
||||
hx-get="{% url 'user-request' user_leave.leave_type_id.id %}" hx-target="#objectCreateModalTarget">
|
||||
<div class="oh-kanban-card__avatar">
|
||||
<div class="oh-kanban-card__profile-container">
|
||||
<img src="{{user_leave.leave_type_id.get_avatar }}" class="oh-kanban-card__profile-image"
|
||||
alt="Leave Icon" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="oh-kanban-card__details mt-2">
|
||||
<span class="oh-kanban-card__title">{{user_leave.leave_type_id|truncatechars:20}}</span>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Available Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.available_days}} {% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Carryforward Leave Days" %} :
|
||||
{{user_leave.carryforward_days}}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.total_leave_days}}{% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave taken" %} :{{user_leave.leave_taken}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="oh-kanban-card__details mt-2">
|
||||
<span class="oh-kanban-card__title">{{user_leave.leave_type_id|truncatechars:20}}</span>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Available Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.available_days}} {% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Carryforward Leave Days" %} :
|
||||
{{user_leave.carryforward_days}}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave Days" %} : {% if user_leave.leave_type_id.limit_leave %}{{user_leave.total_leave_days}}{% else %}{% trans "No Limit" %}{% endif %}</span><br>
|
||||
<span class="oh-kanban-card__subtitle">{% trans "Total Leave taken" %} :{{user_leave.leave_taken}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user