mirror of
https://github.com/ae-utbm/sith.git
synced 2025-09-08 09:05:42 +00:00
simplify Subscription.save()
This commit is contained in:
@@ -71,19 +71,21 @@ class Subscription(models.Model):
|
|||||||
else:
|
else:
|
||||||
return f"No user - {self.pk}"
|
return f"No user - {self.pk}"
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs) -> None:
|
||||||
|
if self.member.was_subscribed:
|
||||||
|
super().save()
|
||||||
|
return
|
||||||
|
|
||||||
from counter.models import Customer
|
from counter.models import Customer
|
||||||
|
|
||||||
if not self.member.was_subscribed:
|
customer, _ = Customer.get_or_create(self.member)
|
||||||
# This is the first ever subscription for this user
|
# Someone who subscribed once will be considered forever
|
||||||
customer, _ = Customer.get_or_create(self.member)
|
# as an old subscriber.
|
||||||
# Someone who subscribed once will be considered forever
|
self.member.groups.add(settings.SITH_GROUP_OLD_SUBSCRIBERS_ID)
|
||||||
# as an old subscriber.
|
self.member.make_home()
|
||||||
self.member.groups.add(settings.SITH_GROUP_OLD_SUBSCRIBERS_ID)
|
# now that the user is an old subscriber, change the cached
|
||||||
self.member.make_home()
|
# property accordingly
|
||||||
# now that the user is an old subscriber, change the cached
|
self.member.__dict__["was_subscribed"] = True
|
||||||
# property accordingly
|
|
||||||
self.member.__dict__["was_subscribed"] = True
|
|
||||||
super().save()
|
super().save()
|
||||||
|
|
||||||
def get_absolute_url(self):
|
def get_absolute_url(self):
|
||||||
|
Reference in New Issue
Block a user