from django.db import models

class Member(models.Model):
    ROLE_CHOICES = [
        ('STAFF', 'Staff'),
        ('BOARD', 'Board Member'),
        ('YOUTH_VOLUNTEER', 'Youth Volunteer'),
    ]

    STATUS_CHOICES = [
        ('ACTIVE', 'Active'),
        ('INACTIVE', 'Inactive'),
    ]

    full_name = models.CharField(max_length=255)
    email = models.EmailField(unique=True)
    phone = models.CharField(max_length=20, blank=True, null=True)
    role = models.CharField(max_length=20, choices=ROLE_CHOICES, default='STAFF')
    status = models.CharField(max_length=10, choices=STATUS_CHOICES, default='ACTIVE')
    join_date = models.DateField(auto_now_add=True)
    notes = models.TextField(blank=True, null=True)

    def __str__(self):
        return f"{self.full_name} ({self.get_role_display()})"

    class Meta:
        ordering = ['-join_date']