summaryrefslogtreecommitdiff
path: root/program/management/commands/update_hosts.py
blob: 3cb143bd0290f14be209482d09d280ecd36487ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from django.core.management.base import NoArgsCommand

from program.models import Host


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():
            active_shows = 0
            for show in host.shows.all():
                if show.is_active:
                    active_shows += 1
                else:
                    active_shows -= 1

            host.is_active = active_shows > 0
            host.save()

            if host.is_active:
                activated += 1
            else:
                deactivated += 1

        print "%s hosts activated, %s hosts de-activated " % (activated, deactivated)