From 7f8ac8b46753a1132182e1ef909de80f1ab74e74 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Tue, 18 Apr 2017 16:32:55 +0200 Subject: [PATCH] add basic command to auto close chats --- .../management/commands/autoclose_chats.py | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 emissions/management/commands/autoclose_chats.py diff --git a/emissions/management/commands/autoclose_chats.py b/emissions/management/commands/autoclose_chats.py new file mode 100644 index 0000000..8883a4f --- /dev/null +++ b/emissions/management/commands/autoclose_chats.py @@ -0,0 +1,28 @@ +import datetime +from optparse import make_option + +from django.core.management.base import BaseCommand, CommandError +from django.utils import timezone + +from ...models import Emission + + +class Command(BaseCommand): + args = '' + + option_list = BaseCommand.option_list + ( + make_option('--emission', + dest='emission_slug', + metavar='SLUG', + default=None), + ) + + def handle(self, emission_slug, verbosity, **options): + self.verbose = (verbosity > 1) + emissions = Emission.objects.all() + if emission_slug: + emissions = emissions.filter(slug=emission_slug) + emissions = emissions.filter(chat_open__lt=timezone.now() - datetime.timedelta(hours=24)) + for emission in emissions: + emission.chat_open = None + emission.save() -- 2.39.2