from django.contrib import admin

# Register your models here.
from .models import Category, Tag, Blog, Comment, Subscriber

# Register the Category model
@admin.register(Category)
class CategoryAdmin(admin.ModelAdmin):
    list_display = ('name', 'description', 'created_at')
    search_fields = ('name',)

# Register the Tag model
@admin.register(Tag)
class TagAdmin(admin.ModelAdmin):
    list_display = ('name', 'created_at')
    search_fields = ('name',)

# Register the Blog model
@admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
    list_display = ("title", "slug", "category", "author", "created_at", "updated_at", "views_count", "comments_count")
    list_filter = ("category", "tags", "author")
    search_fields = ("title", "slug", "meta", "content")
    prepopulated_fields = {"slug": ("title",)}
    exclude = ("views_count", "comments_count")
    readonly_fields = ("views_count", "comments_count", "created_at", "updated_at")

# Register the Comment model
@admin.register(Comment)
class CommentAdmin(admin.ModelAdmin):
    list_display = ('name', 'email', 'blog', 'content', 'created_at')
    search_fields = ('name', 'email', 'content')
    list_filter = ('blog',)

# Register the Subscriber model
@admin.register(Subscriber)
class SubscriberAdmin(admin.ModelAdmin):
    list_display = ('email', 'subscribed_at')
    search_fields = ('email',)
