X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/a98d18bc92d7d28d54c0cc1c1a636c9d79e6a648..f4e9d89859fd521ec9eeb1f94f9caa374ef86960:/src/club/models.py?ds=sidebyside diff --git a/src/club/models.py b/src/club/models.py index 8338b554b..8fe3e4798 100644 --- a/src/club/models.py +++ b/src/club/models.py @@ -44,25 +44,40 @@ class Club(models.Model): for tag, amounts in ('single', single), ('monthly', monthly): wide_spot = narrow_spot = 0 for i, p in enumerate(amounts): - if p.description or p.wide: - if not p.description: - p.narrow_wide = True - if narrow_spot == 1: - amounts[i-1].narrow_wide = True - narrow_spot = 0 if p.wide: - if wide_spot == 2: - p.wide_not_wide = True - wide_spot += 1 - else: + # Do we have space for xl? + if wide_spot < 2: + p.box_variant = 'xl' wide_spot += 2 + else: + p.box_variant = 'card' + wide_spot += 1 + narrow_spot = 0 + elif p.description: + p.box_variant = 'card' + if narrow_spot: + amounts[i-1].box_variant = 'bar' + wide_spot += 1 + narrow_spot = 0 else: + p.box_variant = 'half' wide_spot += 1 + narrow_spot += 1 wide_spot %= 3 + narrow_spot %= 2 c[tag] = amounts c[f'{tag}_wide_spot'] = wide_spot return c + def get_description_for_amount(self, amount, monthly): + amounts = self.monthlyamount_set if monthly else self.singleamount_set + amount = amounts.all().filter(amount__lte=amount).last() + return amount.description if amount is not None else '' + + @property + def paypal_enabled(self): + print("ENABLED?", settings.PAYPAL_ENABLED) + return settings.PAYPAL_ENABLED class SingleAmount(models.Model): @@ -140,6 +155,10 @@ class Schedule(models.Model): super(Schedule, self).save(*args, **kwargs) self.update_contact() + def get_description(self): + club = Club.objects.first() + return club.get_description_for_amount(self.amount, self.monthly) + def initiate_payment(self, request): return self.get_payment_method().initiate(request, self)