import django_filters
from django_filters import CharFilter
from .models import Person

class StudentFilter(django_filters.FilterSet):
    admission_no = CharFilter(field_name='username', lookup_expr='icontains', label="Admission No")
    # classe = CharFilter(field_name='classe', lookup_expr='icontains', label="Class")
    first_name = CharFilter(field_name='first_name', lookup_expr='icontains', label="Surname")
    # last_name = CharFilter(field_name='last_name', lookup_expr='icontains', label="Other Names")
    class Meta:
        model = Person
        fields = []

    # def __init__(self, *args, **kwargs):
    #     super(StudentFilter, self).__init__(*args, **kwargs)
    #     self.filters['username'].label="Admission Number"
    #     self.filters['classe'].label="Class"
    #     self.filters['first_name'].label="Surname"
    #     self.filters['last_name'].label="Other Names"



class StaffFilter(django_filters.FilterSet):
    username = CharFilter(field_name='username', lookup_expr='icontains', label="Staff Number")
    first_name = CharFilter(field_name='first_name', lookup_expr='icontains', label="Surname")
    last_name = CharFilter(field_name='first_name', lookup_expr='icontains', label="Other Names")
    class Meta:
        model = Person
        fields = []

    # def __init__(self, *args, **kwargs):
    #     super(StaffFilter, self).__init__(*args, **kwargs)
    #     self.filters['username'].label="Staff Number"
    #     self.filters['first_name'].label="Surname"
    #     self.filters['last_name'].label="Other Names"

class StudentFilter2(django_filters.FilterSet):
    username = CharFilter(field_name='username', lookup_expr='icontains', label="Admission Number")
    first_name = CharFilter(field_name='first_name', lookup_expr='icontains', label="First Name")
    last_name = CharFilter(field_name='first_name', lookup_expr='icontains', label="Last Name")
    # class Meta:
    #     model = Person
    #     fields = ['classe']
    #
    # def __init__(self, *args, **kwargs):
    #     super(StudentFilter2, self).__init__(*args, **kwargs)
    #     self.filters['classe'].label="Class"
