Files
eumi_v4/users/admin.py
T

53 lines
1.5 KiB
Python

from django.contrib import admin
from django.utils.html import format_html
from django.urls import reverse
from simple_history.admin import SimpleHistoryAdmin
from .models import Directie, Serviciu, Compartiment, Employee
@admin.register(Directie)
class DirectieAdmin(SimpleHistoryAdmin):
list_display = ("name",)
search_fields = ("name",)
@admin.register(Serviciu)
class ServiciuAdmin(SimpleHistoryAdmin):
list_display = ("name", "directie")
list_filter = ("directie",)
search_fields = ("name",)
@admin.register(Compartiment)
class CompartimentAdmin(SimpleHistoryAdmin):
list_display = ("name", "directie", "serviciu")
list_filter = ("directie", "serviciu")
search_fields = ("name",)
@admin.register(Employee)
class EmployeeAdmin(SimpleHistoryAdmin):
list_display = (
"name",
"username",
"role",
"email",
"directie",
"serviciu",
"compartiment",
"print_inventory_button",
)
list_filter = ("directie", "serviciu", "compartiment")
search_fields = ("name", "username", "email")
def print_inventory_button(self, obj):
if obj.pk:
url = reverse("equipment:print_inventory", args=[obj.pk])
return format_html(
'<a class="button" href="{}" target="_blank" style="background-color: #417690; color: white; padding: 5px 10px; border-radius: 4px; text-decoration: none;">🖨️ Printează Fișa</a>',
url,
)
return "-"
print_inventory_button.short_description = "Acțiune"