mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-15 18:53:25 +00:00
Create the customer when subscribing if it does not exists yet
This commit is contained in:
parent
97ff4341a7
commit
7a267dbc3f
@ -5,6 +5,7 @@ from django.conf import settings
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from datetime import timedelta
|
||||
from random import randrange
|
||||
|
||||
from club.models import Club
|
||||
from accounting.models import CurrencyField
|
||||
@ -27,6 +28,9 @@ class Customer(models.Model):
|
||||
def __str__(self):
|
||||
return self.user.username
|
||||
|
||||
def generate_account_id():
|
||||
return randrange(0, 4000) # TODO: improve me!
|
||||
|
||||
class ProductType(models.Model):
|
||||
"""
|
||||
This describes a product type
|
||||
|
@ -35,10 +35,7 @@ class Subscription(models.Model):
|
||||
# TODO add location!
|
||||
|
||||
class Meta:
|
||||
permissions = (
|
||||
('change_subscription', 'Can make someone become a subscriber'),
|
||||
('view_subscription', 'Can view who is a subscriber'),
|
||||
)
|
||||
ordering = ['subscription_start',]
|
||||
|
||||
def clean(self):
|
||||
try:
|
||||
@ -50,8 +47,11 @@ class Subscription(models.Model):
|
||||
# TODO see SubscriptionForm's clean method
|
||||
raise ValidationError(_("You are trying to create a subscription without member"))
|
||||
|
||||
class Meta:
|
||||
ordering = ['subscription_start',]
|
||||
def save(self):
|
||||
super(Subscription, self).save()
|
||||
from counter.models import Customer
|
||||
if not Customer.objects.filter(user=self.member).exists():
|
||||
Customer(user=self.member, account_id=Customer.generate_account_id(), amount=0).save()
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('core:user_profile', kwargs={'user_id': self.member.pk})
|
||||
|
Loading…
Reference in New Issue
Block a user