Ejemplo n.º 1
0
 def pre_save(cls, sender, instance, **kwds):
     if instance.old_active != instance.active and instance.old_active is False and instance.deactivation_date is None:
         instance.activation_date = timezone.now().date()
         if Config.billing():
             bill_subscription(instance)
     elif instance.old_active != instance.active and instance.old_active is True and instance.deactivation_date is None:
         instance.deactivation_date = timezone.now().date()
Ejemplo n.º 2
0
 def pre_save(cls, sender, instance, **kwds):
     if instance.old_active != instance.active and instance.old_active is False and instance.deactivation_date is None:
         instance.activation_date = instance.activation_date if instance.activation_date is not None else timezone.now(
         ).date()
         for member in instance.recipients_all_for_state('waiting'):
             if member.subscription is not None:
                 raise ValidationError(_(
                     'Ein Bezüger hat noch ein/e/n aktive/n/s {0}').format(
                         Config.vocabulary('subscription_')),
                                       code='invalid')
         for member in instance.recipients_all_for_state('waiting'):
             member.subscription = instance
             member.future_subscription = None
             member.save()
         if Config.billing():
             bill_subscription(instance)
     elif instance.old_active != instance.active and instance.old_active is True and instance.deactivation_date is None:
         instance.deactivation_date = instance.deactivation_date if instance.deactivation_date is not None else timezone.now(
         ).date()
         for member in instance.recipients_all_for_state('active'):
             member.old_subscriptions.add(instance)
             member.subscription = None
             member.save()
     if instance.old_canceled != instance.canceled:
         instance.cancelation_date = timezone.now().date()
Ejemplo n.º 3
0
def handle_sub_activated(sender, instance, **kwargs):
    instance.activation_date = instance.activation_date if instance.activation_date is not None else timezone.now(
    ).date()
    for member in instance.recipients_all_for_state('waiting'):
        if member.subscription is not None:
            raise ValidationError(
                _('Ein Bezüger hat noch ein/e/n aktive/n/s {0}').format(
                    Config.vocabulary('subscription')),
                code='invalid')
    for member in instance.recipients_all_for_state('waiting'):
        member.subscription = instance
        member.future_subscription = None
        member.save()
    if Config.billing():
        bill_subscription(instance)
Ejemplo n.º 4
0
                              " auswählen!",
                              level=messages.ERROR)
            return HttpResponseRedirect("")
        inst, = queryset.all()
        return HttpResponseRedirect("/impersonate/%s/" % inst.user.id)

    impersonate_job.short_description = Config.member_string(
    ) + " imitieren (impersonate)..."


admin.site.register(Depot, DepotAdmin)
admin.site.register(ExtraSubscription, ExtraSubscriptionAdmin)
admin.site.register(ExtraSubscriptionType)
admin.site.register(ExtraSubscriptionCategory)
admin.site.register(SubscriptionSize)
admin.site.register(Assignment, AssignmentAdmin)
admin.site.register(Subscription, SubscriptionAdmin)
admin.site.register(Member, MemberAdmin)
admin.site.register(ActivityArea, AreaAdmin)
admin.site.register(Share, ShareAdmin)
admin.site.register(MailTemplate)
admin.site.register(JobExtra)
admin.site.register(JobExtraType)
admin.site.register(JobType, JobTypeAdmin)
admin.site.register(RecuringJob, JobAdmin)
admin.site.register(OneTimeJob, OneTimeJobAdmin)
if Config.billing():
    admin.site.register(Bill)
    admin.site.register(Payment)
    admin.site.register(ExtraSubBillingPeriod)
Ejemplo n.º 5
0
def handle_share_created(sender, instance, created, **kwargs):
    if created and Config.billing():
        bill_share(instance)
Ejemplo n.º 6
0
 def create(cls, sender, instance, created, **kwds):
     if created and Config.billing():
         bill_share(instance)
Ejemplo n.º 7
0
def handle_extra_sub_activated(sender, instance, **kwargs):
    instance.activation_date = instance.activation_date if instance.activation_date is not None else timezone.now(
    ).date()
    if Config.billing():
        bill_extra_subscription(instance)