import django
from django.dispatch import dispatcher
from django.db.models import signals
from pycon.features import models as feature_models

features =[
    'EarlyBirdReg',
    'Register',
    'HandlePayPalAck',
    'FakePayPalAck',
    'ViewRegInvoice'
    'EditRegistration',
    'ChangeRegistrationRequest',
    'ConnectRegistration' ]


def create_features(app,created_models, verbosity, **kwdargs):
    for name in features:
        feat, isnew = feature_models.Feature.objects.get_or_create(name=name)
        if isnew:
            if name == 'FakePayPalAck':
                feat.status=feature_models.STATUS_CHOICES.index('Closed')
                feat.allow_staff=False
            feat.save()

dispatcher.connect(create_features,
                   sender=feature_models,
                   signal=signals.post_syncdb)
