def get_available_subscriptions(): goal = int(getattr(settings, "SUBSCRIPTION_PROGRESS_GOAL", "10") or "10") target = SubscriptionPart.objects.filter( ~q_cancelled() & ~q_deactivated(), type__size__product__is_extra=False, subscription__in=SubscriptionDao.future_subscriptions()).aggregate( total=Sum('type__size__units'))['total'] return goal - target
def typechangelist(request): render_dict = get_menu_dict(request) render_dict.update(get_changedate(request)) changedlist = [] subscriptions_list = SubscriptionDao.all_active_subscritions().filter(~q_cancelled()) for subscription in subscriptions_list: if subscription.types_changed > 0: changedlist.append(subscription) return subscription_management_list(changedlist, render_dict, 'management_lists/typechangelist.html', request)
def canceled_subscriptions(): return Subscription.objects.filter( q_cancelled() & ~q_deactivated()).order_by('end_date')
def future_subscriptions(): return Subscription.objects.filter(~q_cancelled() & ~q_deactivated()).filter( deactivation_date=None)
def canceled_extra_subs(): return ExtraSubscription.objects.filter(q_activated() & q_cancelled() & ~q_deactivated())
def future_extra_subscriptions(self): return self.extra_subscription_set.filter(~q_cancelled() & ~q_deactivated())
def types_changed(self): return self.parts.filter(~q_activated() | (q_cancelled() & ~q_deactivated())).count()
def future_parts(self): return self.parts.filter(~q_cancelled() & ~q_deactivated())
def get_canceled_for_subscription(subscription): return SubscriptionPart.objects.filter( subscription=subscription).filter(q_cancelled())
def canceled_members(): return Member.objects.filter(q_cancelled()).exclude(q_deactivated())