Skip to content

Commit

Permalink
Re-use functions instead of duplicating code
Browse files Browse the repository at this point in the history
  • Loading branch information
Kurocon authored Mar 18, 2024
1 parent 1b55a80 commit 8c106c9
Showing 1 changed file with 5 additions and 12 deletions.
17 changes: 5 additions & 12 deletions amelie/members/managers.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,24 +8,14 @@


class PersonManager(models.Manager):
def members(self):
return super(PersonManager, self).get_queryset().filter(
Q(membership__year=current_association_year()),
Q(membership__ended__isnull=True) | Q(membership__ended__gt=datetime.date.today())
)

def members_at(self, dt):
return super(PersonManager, self).get_queryset().filter(
Q(membership__year=association_year(dt)),
Q(membership__ended__isnull=True) | Q(membership__ended__gt=dt)
)

def active_members(self):
return self.members().filter(
Q(function__begin__isnull=False),
Q(function__end__isnull=True) | Q(function__end__gt=datetime.date.today()),
Q(function__committee__abolished__isnull=True) | Q(function__committee__abolished__gt=datetime.date.today())
).distinct()
def members(self):
return self.members_at(datetime.date.today())

def active_members_at(self, dt):
return self.members_at(dt).filter(
Expand All @@ -35,6 +25,9 @@ def active_members_at(self, dt):
Q(function__committee__abolished__isnull=True) | Q(function__committee__abolished__gt=dt)
).distinct()

def active_members(self):
return self.active_members_at(datetime.date.today())

def board(self):
# Import here because of circular imports
from amelie.members.models import Committee
Expand Down

0 comments on commit 8c106c9

Please sign in to comment.