from django.contrib import admin
from .models import EmailAccount, EmailMessage, Client, Invoice, Website

@admin.register(EmailAccount)
class EmailAccountAdmin(admin.ModelAdmin):
    list_display = ('name', 'email_address', 'imap_server', 'is_active')
    search_fields = ('name', 'email_address')

@admin.register(Client)
class ClientAdmin(admin.ModelAdmin):
    list_display = ('name', 'email', 'phone', 'company', 'status', 'total_spent', 'created_at')
    list_filter = ('status',)
    search_fields = ('name', 'email', 'phone', 'company')

@admin.register(Website)
class WebsiteAdmin(admin.ModelAdmin):
    list_display = ('name', 'url', 'category', 'regular_price', 'reseller_price')
    search_fields = ('name', 'url')

@admin.register(Invoice)
class InvoiceAdmin(admin.ModelAdmin):
    list_display = ('id', 'client', 'website', 'final_amount', 'payment_method', 'is_paid', 'created_at')
    list_filter = ('is_paid', 'payment_method', 'service_type')
    search_fields = ('website__name', 'client__name', 'client__email')

@admin.register(EmailMessage)
class EmailMessageAdmin(admin.ModelAdmin):
    list_display = ('subject', 'client', 'sender_email', 'account', 'status', 'received_at')
    list_filter = ('status', 'account', 'client')
    search_fields = ('subject', 'sender_email', 'body_text')
    readonly_fields = ('message_id', 'received_at', 'account', 'sender_email', 'sender_name', 'client')
