diff --git a/src/memberdb/approve.py b/src/memberdb/approve.py index 8a4e3271a5fe05bc5b4586a7bdf4b8a0bea52eac..55c232642498b01c9dca5bc1ee5b7637fa41c621 100644 --- a/src/memberdb/approve.py +++ b/src/memberdb/approve.py @@ -12,15 +12,6 @@ from memberdb.models import Member, Membership, get_membership_type from memberdb.forms import MyModelForm from memberdb.views import MyUpdateView -def make_pending_membership(member): - # check if this member already has a pending membership - ms = Membership.objects.filter(member=member, approved__exact=False).first() - if (ms is None): - ms = Membership(member=member, approved=False) - ms.date_submitted = timezone.now() - ms.membership_type = get_membership_type(member) - return ms - """ inline admin change list action buttons see https://medium.com/@hakibenita/how-to-add-custom-action-buttons-to-django-admin-8d266f5b0d41 diff --git a/src/memberdb/models.py b/src/memberdb/models.py index d200ad930a9b0174c3a911e06a79e61033978eaa..622049c3cad0e02566b7bc1f2239b68b681805e5 100644 --- a/src/memberdb/models.py +++ b/src/memberdb/models.py @@ -3,6 +3,7 @@ from django.db.models import F from django.core.validators import RegexValidator from django.core.management.utils import get_random_string from django.urls import reverse +from django.utils import timezone from squarepay.dispense import get_item_price import subprocess @@ -98,6 +99,14 @@ def get_membership_type(member): break return best +def make_pending_membership(member): + # check if this member already has a pending membership + ms = Membership.objects.filter(member=member, approved__exact=False).first() + if (ms is None): + ms = Membership(member=member, approved=False) + ms.date_submitted = timezone.now() + ms.membership_type = get_membership_type(member) + return ms def make_token(): return get_random_string(128) diff --git a/src/memberdb/register.py b/src/memberdb/register.py index dbaa8d6bf5e3ba1ee6168223d6df7e4be94ae748..18cac9beab5597c475ffb9b331767f70a2341eb9 100644 --- a/src/memberdb/register.py +++ b/src/memberdb/register.py @@ -13,10 +13,9 @@ from django import forms from squarepay.models import MembershipPayment from squarepay.dispense import get_item_price -from .models import Member, Membership, get_membership_choices, MEMBERSHIP_TYPES +from .models import Member, Membership, get_membership_choices, make_pending_membership, MEMBERSHIP_TYPES from .forms import MyModelForm from .views import MyUpdateView -from .approve import make_pending_membership """ First step: enter an email address and some details (to fill at least a Member model) to create a pending membership.