web/ldt/management/__init__.py
changeset 5 ae8593287883
equal deleted inserted replaced
4:7c994c98d1df 5:ae8593287883
       
     1 from django.db.models import signals
       
     2 from django.conf import settings
       
     3 from django.contrib.auth.models import User, Group 
       
     4 from ldt.core.models import Owner
       
     5 from ldt.user.models import ldt, IriGroup
       
     6 from django.contrib.contenttypes.models import ContentType
       
     7 # import logging
       
     8 from django.core.exceptions import ObjectDoesNotExist
       
     9 
       
    10     
       
    11 def post_save_ldt(instance, raw, created, **kwargs):
       
    12     signals.post_save.send(sender=User, instance=instance, raw=raw, created=created)     
       
    13     
       
    14 signals.post_save.connect(post_save_ldt, ldt) 
       
    15 
       
    16 def post_save_irigroup(instance, raw, created, **kwargs):
       
    17     signals.post_save.send(sender=Group, instance=instance, raw=raw, created=created)
       
    18     
       
    19 signals.post_save.connect(post_save_irigroup, IriGroup) 
       
    20 
       
    21 def post_save_user(instance, raw, created, **kwargs):
       
    22     if created:
       
    23         try:
       
    24             owner = Owner.objects.get(user=instance)
       
    25         except ObjectDoesNotExist:
       
    26             owner=Owner(user=instance)
       
    27             owner.save() 
       
    28     
       
    29 signals.post_save.connect(post_save_user, User) 
       
    30 
       
    31 def post_save_group(instance, raw, created, **kwargs):
       
    32     if created:
       
    33         try:
       
    34             owner = Owner.objects.get(group=instance)
       
    35         except ObjectDoesNotExist:
       
    36             owner=Owner(group=instance)
       
    37             owner.save()
       
    38     
       
    39 signals.post_save.connect(post_save_group, Group) 
       
    40 
       
    41     
       
    42 def test_cms():
       
    43     if 'cms' in settings.INSTALLED_APPS:
       
    44         return True
       
    45     else:
       
    46         return False
       
    47         
       
    48 def test_ldt():
       
    49     if 'ldt.ldt_utils' in settings.INSTALLED_APPS:
       
    50         return True
       
    51     else:
       
    52         return False
       
    53 
       
    54 def get_content_type_list() :
       
    55     content_type_list = []
       
    56     if test_cms():
       
    57         content_type = ContentType.objects.get(app_label='cms', model='page')
       
    58         content_type_list.append(content_type)
       
    59         content_type = ContentType.objects.get(app_label='snippet', model='snippet')
       
    60         content_type_list.append(content_type)
       
    61     # if test_ldt():
       
    62         # content_type = ContentType.objects.get(app_label='ldt', model='content')
       
    63         # content_type_list.append(content_type)
       
    64     return content_type_list
       
    65 
       
    66