web/ldt_utils/user/admin.py
changeset 4 7c994c98d1df
parent 0 ecdfc63274bf
equal deleted inserted replaced
3:651f67b66c51 4:7c994c98d1df
       
     1 from django.contrib import admin
       
     2 from django.contrib.auth.admin import UserAdmin, GroupAdmin
       
     3 from django.utils.translation import ugettext as _
       
     4 from ldt import settings
       
     5 from copy import deepcopy
       
     6 from forms import ldtForm, IriGroupForm
       
     7 from models import ldt, IriGroup
       
     8 
       
     9 
       
    10 class ldtAdmin(UserAdmin):    
       
    11     list_display = ('username', 'email', 'first_name', 'last_name')
       
    12     
       
    13     fieldsets = [
       
    14         (None, {'fields': ('username', ('password1', 'password2'))}),
       
    15         (_('User details'), {'fields': (('first_name', 'last_name'), 'email')}),
       
    16         (_('Groups'), {'fields': ('groups',)}),
       
    17         (_('Permissions'), {'fields': ('is_staff', 'user_permissions')}),        
       
    18     ]    
       
    19     form = ldtForm
       
    20     model = ldt
       
    21     filter_horizontal = ('user_permissions',)
       
    22     
       
    23     def get_fieldsets(self, request, obj=None): 
       
    24         fieldsets = deepcopy(self.fieldsets)
       
    25         if not '/add' in request.path:
       
    26             fieldsets[0] = (None, {'fields': ('username',)})
       
    27             fieldsets.append((_('Password'), {'fields': ('password1', 'password2'), 'classes': ('collapse',)}))
       
    28         return fieldsets
       
    29         
       
    30     def add_view(self, request):
       
    31         return super(UserAdmin, self).add_view(request)               
       
    32         
       
    33 admin.site.unregister(ldt)
       
    34 admin.site.register(ldt, ldtAdmin)
       
    35 
       
    36 class IriGroupAdmin(admin.ModelAdmin):
       
    37     form = IriGroupForm
       
    38     model = IriGroup
       
    39     filter_horizontal = ('permissions',)
       
    40     
       
    41 admin.site.unregister(IriGroup)
       
    42 admin.site.register(IriGroup, IriGroupAdmin)