Example #1
0
def remove_reservations(sender, instance, **kwargs):
    limit = instance.available_to + timedelta(1, 0)  # The final day is allowed
    assetIds = instance.assets.values_list('id', flat=True)
    affected_reservations = Reservation.objects.filter(reserved_from__id=instance.id)
    affected_reservations = affected_reservations.filter(~Q(asset__id__in=assetIds)
                                                         | Q(reservation_begins__lt=instance.available_from)
                                                         | Q(reservation_ends__gt=limit))
    affected_reservations = affected_reservations.distinct()
    for i in affected_reservations:
        send_cancellation_email(i)
        i.delete()
Example #2
0
def remove_reservations(sender, instance, **kwargs):
    limit = instance.available_to + timedelta(1, 0)  # The final day is allowed
    assetIds = instance.assets.values_list('id', flat=True)
    affected_reservations = Reservation.objects.filter(
        reserved_from__id=instance.id)
    affected_reservations = affected_reservations.filter(
        ~Q(asset__id__in=assetIds)
        | Q(reservation_begins__lt=instance.available_from)
        | Q(reservation_ends__gt=limit))
    affected_reservations = affected_reservations.distinct()
    for i in affected_reservations:
        send_cancellation_email(i)
        i.delete()
Example #3
0
def remove_reservations_delete(sender, instance, **kwargs):
    affected_reservations = Reservation.objects.filter(
        reserved_from__id=instance.id)
    for i in affected_reservations:
        send_cancellation_email(i)
        i.delete()
Example #4
0
def remove_reservations_delete(sender, instance, **kwargs):
    affected_reservations = Reservation.objects.filter(reserved_from__id=instance.id)
    for i in affected_reservations:
        send_cancellation_email(i)
        i.delete()