"""
Audit Log Admin.
"""
from django.contrib import admin

from .models import AuditLog


@admin.register(AuditLog)
class AuditLogAdmin(admin.ModelAdmin):
    list_display = [
        'created_at', 'action', 'resource_type', 'resource_repr',
        'user_email', 'module', 'ip_address',
    ]
    list_filter = ['action', 'resource_type', 'module']
    search_fields = ['resource_repr', 'user_email', 'resource_id']
    readonly_fields = [
        'id', 'user', 'user_email', 'user_display_name', 'action',
        'resource_type', 'resource_id', 'resource_repr', 'module',
        'changes', 'ip_address', 'user_agent', 'metadata',
        'tenant_schema', 'created_at',
    ]
    ordering = ['-created_at']
    date_hierarchy = 'created_at'

    def has_add_permission(self, request):
        return False

    def has_change_permission(self, request, obj=None):
        return False

    def has_delete_permission(self, request, obj=None):
        return False
