2 A management command which deletes expired service tickets (e.g.,
5 Calls ``ServiceTickets.objects.delete_expired_users()``, which
6 contains the actual logic for determining which accounts are deleted.
9 from __future__ import print_function
11 from django.core.management.base import NoArgsCommand
12 from django.conf import settings
16 from cas_provider.models import ServiceTicket, LoginTicket
18 class Command(NoArgsCommand):
19 help = "Delete expired service tickets from the database"
21 def handle_noargs(self, **options):
22 print("Service tickets:")
23 tickets = ServiceTicket.objects.all()
24 for ticket in tickets:
25 expiration = datetime.timedelta(minutes=settings.CAS_TICKET_EXPIRATION)
26 if datetime.datetime.now() > ticket.created + expiration:
27 print("Deleting %s..." % ticket.ticket)
30 print("%s not expired..." % ticket.ticket)
31 tickets = LoginTicket.objects.all()
32 print("Login tickets:")
33 for ticket in tickets:
34 expiration = datetime.timedelta(minutes=settings.CAS_TICKET_EXPIRATION)
35 if datetime.datetime.now() > ticket.created + expiration:
36 print("Deleting %s..." % ticket.ticket)
39 print("%s not expired..." % ticket.ticket)