summaryrefslogtreecommitdiff
path: root/program/management/commands
diff options
context:
space:
mode:
Diffstat (limited to 'program/management/commands')
-rw-r--r--program/management/commands/update_hosts.py20
-rw-r--r--program/management/commands/update_programslots.py10
-rw-r--r--program/management/commands/update_shows.py25
3 files changed, 40 insertions, 15 deletions
diff --git a/program/management/commands/update_hosts.py b/program/management/commands/update_hosts.py
index 64619cd..3cb143b 100644
--- a/program/management/commands/update_hosts.py
+++ b/program/management/commands/update_hosts.py
@@ -7,15 +7,23 @@ class Command(NoArgsCommand):
help = 'update host by setting is_active'
def handle_noargs(self, **options):
+ activated = 0
+ deactivated = 0
+
for host in Host.objects.all():
- is_active = None
+ active_shows = 0
for show in host.shows.all():
if show.is_active:
- is_active = True
+ active_shows += 1
else:
- is_active = False
+ active_shows -= 1
+
+ host.is_active = active_shows > 0
+ host.save()
- host.is_active = is_active
+ if host.is_active:
+ activated += 1
+ else:
+ deactivated += 1
- if not is_active:
- host.save()
+ print "%s hosts activated, %s hosts de-activated " % (activated, deactivated)
diff --git a/program/management/commands/update_programslots.py b/program/management/commands/update_programslots.py
index 62de064..f0cc59d 100644
--- a/program/management/commands/update_programslots.py
+++ b/program/management/commands/update_programslots.py
@@ -9,6 +9,16 @@ class Command(NoArgsCommand):
help = 'update programslots by setting is_active'
def handle_noargs(self, **options):
+ activated = 0
+ deactivated = 0
+
for programslot in ProgramSlot.objects.all():
programslot.is_active = programslot.until > date.today()
programslot.save()
+
+ if programslot.is_active:
+ activated += 1
+ else:
+ deactivated += 1
+
+ print "%s program slots activated, %s program slots de-activated" % (activated, deactivated)
diff --git a/program/management/commands/update_shows.py b/program/management/commands/update_shows.py
index 805c51e..a337f21 100644
--- a/program/management/commands/update_shows.py
+++ b/program/management/commands/update_shows.py
@@ -2,21 +2,28 @@ from django.core.management.base import NoArgsCommand
from program.models import Show
-from datetime import date
-
class Command(NoArgsCommand):
help = 'update shows by setting is_active'
def handle_noargs(self, **options):
+ activated = 0
+ deactivated = 0
+
for show in Show.objects.exclude(pk=1):
- is_active = None
for programslot in show.programslots.all():
- if programslot.until > date.today():
- is_active = True
+ active_programslots = 0
+ if programslot.is_active:
+ active_programslots += 1
else:
- is_active = False
- show.is_active = is_active
+ active_programslots -= 1
+
+ show.is_active = active_programslots > 0
+ show.save()
+
+ if show.is_active:
+ activated += 1
+ else:
+ deactivated += 1
- if not is_active:
- show.save()
+ print "%s shows activated, %s shows de-activated" % (activated, deactivated)