diff -r 7c994c98d1df -r ae8593287883 web/ldt/user/models.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/ldt/user/models.py Tue Jun 08 15:44:35 2010 +0200 @@ -0,0 +1,42 @@ +from django.db import models +from django.contrib.auth.models import User, Group, UserManager +from django.utils.translation import gettext as _ +from django.contrib import admin +import datetime + + +class IriGroup(Group): + description = models.TextField(null=True, blank=True) + + def __unicode__(self): + return self.name + + +class ldt(User): + irigroups = models.ManyToManyField(IriGroup, blank=True) + + class Meta: + verbose_name = 'iri user' + verbose_name_plural = 'iri users' + + def __unicode__(self): + return self.username + + +class ldtManager(UserManager): + def create_user(self, username, email, password=None): + "Creates and saves a User with the given username, e-mail and password." + now = datetime.datetime.now() + user = ldt(None, username, '', '', email.strip().lower(), 'placeholder', False, True, False, now, now) + if password: + user.set_password(password) + else: + user.set_unusable_password() + user.save() + return user + +User.objects = ldtManager() +User.objects.contribute_to_class(User, "objects") + +admin.site.register(ldt) +admin.site.register(IriGroup)