Advertisement
Guest User

Untitled

a guest
Jun 28th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. """Define admin model to manage User cass in django admin app"""
  2.  
  3. # pylint: disable=invalid-name
  4. from django import forms
  5. from django.contrib import admin
  6. from django.contrib.auth.admin import UserAdmin as BaseUserAdmin, GroupAdmin
  7. from django.contrib.auth.models import Group
  8.  
  9. from .models import User, Service
  10.  
  11.  
  12. class AuthenticationServerAdminSite(admin.sites.AdminSite):
  13. """Authentication Server admin site with customized site info"""
  14.  
  15. site_header = 'Authentication Server administration'
  16. site_title = 'Authentication Server'
  17. index_title = 'Administration'
  18.  
  19.  
  20. class ServiceInline(admin.TabularInline): model = Service
  21.  
  22.  
  23. class UserAdmin(BaseUserAdmin):
  24. """User admin model for handling extended User fields in admin"""
  25.  
  26. add_fieldsets = (
  27. ('Personal', {'fields': ('username', 'first_name', 'last_name', 'email',
  28. 'password1', 'password2')}),
  29. ('Billing', {'fields': ('role', 'agent', 'groups', 'status', 'balance',
  30. 'is_active')})
  31. )
  32. fieldsets = (
  33. ('Personal', {'fields': ('username', 'first_name', 'last_name', 'email',
  34. 'password')}),
  35. ('Billing', {'fields': ('role', 'agent', 'groups', 'status',
  36. 'is_active')}),
  37. ('Permissions', {'fields': ('is_superuser', 'is_staff')})
  38. )
  39. filter_horizontal = ()
  40. inlines = [ServiceInline, ]
  41. list_display = ('username', 'email', 'role', 'first_name', 'last_name',
  42. 'status')
  43. list_filter = ('is_active', 'is_staff', 'role')
  44. ordering = ('email',)
  45. readonly_fields = ('is_staff', )
  46. search_fields = ('username', 'first_name', 'last_name', 'email', 'balance')
  47.  
  48.  
  49. server_admin_site = AuthenticationServerAdminSite(name='admin')
  50. server_admin_site.register(User, UserAdmin)
  51. server_admin_site.register(Service)
  52. server_admin_site.register(Group, GroupAdmin)
  53.  
  54. # Register a vanilla admin site in case the customization is broken
  55. django_admin_site = admin.sites.AdminSite(name='django-admin')
  56. django_admin_site.register(User, BaseUserAdmin)
  57. django_admin_site.register(Service)
  58. django_admin_site.register(Group, GroupAdmin)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement