53 lines
1.5 KiB
Python
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"
|