# (c) cavaliba.com - home - admin.py

from django.contrib import admin

from app_home.models import CavalibaAPIStat, CavalibaConfiguration, CavalibaEvent


@admin.register(CavalibaConfiguration)
class CavalibaConfigurationAdmin(admin.ModelAdmin):
    list_display = ("appname", "page", "order", "keyname", "value", "description", "id")
    ordering = ["appname", "page", "order"]
    list_filter = ["appname"]


#   search_fields = ['name', 'amount','status']


@admin.register(CavalibaEvent)
class CavalibaEventAdmin(admin.ModelAdmin):
    list_display = (
        "created",
        "level",
        "channel",
        "actor",
        "action",
        "outcome",
        "reason",
        "target_type",
        "target_id",
        "message",
    )
    ordering = ["-id"]
    list_filter = ["level", "outcome", "channel"]
    search_fields = ["action", "actor", "target_id", "request_id"]


@admin.register(CavalibaAPIStat)
class CavalibaAPIStatAdmin(admin.ModelAdmin):
    list_display = ("keyname", "last_success", "success_count", "last_error", "error_count")
    ordering = ["keyname"]
    # list_filter = ["app","status"]
    # search_fields = ['name', 'amount','status']
