web/ldt/management/__init__.py
author ymh <ymh.work@gmail.com>
Tue, 15 Jun 2010 01:33:03 +0200
changeset 48 44d58d2e90b5
parent 5 ae8593287883
permissions -rw-r--r--
Added tag V00.08 for changeset 8dbd741e3da6

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