3 from django.contrib.auth.admin import UserAdmin |
3 from django.contrib.auth.admin import UserAdmin |
4 from django.contrib.auth.models import Group |
4 from django.contrib.auth.models import Group |
5 from django.utils.translation import ugettext as _ |
5 from django.utils.translation import ugettext as _ |
6 from forms import LdtForm |
6 from forms import LdtForm |
7 from guardian.admin import GuardedModelAdmin |
7 from guardian.admin import GuardedModelAdmin |
8 from models import Ldt |
8 from models import Ldt, UserProfile |
9 |
|
10 |
9 |
11 class GroupAdmin(GuardedModelAdmin): |
10 class GroupAdmin(GuardedModelAdmin): |
12 pass |
11 pass |
13 |
12 |
|
13 class UserProfileInline(admin.StackedInline): |
|
14 model = UserProfile |
14 |
15 |
15 class LdtAdmin(UserAdmin): |
16 class LdtAdmin(UserAdmin): |
16 list_display = ('username', 'email', 'first_name', 'last_name') |
17 list_display = ('username', 'email', 'first_name', 'last_name') |
17 |
18 |
18 fieldsets = [ |
19 fieldsets = [ |
22 (_('Permissions'), {'fields': ('is_staff', 'user_permissions')}), |
23 (_('Permissions'), {'fields': ('is_staff', 'user_permissions')}), |
23 ] |
24 ] |
24 form = LdtForm |
25 form = LdtForm |
25 model = Ldt |
26 model = Ldt |
26 filter_horizontal = ('user_permissions',) |
27 filter_horizontal = ('user_permissions',) |
|
28 inlines = [UserProfileInline, ] |
27 |
29 |
28 def get_fieldsets(self, request, obj=None): |
30 def get_fieldsets(self, request, obj=None): |
29 fieldsets = deepcopy(self.fieldsets) |
31 fieldsets = deepcopy(self.fieldsets) |
30 if not '/add' in request.path: |
32 if not '/add' in request.path: |
31 fieldsets[0] = (None, {'fields': ('username',)}) |
33 fieldsets[0] = (None, {'fields': ('username',)}) |
32 fieldsets.append((_('Password'), {'fields': ('password1', 'password2'), 'classes': ('collapse',)})) |
34 fieldsets.append((_('Password'), {'fields': ('password1', 'password2'), 'classes': ('collapse',)})) |
33 return fieldsets |
35 return fieldsets |
34 |
36 |
35 def add_view(self, request): |
37 def add_view(self, request): |
36 return super(UserAdmin, self).add_view(request) |
38 return super(UserAdmin, self).add_view(request) |
37 |
39 |
38 admin.site.unregister(Ldt) |
|
39 admin.site.register(Ldt, LdtAdmin) |
|
40 |
40 |
41 admin.site.unregister(Group) |
41 admin.site.unregister(Group) |
42 admin.site.register(Group, GroupAdmin) |
42 admin.site.register(Group, GroupAdmin) |
|
43 |
|
44 admin.site.unregister(Ldt) |
|
45 admin.site.register(Ldt, LdtAdmin) |