diff --git a/apps/member/models.py b/apps/member/models.py
index be4fe7e9f164ef45f863f7af0b1ebca35dab38c0..c2f27473797e14e8e2e7f0a9a3eb38dd74be82cb 100644
--- a/apps/member/models.py
+++ b/apps/member/models.py
@@ -128,6 +128,9 @@ class Club(models.Model):
         This function is called each time the club detail view is displayed.
         Update the year of the membership dates.
         """
+        if not self.membership_start:
+            return
+
         today = datetime.date.today()
 
         if (today - self.membership_start).days >= 365:
@@ -237,7 +240,7 @@ class Membership(models.Model):
             if self.club.membership_duration is not None:
                 self.date_end = self.date_start + datetime.timedelta(days=self.club.membership_duration)
             else:
-                self.date_end = self.date_start + datetime.timedelta(days=0x7FFFFFFF)
+                self.date_end = self.date_start + datetime.timedelta(days=424242)
             if self.club.membership_end is not None and self.date_end > self.club.membership_end:
                 self.date_end = self.club.membership_end
 
diff --git a/apps/member/views.py b/apps/member/views.py
index 226cafab5d65a762c21567d684f9b86b4119bfdb..243ff265894d3b876d775ca75f5ccae6876146d5 100644
--- a/apps/member/views.py
+++ b/apps/member/views.py
@@ -374,12 +374,12 @@ class ClubAddMemberView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView):
             form.add_error('user', _('User is already a member of the club'))
             return super().form_invalid(form)
 
-        if form.instance.date_start < form.instance.club.membership_start:
+        if form.instance.club.membership_start and form.instance.date_start < form.instance.club.membership_start:
             form.add_error('user', _("The membership must start after {:%m-%d-%Y}.")
                            .format(form.instance.club.membership_start))
             return super().form_invalid(form)
 
-        if form.instance.date_start > form.instance.club.membership_end:
+        if form.instance.club.membership_end and form.instance.date_start > form.instance.club.membership_end:
             form.add_error('user', _("The membership must begin before {:%m-%d-%Y}.")
                            .format(form.instance.club.membership_start))
             return super().form_invalid(form)
@@ -406,12 +406,12 @@ class ClubManageRolesView(ProtectQuerysetMixin, LoginRequiredMixin, UpdateView):
         return context
 
     def form_valid(self, form):
-        if form.instance.date_start < form.instance.club.membership_start:
+        if form.instance.club.membership_start and form.instance.date_start < form.instance.club.membership_start:
             form.add_error('user', _("The membership must start after {:%m-%d-%Y}.")
                            .format(form.instance.club.membership_start))
             return super().form_invalid(form)
 
-        if form.instance.date_start > form.instance.club.membership_end:
+        if form.instance.club.membership_end and form.instance.date_start > form.instance.club.membership_end:
             form.add_error('user', _("The membership must begin before {:%m-%d-%Y}.")
                            .format(form.instance.club.membership_start))
             return super().form_invalid(form)