diff --git a/.gitignore b/.gitignore index f3d74a9..151a6d0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.pyc *~ +*.db diff --git a/sso/admin.py b/sso/admin.py index aef1733..706189d 100644 --- a/sso/admin.py +++ b/sso/admin.py @@ -1,13 +1,20 @@ -""" -Admin interface models. Automatically detected by admin.autodiscover(). -""" from django.contrib import admin from django.contrib.auth.models import User from django.contrib.auth.admin import UserAdmin from sso.models import Service, ServiceAccount, SSOUser -admin.site.register(Service) -admin.site.register(ServiceAccount) +class ServiceAdmin(admin.ModelAdmin): + list_display = ('name', 'url', 'api', 'active') + search_fields = ['name', 'active'] + +admin.site.register(Service, ServiceAdmin) + +class ServiceAccountAdmin(admin.ModelAdmin): + list_display = ('service', 'username', 'user', 'active') + search_fields = ['service', 'username', 'user', 'active'] + +admin.site.register(ServiceAccount, ServiceAccountAdmin) + class SSOUserProfileInline(admin.StackedInline): model = SSOUser diff --git a/sso/models.py b/sso/models.py index 72c5ecf..b54c941 100644 --- a/sso/models.py +++ b/sso/models.py @@ -25,6 +25,8 @@ class SSOUser(models.Model): icq = models.CharField(max_length=15, blank=True) xmpp = models.CharField(max_length=200, blank=True) + corp_user = models.BooleanField() + def __str__(self): return self.user.__str__() @@ -38,8 +40,8 @@ signals.post_save.connect(SSOUser.create_user_profile, sender=User) class Service(models.Model): name = models.CharField(max_length=200) - url = models.CharField(max_length=200) - active = models.BooleanField() + url = models.CharField(max_length=200, blank=True) + active = models.BooleanField(default=True) api = models.CharField(max_length=200) def __str__(self): @@ -48,9 +50,9 @@ class Service(models.Model): class ServiceAccount(models.Model): user = models.ForeignKey(User, blank=False) service = models.ForeignKey(Service, blank=False) - username = models.CharField(max_length=200, blank=False) + username = models.CharField(max_length=200, blank=True) password = models.CharField(max_length=200, blank=False) - active = models.BooleanField() + active = models.BooleanField(default=True) def __str__(self): return "%s: %s (%s)" % (self.service.name, self.user.username, self.username) diff --git a/templates/profile.html b/templates/profile.html new file mode 100644 index 0000000..e69de29