from django.contrib import admin
from .models import Course, CourseModule, ClassList, CourseReview
# Register your models here.


# Inline Setup
class CourseModuleInline(admin.TabularInline):
    model = CourseModule
    extra = 1 # Default row
    fields = ('no', 'topic')
    can_delete = True

class ClassListInline(admin.TabularInline):
    model = ClassList
    extra = 1
    fields = ('class_no', 'topic')
    can_delete = True

class CourseReviewInline(admin.TabularInline):
    model = CourseReview
    extra = 1
    fields = ('reviewer_name', 'review_type', 'rating', 'comment')
    can_delete = True


@admin.register(Course)
class CourseAdmin(admin.ModelAdmin):
    list_display = ('title', 'category', 'main_price', 'discount_percent', 'rating')
    list_filter = ('category',)
    search_fields = ('title', 'category')
    
   
    inlines = [CourseModuleInline, ClassListInline, CourseReviewInline]
    

    fieldsets = [
        ('Basic Information', {
            'fields': ('title', 'category', 'img', 'badge', 'rating', 'student_count')
        }),
        ('Pricing', {
            'fields': ('main_price', 'discount_percent')
        }),
        ('Course Schedule & Duration', {
            'fields': ('weekly_class', 'duration', 'total_class', 'class_duration')
        }),
        ('Extra Contents & Media', {
            'fields': ('short_description', 'course_related_video', 'student_success_video', 'workshop_video')
        }),
    ]