from django.contrib import admin
from .models import Lead, LeadContact, Task


class LeadContactInline(admin.TabularInline):
    model = LeadContact
    extra = 1


class TaskInline(admin.TabularInline):
    model = Task
    extra = 0


@admin.register(Lead)
class LeadAdmin(admin.ModelAdmin):
    list_display = ['company_name', 'vertical', 'city', 'state', 'status', 'assigned_to', 'research_date', 'created_at']
    list_filter = ['status', 'vertical', 'state', 'created_at']
    search_fields = ['company_name', 'vertical', 'city', 'notes']
    inlines = [LeadContactInline, TaskInline]


@admin.register(LeadContact)
class LeadContactAdmin(admin.ModelAdmin):
    list_display = ['name', 'lead', 'role', 'phone', 'email']
    search_fields = ['name', 'email', 'phone']


@admin.register(Task)
class TaskAdmin(admin.ModelAdmin):
    list_display = ['title', 'lead', 'priority', 'status', 'due_date', 'assigned_to', 'created_at']
    list_filter = ['priority', 'status', 'due_date']
    search_fields = ['title', 'lead__company_name']
