diff --git a/apps/member/models.py b/apps/member/models.py index e0f4f659..78d59667 100644 --- a/apps/member/models.py +++ b/apps/member/models.py @@ -295,7 +295,14 @@ class Club(models.Model): today = datetime.date.today() - while (today - self.membership_start).days >= 365: + # Avoid any problems on February 29 + if self.membership_start.month == 2 and self.membership_start.day == 29: + self.membership_start -= datetime.timedelta(days=1) + if self.membership_end.month == 2 and self.membership_end.day == 29: + self.membership_end += datetime.timedelta(days=1) + + while today >= datetime.date(self.membership_start.year + 1, + self.membership_start.month, self.membership_start.day): if self.membership_start: self.membership_start = datetime.date(self.membership_start.year + 1, self.membership_start.month, self.membership_start.day)