from django.contrib import admin

from apps.cms.models import (
    BlogPost,
    CompanyProfileSection,
    ContactInquiry,
    GalleryItem,
    LeadershipProfile,
    ShowcaseVideo,
    TeamMember,
)


@admin.register(BlogPost)
class BlogPostAdmin(admin.ModelAdmin):
    list_display = ("title", "category", "published_on", "featured", "is_published")
    list_filter = ("category", "featured", "is_published")
    search_fields = ("title", "excerpt")
    prepopulated_fields = {"slug": ("title",)}


@admin.register(GalleryItem)
class GalleryItemAdmin(admin.ModelAdmin):
    list_display = ("title", "subject", "code", "is_published")
    list_filter = ("subject", "is_published")


@admin.register(ShowcaseVideo)
class ShowcaseVideoAdmin(admin.ModelAdmin):
    list_display = ("title", "category", "featured", "is_published")
    list_filter = ("category", "featured")


@admin.register(LeadershipProfile)
class LeadershipProfileAdmin(admin.ModelAdmin):
    list_display = ("role", "name", "sort_order", "is_published")


@admin.register(TeamMember)
class TeamMemberAdmin(admin.ModelAdmin):
    list_display = ("name", "position", "sort_order", "is_published")
    search_fields = ("name", "position")


@admin.register(CompanyProfileSection)
class CompanyProfileSectionAdmin(admin.ModelAdmin):
    list_display = ("title", "code", "sort_order", "is_published")


@admin.register(ContactInquiry)
class ContactInquiryAdmin(admin.ModelAdmin):
    list_display = ("name", "email", "interest", "status", "created_at")
    list_filter = ("interest", "status")
    search_fields = ("name", "email", "message")
    readonly_fields = ("created_at", "updated_at")
