"""
inventory/permissions_admin.py
─────────────────────────────────
Plain-Python group-check helpers for use inside ModelAdmin views. DRF's
permission classes (inventory/permissions.py) aren't usable there — these
mirror the same inventory_managers / finance_managers / superuser groups.
"""


def is_inventory_manager(user) -> bool:
    if not (user and user.is_authenticated and user.is_staff):
        return False
    if user.is_superuser:
        return True
    return user.groups.filter(name="inventory_managers").exists()


def is_finance_manager(user) -> bool:
    if not (user and user.is_authenticated and user.is_staff):
        return False
    if user.is_superuser:
        return True
    return user.groups.filter(name="finance_managers").exists()


def is_inventory_or_finance_manager(user) -> bool:
    return is_inventory_manager(user) or is_finance_manager(user)
