from django.contrib import admin
from .models import User, Partner, PartnerAdmin

class PartnerAdminInline(admin.TabularInline):
    model = PartnerAdmin
    extra = 1

@admin.register(User)
class UserAdmin(admin.ModelAdmin):
    list_display = ('username', 'email', 'role', 'is_active')
    list_filter = ('role', 'is_active')
    search_fields = ('username', 'email')
    fieldsets = (
        (None, {'fields': ('username', 'email', 'password')}),
        ('Permissions', {'fields': ('role', 'is_active', 'is_staff', 'is_superuser')}),
        ('Important dates', {'fields': ('last_login', 'date_joined')}),
    )

@admin.register(Partner)
class PartnerModelAdmin(admin.ModelAdmin):
    list_display = ('name', 'managed_by', 'created_at')
    search_fields = ('name',)
    inlines = [PartnerAdminInline]

@admin.register(PartnerAdmin)
class PartnerAdminModelAdmin(admin.ModelAdmin):
    list_display = ('user', 'partner')
    search_fields = ('user__username', 'partner__name')
