web/ldt/management/__init__.py
author ymh <ymh.work@gmail.com>
Thu, 28 Oct 2010 00:37:07 +0200
changeset 19 cbc514bab5bf
parent 1 eb9188f2ee4f
permissions -rw-r--r--
Added tag V00.06 for changeset b9c2a90029e7

from django.db.models import signals
from django.conf import settings
from django.contrib.auth.models import User, Group 
from ldt.core.models import Owner
from ldt.user.models import ldt, IriGroup
from django.contrib.contenttypes.models import ContentType
# import logging
from django.core.exceptions import ObjectDoesNotExist

    
def post_save_ldt(instance, raw, created, **kwargs):
    signals.post_save.send(sender=User, instance=instance, raw=raw, created=created)     
    
signals.post_save.connect(post_save_ldt, ldt) 

def post_save_irigroup(instance, raw, created, **kwargs):
    signals.post_save.send(sender=Group, instance=instance, raw=raw, created=created)
    
signals.post_save.connect(post_save_irigroup, IriGroup) 

def post_save_user(instance, raw, created, **kwargs):
    if created:
        try:
            owner = Owner.objects.get(user=instance)
        except ObjectDoesNotExist:
            owner=Owner(user=instance)
            owner.save() 
    
signals.post_save.connect(post_save_user, User) 

def post_save_group(instance, raw, created, **kwargs):
    if created:
        try:
            owner = Owner.objects.get(group=instance)
        except ObjectDoesNotExist:
            owner=Owner(group=instance)
            owner.save()
    
signals.post_save.connect(post_save_group, Group) 

    
def test_cms():
    if 'cms' in settings.INSTALLED_APPS:
        return True
    else:
        return False
        
def test_ldt():
    if 'ldt.ldt_utils' in settings.INSTALLED_APPS:
        return True
    else:
        return False

def get_content_type_list() :
    content_type_list = []
    if test_cms():
        content_type = ContentType.objects.get(app_label='cms', model='page')
        content_type_list.append(content_type)
        content_type = ContentType.objects.get(app_label='snippet', model='snippet')
        content_type_list.append(content_type)
    # if test_ldt():
        # content_type = ContentType.objects.get(app_label='ldt', model='content')
        # content_type_list.append(content_type)
    return content_type_list