from django.contrib import admin
from .models import StudyDestination, Program, StudentCounselingLead, StudyBlog

@admin.register(StudyDestination)
class StudyDestinationAdmin(admin.ModelAdmin):
    list_display = ('name', 'is_active', 'post_study_work_visa')
    prepopulated_fields = {'slug': ('name',)}
    list_editable = ('is_active',)
    fieldsets = (
        ('Destination Details', {
            'fields': ('name', 'slug', 'banner_image', 'short_intro', 'detailed_guide')
        }),
        ('Fast Facts', {
            'fields': ('average_living_cost', 'post_study_work_visa', 'is_active')
        }),
        ('🚀 SEO Settings', {
            'classes': ('collapse',),
            'fields': ('meta_title', 'meta_description', 'meta_keywords')
        }),
    )
    
@admin.register(StudyBlog)
class StudyBlogAdmin(admin.ModelAdmin):
    list_display = ('title', 'category', 'is_published', 'views_count', 'created_at')
    list_filter = ('category', 'is_published', 'related_destination')
    search_fields = ('title', 'content')
    prepopulated_fields = {'slug': ('title',)}
    list_editable = ('is_published',)
    
    fieldsets = (
        ('Blog Info', {
            'fields': ('title', 'slug', 'category', 'author', 'related_destination')
        }),
        ('Content', {
            'fields': ('featured_image', 'short_summary', 'content', 'reading_time')
        }),
        ('Status', {
            'fields': ('is_published', 'views_count')
        }),
        ('🚀 SEO Settings', {
            'classes': ('collapse',),
            'fields': ('meta_title', 'meta_description', 'meta_keywords')
        }),
    )

@admin.register(Program)
class ProgramAdmin(admin.ModelAdmin):
    # ✅ University is removed, replaced by destination
    list_display = ('name', 'destination', 'level', 'tuition_fee', 'is_active')
    list_filter = ('level', 'destination', 'is_active')
    search_fields = ('name', 'internal_institute_name')
    
    fieldsets = (
        ('Course Information', {
            'fields': ('name', 'slug', 'destination', 'level', 'duration', 'tuition_fee', 'application_deadline')
        }),
        ('🤫 Internal Details (Hidden from Website)', {
            'fields': ('internal_institute_name',)
        }),
        ('Requirements & Details', {
            'fields': ('ielts_requirement', 'academic_requirement', 'description', 'is_active')
        }),
        ('📦 Package Details (What is included?)', {
            'fields': ('inclusions', 'exclusions')
        }),
        ('🚀 SEO Settings', {
            'classes': ('collapse',),
            'fields': ('meta_title', 'meta_description', 'meta_keywords')
        }),
    )

@admin.register(StudentCounselingLead)
class StudentCounselingLeadAdmin(admin.ModelAdmin):
    list_display = ('student_name', 'phone', 'preferred_course', 'preferred_country', 'status', 'created_at')
    list_filter = ('status', 'preferred_country', 'created_at')
    search_fields = ('student_name', 'email', 'phone')
    list_editable = ('status',)
    readonly_fields = ('created_at',)